Lines Matching refs:bnapi

354 	struct bnx2_napi *bnapi = &bp->bnx2_napi[0];  in bnx2_setup_cnic_irq_info()  local
359 bnapi->cnic_present = 0; in bnx2_setup_cnic_irq_info()
364 bnapi->cnic_tag = bnapi->last_status_idx; in bnx2_setup_cnic_irq_info()
365 bnapi->cnic_present = 1; in bnx2_setup_cnic_irq_info()
372 ((unsigned long) bnapi->status_blk.msi + in bnx2_setup_cnic_irq_info()
407 struct bnx2_napi *bnapi = &bp->bnx2_napi[0]; in bnx2_unregister_cnic() local
412 bnapi->cnic_present = 0; in bnx2_unregister_cnic()
465 struct bnx2_napi *bnapi = &bp->bnx2_napi[0]; in bnx2_cnic_start() local
467 bnapi->cnic_tag = bnapi->last_status_idx; in bnx2_cnic_start()
599 struct bnx2_napi *bnapi; in bnx2_disable_int() local
602 bnapi = &bp->bnx2_napi[i]; in bnx2_disable_int()
603 BNX2_WR(bp, BNX2_PCICFG_INT_ACK_CMD, bnapi->int_num | in bnx2_disable_int()
613 struct bnx2_napi *bnapi; in bnx2_enable_int() local
616 bnapi = &bp->bnx2_napi[i]; in bnx2_enable_int()
618 BNX2_WR(bp, BNX2_PCICFG_INT_ACK_CMD, bnapi->int_num | in bnx2_enable_int()
621 bnapi->last_status_idx); in bnx2_enable_int()
623 BNX2_WR(bp, BNX2_PCICFG_INT_ACK_CMD, bnapi->int_num | in bnx2_enable_int()
625 bnapi->last_status_idx); in bnx2_enable_int()
699 struct bnx2_napi *bnapi = &bp->bnx2_napi[i]; in bnx2_free_tx_mem() local
700 struct bnx2_tx_ring_info *txr = &bnapi->tx_ring; in bnx2_free_tx_mem()
719 struct bnx2_napi *bnapi = &bp->bnx2_napi[i]; in bnx2_free_rx_mem() local
720 struct bnx2_rx_ring_info *rxr = &bnapi->rx_ring; in bnx2_free_rx_mem()
751 struct bnx2_napi *bnapi = &bp->bnx2_napi[i]; in bnx2_alloc_tx_mem() local
752 struct bnx2_tx_ring_info *txr = &bnapi->tx_ring; in bnx2_alloc_tx_mem()
773 struct bnx2_napi *bnapi = &bp->bnx2_napi[i]; in bnx2_alloc_rx_mem() local
774 struct bnx2_rx_ring_info *rxr = &bnapi->rx_ring; in bnx2_alloc_rx_mem()
819 struct bnx2_napi *bnapi = &bp->bnx2_napi[0]; in bnx2_free_mem() local
832 if (bnapi->status_blk.msi) { in bnx2_free_mem()
834 bnapi->status_blk.msi, in bnx2_free_mem()
836 bnapi->status_blk.msi = NULL; in bnx2_free_mem()
845 struct bnx2_napi *bnapi; in bnx2_alloc_mem() local
861 bnapi = &bp->bnx2_napi[0]; in bnx2_alloc_mem()
862 bnapi->status_blk.msi = status_blk; in bnx2_alloc_mem()
863 bnapi->hw_tx_cons_ptr = in bnx2_alloc_mem()
864 &bnapi->status_blk.msi->status_tx_quick_consumer_index0; in bnx2_alloc_mem()
865 bnapi->hw_rx_cons_ptr = in bnx2_alloc_mem()
866 &bnapi->status_blk.msi->status_rx_quick_consumer_index0; in bnx2_alloc_mem()
871 bnapi = &bp->bnx2_napi[i]; in bnx2_alloc_mem()
874 bnapi->status_blk.msix = sblk; in bnx2_alloc_mem()
875 bnapi->hw_tx_cons_ptr = in bnx2_alloc_mem()
877 bnapi->hw_rx_cons_ptr = in bnx2_alloc_mem()
879 bnapi->int_num = i << 24; in bnx2_alloc_mem()
2780 bnx2_phy_event_is_set(struct bnx2 *bp, struct bnx2_napi *bnapi, u32 event) in bnx2_phy_event_is_set() argument
2782 struct status_block *sblk = bnapi->status_blk.msi; in bnx2_phy_event_is_set()
2800 bnx2_phy_int(struct bnx2 *bp, struct bnx2_napi *bnapi) in bnx2_phy_int() argument
2804 if (bnx2_phy_event_is_set(bp, bnapi, STATUS_ATTN_BITS_LINK_STATE)) in bnx2_phy_int()
2806 if (bnx2_phy_event_is_set(bp, bnapi, STATUS_ATTN_BITS_TIMER_ABORT)) in bnx2_phy_int()
2814 bnx2_get_hw_tx_cons(struct bnx2_napi *bnapi) in bnx2_get_hw_tx_cons() argument
2820 cons = *bnapi->hw_tx_cons_ptr; in bnx2_get_hw_tx_cons()
2828 bnx2_tx_int(struct bnx2 *bp, struct bnx2_napi *bnapi, int budget) in bnx2_tx_int() argument
2830 struct bnx2_tx_ring_info *txr = &bnapi->tx_ring; in bnx2_tx_int()
2836 index = (bnapi - bp->bnx2_napi); in bnx2_tx_int()
2839 hw_cons = bnx2_get_hw_tx_cons(bnapi); in bnx2_tx_int()
2896 hw_cons = bnx2_get_hw_tx_cons(bnapi); in bnx2_tx_int()
3116 bnx2_get_hw_rx_cons(struct bnx2_napi *bnapi) in bnx2_get_hw_rx_cons() argument
3122 cons = *bnapi->hw_rx_cons_ptr; in bnx2_get_hw_rx_cons()
3130 bnx2_rx_int(struct bnx2 *bp, struct bnx2_napi *bnapi, int budget) in bnx2_rx_int() argument
3132 struct bnx2_rx_ring_info *rxr = &bnapi->rx_ring; in bnx2_rx_int()
3140 hw_cons = bnx2_get_hw_rx_cons(bnapi); in bnx2_rx_int()
3263 skb_record_rx_queue(skb, bnapi - &bp->bnx2_napi[0]); in bnx2_rx_int()
3264 napi_gro_receive(&bnapi->napi, skb); in bnx2_rx_int()
3276 hw_cons = bnx2_get_hw_rx_cons(bnapi); in bnx2_rx_int()
3302 struct bnx2_napi *bnapi = dev_instance; in bnx2_msi() local
3303 struct bnx2 *bp = bnapi->bp; in bnx2_msi()
3305 prefetch(bnapi->status_blk.msi); in bnx2_msi()
3314 napi_schedule(&bnapi->napi); in bnx2_msi()
3322 struct bnx2_napi *bnapi = dev_instance; in bnx2_msi_1shot() local
3323 struct bnx2 *bp = bnapi->bp; in bnx2_msi_1shot()
3325 prefetch(bnapi->status_blk.msi); in bnx2_msi_1shot()
3331 napi_schedule(&bnapi->napi); in bnx2_msi_1shot()
3339 struct bnx2_napi *bnapi = dev_instance; in bnx2_interrupt() local
3340 struct bnx2 *bp = bnapi->bp; in bnx2_interrupt()
3341 struct status_block *sblk = bnapi->status_blk.msi; in bnx2_interrupt()
3349 if ((sblk->status_idx == bnapi->last_status_idx) && in bnx2_interrupt()
3367 if (napi_schedule_prep(&bnapi->napi)) { in bnx2_interrupt()
3368 bnapi->last_status_idx = sblk->status_idx; in bnx2_interrupt()
3369 __napi_schedule(&bnapi->napi); in bnx2_interrupt()
3376 bnx2_has_fast_work(struct bnx2_napi *bnapi) in bnx2_has_fast_work() argument
3378 struct bnx2_tx_ring_info *txr = &bnapi->tx_ring; in bnx2_has_fast_work()
3379 struct bnx2_rx_ring_info *rxr = &bnapi->rx_ring; in bnx2_has_fast_work()
3381 if ((bnx2_get_hw_rx_cons(bnapi) != rxr->rx_cons) || in bnx2_has_fast_work()
3382 (bnx2_get_hw_tx_cons(bnapi) != txr->hw_tx_cons)) in bnx2_has_fast_work()
3391 bnx2_has_work(struct bnx2_napi *bnapi) in bnx2_has_work() argument
3393 struct status_block *sblk = bnapi->status_blk.msi; in bnx2_has_work()
3395 if (bnx2_has_fast_work(bnapi)) in bnx2_has_work()
3399 if (bnapi->cnic_present && (bnapi->cnic_tag != sblk->status_idx)) in bnx2_has_work()
3413 struct bnx2_napi *bnapi = &bp->bnx2_napi[0]; in bnx2_chk_missed_msi() local
3416 if (bnx2_has_work(bnapi)) { in bnx2_chk_missed_msi()
3421 if (bnapi->last_status_idx == bp->idle_chk_status_idx) { in bnx2_chk_missed_msi()
3425 bnx2_msi(bp->irq_tbl[0].vector, bnapi); in bnx2_chk_missed_msi()
3429 bp->idle_chk_status_idx = bnapi->last_status_idx; in bnx2_chk_missed_msi()
3433 static void bnx2_poll_cnic(struct bnx2 *bp, struct bnx2_napi *bnapi) in bnx2_poll_cnic() argument
3437 if (!bnapi->cnic_present) in bnx2_poll_cnic()
3443 bnapi->cnic_tag = c_ops->cnic_handler(bp->cnic_data, in bnx2_poll_cnic()
3444 bnapi->status_blk.msi); in bnx2_poll_cnic()
3449 static void bnx2_poll_link(struct bnx2 *bp, struct bnx2_napi *bnapi) in bnx2_poll_link() argument
3451 struct status_block *sblk = bnapi->status_blk.msi; in bnx2_poll_link()
3458 bnx2_phy_int(bp, bnapi); in bnx2_poll_link()
3469 static int bnx2_poll_work(struct bnx2 *bp, struct bnx2_napi *bnapi, in bnx2_poll_work() argument
3472 struct bnx2_tx_ring_info *txr = &bnapi->tx_ring; in bnx2_poll_work()
3473 struct bnx2_rx_ring_info *rxr = &bnapi->rx_ring; in bnx2_poll_work()
3475 if (bnx2_get_hw_tx_cons(bnapi) != txr->hw_tx_cons) in bnx2_poll_work()
3476 bnx2_tx_int(bp, bnapi, 0); in bnx2_poll_work()
3478 if (bnx2_get_hw_rx_cons(bnapi) != rxr->rx_cons) in bnx2_poll_work()
3479 work_done += bnx2_rx_int(bp, bnapi, budget - work_done); in bnx2_poll_work()
3486 struct bnx2_napi *bnapi = container_of(napi, struct bnx2_napi, napi); in bnx2_poll_msix() local
3487 struct bnx2 *bp = bnapi->bp; in bnx2_poll_msix()
3489 struct status_block_msix *sblk = bnapi->status_blk.msix; in bnx2_poll_msix()
3492 work_done = bnx2_poll_work(bp, bnapi, work_done, budget); in bnx2_poll_msix()
3496 bnapi->last_status_idx = sblk->status_idx; in bnx2_poll_msix()
3499 if (likely(!bnx2_has_fast_work(bnapi))) { in bnx2_poll_msix()
3502 BNX2_WR(bp, BNX2_PCICFG_INT_ACK_CMD, bnapi->int_num | in bnx2_poll_msix()
3504 bnapi->last_status_idx); in bnx2_poll_msix()
3513 struct bnx2_napi *bnapi = container_of(napi, struct bnx2_napi, napi); in bnx2_poll() local
3514 struct bnx2 *bp = bnapi->bp; in bnx2_poll()
3516 struct status_block *sblk = bnapi->status_blk.msi; in bnx2_poll()
3519 bnx2_poll_link(bp, bnapi); in bnx2_poll()
3521 work_done = bnx2_poll_work(bp, bnapi, work_done, budget); in bnx2_poll()
3524 bnx2_poll_cnic(bp, bnapi); in bnx2_poll()
3531 bnapi->last_status_idx = sblk->status_idx; in bnx2_poll()
3537 if (likely(!bnx2_has_work(bnapi))) { in bnx2_poll()
3542 bnapi->last_status_idx); in bnx2_poll()
3548 bnapi->last_status_idx); in bnx2_poll()
3552 bnapi->last_status_idx); in bnx2_poll()
5101 struct bnx2_napi *bnapi; in bnx2_clear_ring_states() local
5107 bnapi = &bp->bnx2_napi[i]; in bnx2_clear_ring_states()
5108 txr = &bnapi->tx_ring; in bnx2_clear_ring_states()
5109 rxr = &bnapi->rx_ring; in bnx2_clear_ring_states()
5156 struct bnx2_napi *bnapi; in bnx2_init_tx_ring() local
5159 bnapi = &bp->bnx2_napi[ring_num]; in bnx2_init_tx_ring()
5160 txr = &bnapi->tx_ring; in bnx2_init_tx_ring()
5213 struct bnx2_napi *bnapi = &bp->bnx2_napi[ring_num]; in bnx2_init_rx_ring() local
5214 struct bnx2_rx_ring_info *rxr = &bnapi->rx_ring; in bnx2_init_rx_ring()
5406 struct bnx2_napi *bnapi = &bp->bnx2_napi[i]; in bnx2_free_tx_skbs() local
5407 struct bnx2_tx_ring_info *txr = &bnapi->tx_ring; in bnx2_free_tx_skbs()
5451 struct bnx2_napi *bnapi = &bp->bnx2_napi[i]; in bnx2_free_rx_skbs() local
5452 struct bnx2_rx_ring_info *rxr = &bnapi->rx_ring; in bnx2_free_rx_skbs()
5787 struct bnx2_napi *bnapi = &bp->bnx2_napi[0], *tx_napi; in bnx2_run_loopback() local
5788 struct bnx2_tx_ring_info *txr = &bnapi->tx_ring; in bnx2_run_loopback()
5789 struct bnx2_rx_ring_info *rxr = &bnapi->rx_ring; in bnx2_run_loopback()
5791 tx_napi = bnapi; in bnx2_run_loopback()
5794 rxr = &bnapi->rx_ring; in bnx2_run_loopback()
5832 rx_start_idx = bnx2_get_hw_rx_cons(bnapi); in bnx2_run_loopback()
5865 rx_idx = bnx2_get_hw_rx_cons(bnapi); in bnx2_run_loopback()
6572 struct bnx2_napi *bnapi; in bnx2_start_xmit() local
6578 bnapi = &bp->bnx2_napi[i]; in bnx2_start_xmit()
6579 txr = &bnapi->tx_ring; in bnx2_start_xmit()
8494 struct bnx2_napi *bnapi = &bp->bnx2_napi[i]; in bnx2_init_napi() local
8503 bnapi->bp = bp; in bnx2_init_napi()