Lines Matching refs:tpr
6668 static int tg3_alloc_rx_data(struct tg3 *tp, struct tg3_rx_prodring_set *tpr, in tg3_alloc_rx_data() argument
6681 desc = &tpr->rx_std[dest_idx]; in tg3_alloc_rx_data()
6682 map = &tpr->rx_std_buffers[dest_idx]; in tg3_alloc_rx_data()
6688 desc = &tpr->rx_jmb[dest_idx].std; in tg3_alloc_rx_data()
6689 map = &tpr->rx_jmb_buffers[dest_idx]; in tg3_alloc_rx_data()
6815 struct tg3_rx_prodring_set *tpr = &tnapi->prodring; in tg3_rx() local
6825 std_prod_idx = tpr->rx_std_prod_idx; in tg3_rx()
6826 jmb_prod_idx = tpr->rx_jmb_prod_idx; in tg3_rx()
6857 tg3_recycle_rx(tnapi, tpr, opaque_key, in tg3_rx()
6881 skb_size = tg3_alloc_rx_data(tp, tpr, opaque_key, in tg3_rx()
6903 tg3_recycle_rx(tnapi, tpr, opaque_key, in tg3_rx()
6955 tpr->rx_std_prod_idx = std_prod_idx & in tg3_rx()
6958 tpr->rx_std_prod_idx); in tg3_rx()
6983 tpr->rx_std_prod_idx = std_prod_idx & in tg3_rx()
6986 tpr->rx_std_prod_idx); in tg3_rx()
6989 tpr->rx_jmb_prod_idx = jmb_prod_idx & in tg3_rx()
6992 tpr->rx_jmb_prod_idx); in tg3_rx()
7001 tpr->rx_std_prod_idx = std_prod_idx & tp->rx_std_ring_mask; in tg3_rx()
7002 tpr->rx_jmb_prod_idx = jmb_prod_idx & tp->rx_jmb_ring_mask; in tg3_rx()
8338 struct tg3_rx_prodring_set *tpr) in tg3_rx_prodring_free() argument
8342 if (tpr != &tp->napi[0].prodring) { in tg3_rx_prodring_free()
8343 for (i = tpr->rx_std_cons_idx; i != tpr->rx_std_prod_idx; in tg3_rx_prodring_free()
8345 tg3_rx_data_free(tp, &tpr->rx_std_buffers[i], in tg3_rx_prodring_free()
8349 for (i = tpr->rx_jmb_cons_idx; in tg3_rx_prodring_free()
8350 i != tpr->rx_jmb_prod_idx; in tg3_rx_prodring_free()
8352 tg3_rx_data_free(tp, &tpr->rx_jmb_buffers[i], in tg3_rx_prodring_free()
8361 tg3_rx_data_free(tp, &tpr->rx_std_buffers[i], in tg3_rx_prodring_free()
8366 tg3_rx_data_free(tp, &tpr->rx_jmb_buffers[i], in tg3_rx_prodring_free()
8379 struct tg3_rx_prodring_set *tpr) in tg3_rx_prodring_alloc() argument
8383 tpr->rx_std_cons_idx = 0; in tg3_rx_prodring_alloc()
8384 tpr->rx_std_prod_idx = 0; in tg3_rx_prodring_alloc()
8385 tpr->rx_jmb_cons_idx = 0; in tg3_rx_prodring_alloc()
8386 tpr->rx_jmb_prod_idx = 0; in tg3_rx_prodring_alloc()
8388 if (tpr != &tp->napi[0].prodring) { in tg3_rx_prodring_alloc()
8389 memset(&tpr->rx_std_buffers[0], 0, in tg3_rx_prodring_alloc()
8391 if (tpr->rx_jmb_buffers) in tg3_rx_prodring_alloc()
8392 memset(&tpr->rx_jmb_buffers[0], 0, in tg3_rx_prodring_alloc()
8398 memset(tpr->rx_std, 0, TG3_RX_STD_RING_BYTES(tp)); in tg3_rx_prodring_alloc()
8413 rxd = &tpr->rx_std[i]; in tg3_rx_prodring_alloc()
8424 if (tg3_alloc_rx_data(tp, tpr, RXD_OPAQUE_RING_STD, i, in tg3_rx_prodring_alloc()
8440 memset(tpr->rx_jmb, 0, TG3_RX_JMB_RING_BYTES(tp)); in tg3_rx_prodring_alloc()
8448 rxd = &tpr->rx_jmb[i].std; in tg3_rx_prodring_alloc()
8459 if (tg3_alloc_rx_data(tp, tpr, RXD_OPAQUE_RING_JUMBO, i, in tg3_rx_prodring_alloc()
8476 tg3_rx_prodring_free(tp, tpr); in tg3_rx_prodring_alloc()
8481 struct tg3_rx_prodring_set *tpr) in tg3_rx_prodring_fini() argument
8483 kfree(tpr->rx_std_buffers); in tg3_rx_prodring_fini()
8484 tpr->rx_std_buffers = NULL; in tg3_rx_prodring_fini()
8485 kfree(tpr->rx_jmb_buffers); in tg3_rx_prodring_fini()
8486 tpr->rx_jmb_buffers = NULL; in tg3_rx_prodring_fini()
8487 if (tpr->rx_std) { in tg3_rx_prodring_fini()
8489 tpr->rx_std, tpr->rx_std_mapping); in tg3_rx_prodring_fini()
8490 tpr->rx_std = NULL; in tg3_rx_prodring_fini()
8492 if (tpr->rx_jmb) { in tg3_rx_prodring_fini()
8494 tpr->rx_jmb, tpr->rx_jmb_mapping); in tg3_rx_prodring_fini()
8495 tpr->rx_jmb = NULL; in tg3_rx_prodring_fini()
8500 struct tg3_rx_prodring_set *tpr) in tg3_rx_prodring_init() argument
8502 tpr->rx_std_buffers = kzalloc(TG3_RX_STD_BUFF_RING_SIZE(tp), in tg3_rx_prodring_init()
8504 if (!tpr->rx_std_buffers) in tg3_rx_prodring_init()
8507 tpr->rx_std = dma_alloc_coherent(&tp->pdev->dev, in tg3_rx_prodring_init()
8509 &tpr->rx_std_mapping, in tg3_rx_prodring_init()
8511 if (!tpr->rx_std) in tg3_rx_prodring_init()
8515 tpr->rx_jmb_buffers = kzalloc(TG3_RX_JMB_BUFF_RING_SIZE(tp), in tg3_rx_prodring_init()
8517 if (!tpr->rx_jmb_buffers) in tg3_rx_prodring_init()
8520 tpr->rx_jmb = dma_alloc_coherent(&tp->pdev->dev, in tg3_rx_prodring_init()
8522 &tpr->rx_jmb_mapping, in tg3_rx_prodring_init()
8524 if (!tpr->rx_jmb) in tg3_rx_prodring_init()
8531 tg3_rx_prodring_fini(tp, tpr); in tg3_rx_prodring_init()
9870 struct tg3_rx_prodring_set *tpr = &tp->napi[0].prodring; in tg3_reset_hw() local
10183 ((u64) tpr->rx_std_mapping >> 32)); in tg3_reset_hw()
10185 ((u64) tpr->rx_std_mapping & 0xffffffff)); in tg3_reset_hw()
10203 ((u64) tpr->rx_jmb_mapping >> 32)); in tg3_reset_hw()
10205 ((u64) tpr->rx_jmb_mapping & 0xffffffff)); in tg3_reset_hw()
10231 tpr->rx_std_prod_idx = tp->rx_pending; in tg3_reset_hw()
10232 tw32_rx_mbox(TG3_RX_STD_PROD_IDX_REG, tpr->rx_std_prod_idx); in tg3_reset_hw()
10234 tpr->rx_jmb_prod_idx = in tg3_reset_hw()
10236 tw32_rx_mbox(TG3_RX_JMB_PROD_IDX_REG, tpr->rx_jmb_prod_idx); in tg3_reset_hw()
13441 struct tg3_rx_prodring_set *tpr = &tp->napi[0].prodring; in tg3_run_loopback() local
13611 rx_data = tpr->rx_std_buffers[desc_idx].data; in tg3_run_loopback()
13612 map = dma_unmap_addr(&tpr->rx_std_buffers[desc_idx], in tg3_run_loopback()
13615 rx_data = tpr->rx_jmb_buffers[desc_idx].data; in tg3_run_loopback()
13616 map = dma_unmap_addr(&tpr->rx_jmb_buffers[desc_idx], in tg3_run_loopback()