Lines Matching refs:bnapi

176 	struct bnxt_napi *bnapi;  in bnxt_start_xmit()  local
186 bnapi = bp->bnapi[i]; in bnxt_start_xmit()
187 txr = &bnapi->tx_ring; in bnxt_start_xmit()
418 static void bnxt_tx_int(struct bnxt *bp, struct bnxt_napi *bnapi, int nr_pkts) in bnxt_tx_int() argument
420 struct bnxt_tx_ring_info *txr = &bnapi->tx_ring; in bnxt_tx_int()
421 int index = bnapi->index; in bnxt_tx_int()
594 static void bnxt_reuse_rx_agg_bufs(struct bnxt_napi *bnapi, u16 cp_cons, in bnxt_reuse_rx_agg_bufs() argument
597 struct bnxt *bp = bnapi->bp; in bnxt_reuse_rx_agg_bufs()
598 struct bnxt_cp_ring_info *cpr = &bnapi->cp_ring; in bnxt_reuse_rx_agg_bufs()
599 struct bnxt_rx_ring_info *rxr = &bnapi->rx_ring; in bnxt_reuse_rx_agg_bufs()
672 static struct sk_buff *bnxt_rx_pages(struct bnxt *bp, struct bnxt_napi *bnapi, in bnxt_rx_pages() argument
677 struct bnxt_cp_ring_info *cpr = &bnapi->cp_ring; in bnxt_rx_pages()
678 struct bnxt_rx_ring_info *rxr = &bnapi->rx_ring; in bnxt_rx_pages()
723 bnxt_reuse_rx_agg_bufs(bnapi, cp_cons, agg_bufs - i); in bnxt_rx_pages()
754 static inline struct sk_buff *bnxt_copy_skb(struct bnxt_napi *bnapi, u8 *data, in bnxt_copy_skb() argument
758 struct bnxt *bp = bnapi->bp; in bnxt_copy_skb()
762 skb = napi_alloc_skb(&bnapi->napi, len); in bnxt_copy_skb()
840 static void bnxt_abort_tpa(struct bnxt *bp, struct bnxt_napi *bnapi, in bnxt_abort_tpa() argument
844 bnxt_reuse_rx_agg_bufs(bnapi, cp_cons, agg_bufs); in bnxt_abort_tpa()
925 struct bnxt_napi *bnapi, in bnxt_tpa_end() argument
931 struct bnxt_cp_ring_info *cpr = &bnapi->cp_ring; in bnxt_tpa_end()
932 struct bnxt_rx_ring_info *rxr = &bnapi->rx_ring; in bnxt_tpa_end()
959 bnxt_abort_tpa(bp, bnapi, cp_cons, agg_bufs); in bnxt_tpa_end()
966 skb = bnxt_copy_skb(bnapi, data, len, mapping); in bnxt_tpa_end()
968 bnxt_abort_tpa(bp, bnapi, cp_cons, agg_bufs); in bnxt_tpa_end()
977 bnxt_abort_tpa(bp, bnapi, cp_cons, agg_bufs); in bnxt_tpa_end()
990 bnxt_abort_tpa(bp, bnapi, cp_cons, agg_bufs); in bnxt_tpa_end()
998 skb = bnxt_rx_pages(bp, bnapi, skb, cp_cons, agg_bufs); in bnxt_tpa_end()
1044 static int bnxt_rx_pkt(struct bnxt *bp, struct bnxt_napi *bnapi, u32 *raw_cons, in bnxt_rx_pkt() argument
1047 struct bnxt_cp_ring_info *cpr = &bnapi->cp_ring; in bnxt_rx_pkt()
1048 struct bnxt_rx_ring_info *rxr = &bnapi->rx_ring; in bnxt_rx_pkt()
1083 skb = bnxt_tpa_end(bp, bnapi, &tmp_raw_cons, in bnxt_rx_pkt()
1093 skb_record_rx_queue(skb, bnapi->index); in bnxt_rx_pkt()
1094 skb_mark_napi_id(skb, &bnapi->napi); in bnxt_rx_pkt()
1095 if (bnxt_busy_polling(bnapi)) in bnxt_rx_pkt()
1098 napi_gro_receive(&bnapi->napi, skb); in bnxt_rx_pkt()
1124 bnxt_reuse_rx_agg_bufs(bnapi, cp_cons, agg_bufs); in bnxt_rx_pkt()
1134 skb = bnxt_copy_skb(bnapi, data, len, dma_addr); in bnxt_rx_pkt()
1149 skb = bnxt_rx_pages(bp, bnapi, skb, cp_cons, agg_bufs); in bnxt_rx_pkt()
1194 skb_record_rx_queue(skb, bnapi->index); in bnxt_rx_pkt()
1195 skb_mark_napi_id(skb, &bnapi->napi); in bnxt_rx_pkt()
1196 if (bnxt_busy_polling(bnapi)) in bnxt_rx_pkt()
1199 napi_gro_receive(&bnapi->napi, skb); in bnxt_rx_pkt()
1274 struct bnxt_napi *bnapi = dev_instance; in bnxt_msix() local
1275 struct bnxt *bp = bnapi->bp; in bnxt_msix()
1276 struct bnxt_cp_ring_info *cpr = &bnapi->cp_ring; in bnxt_msix()
1280 napi_schedule(&bnapi->napi); in bnxt_msix()
1297 struct bnxt_napi *bnapi = dev_instance; in bnxt_inta() local
1298 struct bnxt *bp = bnapi->bp; in bnxt_inta()
1299 struct bnxt_cp_ring_info *cpr = &bnapi->cp_ring; in bnxt_inta()
1319 napi_schedule(&bnapi->napi); in bnxt_inta()
1323 static int bnxt_poll_work(struct bnxt *bp, struct bnxt_napi *bnapi, int budget) in bnxt_poll_work() argument
1325 struct bnxt_cp_ring_info *cpr = &bnapi->cp_ring; in bnxt_poll_work()
1349 rc = bnxt_rx_pkt(bp, bnapi, &raw_cons, &agg_event); in bnxt_poll_work()
1377 bnxt_tx_int(bp, bnapi, tx_pkts); in bnxt_poll_work()
1380 struct bnxt_rx_ring_info *rxr = &bnapi->rx_ring; in bnxt_poll_work()
1396 struct bnxt_napi *bnapi = container_of(napi, struct bnxt_napi, napi); in bnxt_poll() local
1397 struct bnxt *bp = bnapi->bp; in bnxt_poll()
1398 struct bnxt_cp_ring_info *cpr = &bnapi->cp_ring; in bnxt_poll()
1401 if (!bnxt_lock_napi(bnapi)) in bnxt_poll()
1405 work_done += bnxt_poll_work(bp, bnapi, budget - work_done); in bnxt_poll()
1417 bnxt_unlock_napi(bnapi); in bnxt_poll()
1424 struct bnxt_napi *bnapi = container_of(napi, struct bnxt_napi, napi); in bnxt_busy_poll() local
1425 struct bnxt *bp = bnapi->bp; in bnxt_busy_poll()
1426 struct bnxt_cp_ring_info *cpr = &bnapi->cp_ring; in bnxt_busy_poll()
1432 if (!bnxt_lock_poll(bnapi)) in bnxt_busy_poll()
1435 rx_work = bnxt_poll_work(bp, bnapi, budget); in bnxt_busy_poll()
1439 bnxt_unlock_poll(bnapi); in bnxt_busy_poll()
1449 if (!bp->bnapi) in bnxt_free_tx_skbs()
1454 struct bnxt_napi *bnapi = bp->bnapi[i]; in bnxt_free_tx_skbs() local
1458 if (!bnapi) in bnxt_free_tx_skbs()
1461 txr = &bnapi->tx_ring; in bnxt_free_tx_skbs()
1507 if (!bp->bnapi) in bnxt_free_rx_skbs()
1513 struct bnxt_napi *bnapi = bp->bnapi[i]; in bnxt_free_rx_skbs() local
1517 if (!bnapi) in bnxt_free_rx_skbs()
1520 rxr = &bnapi->rx_ring; in bnxt_free_rx_skbs()
1649 if (!bp->bnapi) in bnxt_free_rx_rings()
1653 struct bnxt_napi *bnapi = bp->bnapi[i]; in bnxt_free_rx_rings() local
1657 if (!bnapi) in bnxt_free_rx_rings()
1660 rxr = &bnapi->rx_ring; in bnxt_free_rx_rings()
1687 struct bnxt_napi *bnapi = bp->bnapi[i]; in bnxt_alloc_rx_rings() local
1691 if (!bnapi) in bnxt_alloc_rx_rings()
1694 rxr = &bnapi->rx_ring; in bnxt_alloc_rx_rings()
1732 if (!bp->bnapi) in bnxt_free_tx_rings()
1736 struct bnxt_napi *bnapi = bp->bnapi[i]; in bnxt_free_tx_rings() local
1740 if (!bnapi) in bnxt_free_tx_rings()
1743 txr = &bnapi->tx_ring; in bnxt_free_tx_rings()
1778 struct bnxt_napi *bnapi = bp->bnapi[i]; in bnxt_alloc_tx_rings() local
1782 if (!bnapi) in bnxt_alloc_tx_rings()
1785 txr = &bnapi->tx_ring; in bnxt_alloc_tx_rings()
1826 if (!bp->bnapi) in bnxt_free_cp_rings()
1830 struct bnxt_napi *bnapi = bp->bnapi[i]; in bnxt_free_cp_rings() local
1834 if (!bnapi) in bnxt_free_cp_rings()
1837 cpr = &bnapi->cp_ring; in bnxt_free_cp_rings()
1849 struct bnxt_napi *bnapi = bp->bnapi[i]; in bnxt_alloc_cp_rings() local
1853 if (!bnapi) in bnxt_alloc_cp_rings()
1856 cpr = &bnapi->cp_ring; in bnxt_alloc_cp_rings()
1871 struct bnxt_napi *bnapi = bp->bnapi[i]; in bnxt_init_ring_struct() local
1877 if (!bnapi) in bnxt_init_ring_struct()
1880 cpr = &bnapi->cp_ring; in bnxt_init_ring_struct()
1888 rxr = &bnapi->rx_ring; in bnxt_init_ring_struct()
1905 txr = &bnapi->tx_ring; in bnxt_init_ring_struct()
1941 struct bnxt_napi *bnapi = bp->bnapi[ring_nr]; in bnxt_init_one_rx_ring() local
1947 if (!bnapi) in bnxt_init_one_rx_ring()
1956 rxr = &bnapi->rx_ring; in bnxt_init_one_rx_ring()
2038 struct bnxt_napi *bnapi = bp->bnapi[i]; in bnxt_init_tx_rings() local
2039 struct bnxt_tx_ring_info *txr = &bnapi->tx_ring; in bnxt_init_tx_rings()
2368 if (!bp->bnapi) in bnxt_free_stats()
2374 struct bnxt_napi *bnapi = bp->bnapi[i]; in bnxt_free_stats() local
2375 struct bnxt_cp_ring_info *cpr = &bnapi->cp_ring; in bnxt_free_stats()
2393 struct bnxt_napi *bnapi = bp->bnapi[i]; in bnxt_alloc_stats() local
2394 struct bnxt_cp_ring_info *cpr = &bnapi->cp_ring; in bnxt_alloc_stats()
2411 if (!bp->bnapi) in bnxt_clear_ring_indices()
2415 struct bnxt_napi *bnapi = bp->bnapi[i]; in bnxt_clear_ring_indices() local
2420 if (!bnapi) in bnxt_clear_ring_indices()
2423 cpr = &bnapi->cp_ring; in bnxt_clear_ring_indices()
2426 txr = &bnapi->tx_ring; in bnxt_clear_ring_indices()
2430 rxr = &bnapi->rx_ring; in bnxt_clear_ring_indices()
2499 kfree(bp->bnapi); in bnxt_free_mem()
2500 bp->bnapi = NULL; in bnxt_free_mem()
2509 void *bnapi; in bnxt_alloc_mem() local
2518 bnapi = kzalloc(arr_size + size * bp->cp_nr_rings, GFP_KERNEL); in bnxt_alloc_mem()
2519 if (!bnapi) in bnxt_alloc_mem()
2522 bp->bnapi = bnapi; in bnxt_alloc_mem()
2523 bnapi += arr_size; in bnxt_alloc_mem()
2524 for (i = 0; i < bp->cp_nr_rings; i++, bnapi += size) { in bnxt_alloc_mem()
2525 bp->bnapi[i] = bnapi; in bnxt_alloc_mem()
2526 bp->bnapi[i]->index = i; in bnxt_alloc_mem()
2527 bp->bnapi[i]->bp = bp; in bnxt_alloc_mem()
3298 struct bnxt_napi *bnapi = bp->bnapi[i]; in bnxt_hwrm_ring_alloc() local
3299 struct bnxt_cp_ring_info *cpr = &bnapi->cp_ring; in bnxt_hwrm_ring_alloc()
3315 struct bnxt_napi *bnapi = bp->bnapi[i]; in bnxt_hwrm_ring_alloc() local
3316 struct bnxt_tx_ring_info *txr = &bnapi->tx_ring; in bnxt_hwrm_ring_alloc()
3331 struct bnxt_napi *bnapi = bp->bnapi[i]; in bnxt_hwrm_ring_alloc() local
3332 struct bnxt_rx_ring_info *rxr = &bnapi->rx_ring; in bnxt_hwrm_ring_alloc()
3348 struct bnxt_napi *bnapi = bp->bnapi[i]; in bnxt_hwrm_ring_alloc() local
3349 struct bnxt_rx_ring_info *rxr = &bnapi->rx_ring; in bnxt_hwrm_ring_alloc()
3415 if (!bp->bnapi) in bnxt_hwrm_ring_free()
3420 struct bnxt_napi *bnapi = bp->bnapi[i]; in bnxt_hwrm_ring_free() local
3421 struct bnxt_tx_ring_info *txr = &bnapi->tx_ring; in bnxt_hwrm_ring_free()
3438 struct bnxt_napi *bnapi = bp->bnapi[i]; in bnxt_hwrm_ring_free() local
3439 struct bnxt_rx_ring_info *rxr = &bnapi->rx_ring; in bnxt_hwrm_ring_free()
3458 struct bnxt_napi *bnapi = bp->bnapi[i]; in bnxt_hwrm_ring_free() local
3459 struct bnxt_rx_ring_info *rxr = &bnapi->rx_ring; in bnxt_hwrm_ring_free()
3479 struct bnxt_napi *bnapi = bp->bnapi[i]; in bnxt_hwrm_ring_free() local
3480 struct bnxt_cp_ring_info *cpr = &bnapi->cp_ring; in bnxt_hwrm_ring_free()
3552 if (!bp->bnapi) in bnxt_hwrm_stat_ctx_free()
3559 struct bnxt_napi *bnapi = bp->bnapi[i]; in bnxt_hwrm_stat_ctx_free() local
3560 struct bnxt_cp_ring_info *cpr = &bnapi->cp_ring; in bnxt_hwrm_stat_ctx_free()
3589 struct bnxt_napi *bnapi = bp->bnapi[i]; in bnxt_hwrm_stat_ctx_alloc() local
3590 struct bnxt_cp_ring_info *cpr = &bnapi->cp_ring; in bnxt_hwrm_stat_ctx_alloc()
3991 if (!bp->bnapi) in bnxt_disable_int()
3995 struct bnxt_napi *bnapi = bp->bnapi[i]; in bnxt_disable_int() local
3996 struct bnxt_cp_ring_info *cpr = &bnapi->cp_ring; in bnxt_disable_int()
4008 struct bnxt_napi *bnapi = bp->bnapi[i]; in bnxt_enable_int() local
4009 struct bnxt_cp_ring_info *cpr = &bnapi->cp_ring; in bnxt_enable_int()
4168 free_irq(irq->vector, bp->bnapi[i]); in bnxt_free_irq()
4199 bp->bnapi[i]); in bnxt_request_irq()
4212 if (!bp->bnapi) in bnxt_del_napi()
4216 struct bnxt_napi *bnapi = bp->bnapi[i]; in bnxt_del_napi() local
4218 napi_hash_del(&bnapi->napi); in bnxt_del_napi()
4219 netif_napi_del(&bnapi->napi); in bnxt_del_napi()
4226 struct bnxt_napi *bnapi; in bnxt_init_napi() local
4230 bnapi = bp->bnapi[i]; in bnxt_init_napi()
4231 netif_napi_add(bp->dev, &bnapi->napi, in bnxt_init_napi()
4233 napi_hash_add(&bnapi->napi); in bnxt_init_napi()
4236 bnapi = bp->bnapi[0]; in bnxt_init_napi()
4237 netif_napi_add(bp->dev, &bnapi->napi, bnxt_poll, 64); in bnxt_init_napi()
4238 napi_hash_add(&bnapi->napi); in bnxt_init_napi()
4246 if (!bp->bnapi) in bnxt_disable_napi()
4250 napi_disable(&bp->bnapi[i]->napi); in bnxt_disable_napi()
4251 bnxt_disable_poll(bp->bnapi[i]); in bnxt_disable_napi()
4260 bnxt_enable_poll(bp->bnapi[i]); in bnxt_enable_napi()
4261 napi_enable(&bp->bnapi[i]->napi); in bnxt_enable_napi()
4268 struct bnxt_napi *bnapi; in bnxt_tx_disable() local
4272 if (bp->bnapi) { in bnxt_tx_disable()
4274 bnapi = bp->bnapi[i]; in bnxt_tx_disable()
4275 txr = &bnapi->tx_ring; in bnxt_tx_disable()
4290 struct bnxt_napi *bnapi; in bnxt_tx_enable() local
4295 bnapi = bp->bnapi[i]; in bnxt_tx_enable()
4296 txr = &bnapi->tx_ring; in bnxt_tx_enable()
4746 if (!bp->bnapi) in bnxt_get_stats64()
4751 struct bnxt_napi *bnapi = bp->bnapi[i]; in bnxt_get_stats64() local
4752 struct bnxt_cp_ring_info *cpr = &bnapi->cp_ring; in bnxt_get_stats64()
5005 struct bnxt_napi *bnapi; in bnxt_dbg_dump_states() local
5011 bnapi = bp->bnapi[i]; in bnxt_dbg_dump_states()
5012 txr = &bnapi->tx_ring; in bnxt_dbg_dump_states()
5013 rxr = &bnapi->rx_ring; in bnxt_dbg_dump_states()
5014 cpr = &bnapi->cp_ring; in bnxt_dbg_dump_states()
5059 irq->handler(irq->vector, bp->bnapi[i]); in bnxt_poll_controller()