Lines Matching refs:tpr
6652 static int tg3_alloc_rx_data(struct tg3 *tp, struct tg3_rx_prodring_set *tpr, in tg3_alloc_rx_data() argument
6665 desc = &tpr->rx_std[dest_idx]; in tg3_alloc_rx_data()
6666 map = &tpr->rx_std_buffers[dest_idx]; in tg3_alloc_rx_data()
6672 desc = &tpr->rx_jmb[dest_idx].std; in tg3_alloc_rx_data()
6673 map = &tpr->rx_jmb_buffers[dest_idx]; in tg3_alloc_rx_data()
6799 struct tg3_rx_prodring_set *tpr = &tnapi->prodring; in tg3_rx() local
6809 std_prod_idx = tpr->rx_std_prod_idx; in tg3_rx()
6810 jmb_prod_idx = tpr->rx_jmb_prod_idx; in tg3_rx()
6841 tg3_recycle_rx(tnapi, tpr, opaque_key, in tg3_rx()
6865 skb_size = tg3_alloc_rx_data(tp, tpr, opaque_key, in tg3_rx()
6887 tg3_recycle_rx(tnapi, tpr, opaque_key, in tg3_rx()
6939 tpr->rx_std_prod_idx = std_prod_idx & in tg3_rx()
6942 tpr->rx_std_prod_idx); in tg3_rx()
6967 tpr->rx_std_prod_idx = std_prod_idx & in tg3_rx()
6970 tpr->rx_std_prod_idx); in tg3_rx()
6973 tpr->rx_jmb_prod_idx = jmb_prod_idx & in tg3_rx()
6976 tpr->rx_jmb_prod_idx); in tg3_rx()
6985 tpr->rx_std_prod_idx = std_prod_idx & tp->rx_std_ring_mask; in tg3_rx()
6986 tpr->rx_jmb_prod_idx = jmb_prod_idx & tp->rx_jmb_ring_mask; in tg3_rx()
8320 struct tg3_rx_prodring_set *tpr) in tg3_rx_prodring_free() argument
8324 if (tpr != &tp->napi[0].prodring) { in tg3_rx_prodring_free()
8325 for (i = tpr->rx_std_cons_idx; i != tpr->rx_std_prod_idx; in tg3_rx_prodring_free()
8327 tg3_rx_data_free(tp, &tpr->rx_std_buffers[i], in tg3_rx_prodring_free()
8331 for (i = tpr->rx_jmb_cons_idx; in tg3_rx_prodring_free()
8332 i != tpr->rx_jmb_prod_idx; in tg3_rx_prodring_free()
8334 tg3_rx_data_free(tp, &tpr->rx_jmb_buffers[i], in tg3_rx_prodring_free()
8343 tg3_rx_data_free(tp, &tpr->rx_std_buffers[i], in tg3_rx_prodring_free()
8348 tg3_rx_data_free(tp, &tpr->rx_jmb_buffers[i], in tg3_rx_prodring_free()
8361 struct tg3_rx_prodring_set *tpr) in tg3_rx_prodring_alloc() argument
8365 tpr->rx_std_cons_idx = 0; in tg3_rx_prodring_alloc()
8366 tpr->rx_std_prod_idx = 0; in tg3_rx_prodring_alloc()
8367 tpr->rx_jmb_cons_idx = 0; in tg3_rx_prodring_alloc()
8368 tpr->rx_jmb_prod_idx = 0; in tg3_rx_prodring_alloc()
8370 if (tpr != &tp->napi[0].prodring) { in tg3_rx_prodring_alloc()
8371 memset(&tpr->rx_std_buffers[0], 0, in tg3_rx_prodring_alloc()
8373 if (tpr->rx_jmb_buffers) in tg3_rx_prodring_alloc()
8374 memset(&tpr->rx_jmb_buffers[0], 0, in tg3_rx_prodring_alloc()
8380 memset(tpr->rx_std, 0, TG3_RX_STD_RING_BYTES(tp)); in tg3_rx_prodring_alloc()
8395 rxd = &tpr->rx_std[i]; in tg3_rx_prodring_alloc()
8406 if (tg3_alloc_rx_data(tp, tpr, RXD_OPAQUE_RING_STD, i, in tg3_rx_prodring_alloc()
8422 memset(tpr->rx_jmb, 0, TG3_RX_JMB_RING_BYTES(tp)); in tg3_rx_prodring_alloc()
8430 rxd = &tpr->rx_jmb[i].std; in tg3_rx_prodring_alloc()
8441 if (tg3_alloc_rx_data(tp, tpr, RXD_OPAQUE_RING_JUMBO, i, in tg3_rx_prodring_alloc()
8458 tg3_rx_prodring_free(tp, tpr); in tg3_rx_prodring_alloc()
8463 struct tg3_rx_prodring_set *tpr) in tg3_rx_prodring_fini() argument
8465 kfree(tpr->rx_std_buffers); in tg3_rx_prodring_fini()
8466 tpr->rx_std_buffers = NULL; in tg3_rx_prodring_fini()
8467 kfree(tpr->rx_jmb_buffers); in tg3_rx_prodring_fini()
8468 tpr->rx_jmb_buffers = NULL; in tg3_rx_prodring_fini()
8469 if (tpr->rx_std) { in tg3_rx_prodring_fini()
8471 tpr->rx_std, tpr->rx_std_mapping); in tg3_rx_prodring_fini()
8472 tpr->rx_std = NULL; in tg3_rx_prodring_fini()
8474 if (tpr->rx_jmb) { in tg3_rx_prodring_fini()
8476 tpr->rx_jmb, tpr->rx_jmb_mapping); in tg3_rx_prodring_fini()
8477 tpr->rx_jmb = NULL; in tg3_rx_prodring_fini()
8482 struct tg3_rx_prodring_set *tpr) in tg3_rx_prodring_init() argument
8484 tpr->rx_std_buffers = kzalloc(TG3_RX_STD_BUFF_RING_SIZE(tp), in tg3_rx_prodring_init()
8486 if (!tpr->rx_std_buffers) in tg3_rx_prodring_init()
8489 tpr->rx_std = dma_alloc_coherent(&tp->pdev->dev, in tg3_rx_prodring_init()
8491 &tpr->rx_std_mapping, in tg3_rx_prodring_init()
8493 if (!tpr->rx_std) in tg3_rx_prodring_init()
8497 tpr->rx_jmb_buffers = kzalloc(TG3_RX_JMB_BUFF_RING_SIZE(tp), in tg3_rx_prodring_init()
8499 if (!tpr->rx_jmb_buffers) in tg3_rx_prodring_init()
8502 tpr->rx_jmb = dma_alloc_coherent(&tp->pdev->dev, in tg3_rx_prodring_init()
8504 &tpr->rx_jmb_mapping, in tg3_rx_prodring_init()
8506 if (!tpr->rx_jmb) in tg3_rx_prodring_init()
8513 tg3_rx_prodring_fini(tp, tpr); in tg3_rx_prodring_init()
9838 struct tg3_rx_prodring_set *tpr = &tp->napi[0].prodring; in tg3_reset_hw() local
10141 ((u64) tpr->rx_std_mapping >> 32)); in tg3_reset_hw()
10143 ((u64) tpr->rx_std_mapping & 0xffffffff)); in tg3_reset_hw()
10161 ((u64) tpr->rx_jmb_mapping >> 32)); in tg3_reset_hw()
10163 ((u64) tpr->rx_jmb_mapping & 0xffffffff)); in tg3_reset_hw()
10189 tpr->rx_std_prod_idx = tp->rx_pending; in tg3_reset_hw()
10190 tw32_rx_mbox(TG3_RX_STD_PROD_IDX_REG, tpr->rx_std_prod_idx); in tg3_reset_hw()
10192 tpr->rx_jmb_prod_idx = in tg3_reset_hw()
10194 tw32_rx_mbox(TG3_RX_JMB_PROD_IDX_REG, tpr->rx_jmb_prod_idx); in tg3_reset_hw()
13375 struct tg3_rx_prodring_set *tpr = &tp->napi[0].prodring; in tg3_run_loopback() local
13545 rx_data = tpr->rx_std_buffers[desc_idx].data; in tg3_run_loopback()
13546 map = dma_unmap_addr(&tpr->rx_std_buffers[desc_idx], in tg3_run_loopback()
13549 rx_data = tpr->rx_jmb_buffers[desc_idx].data; in tg3_run_loopback()
13550 map = dma_unmap_addr(&tpr->rx_jmb_buffers[desc_idx], in tg3_run_loopback()