Lines Matching refs:lif

17 	struct ionic_lif *lif = ionic->lif;  in ionic_watchdog_cb()  local
24 if (!lif) in ionic_watchdog_cb()
29 __func__, hb, netif_running(lif->netdev), in ionic_watchdog_cb()
30 test_bit(IONIC_LIF_F_UP, lif->state)); in ionic_watchdog_cb()
33 !test_bit(IONIC_LIF_F_FW_RESET, lif->state)) in ionic_watchdog_cb()
34 ionic_link_status_check_request(lif, CAN_NOT_SLEEP); in ionic_watchdog_cb()
36 if (test_bit(IONIC_LIF_F_FILTER_SYNC_NEEDED, lif->state) && in ionic_watchdog_cb()
37 !test_bit(IONIC_LIF_F_FW_RESET, lif->state)) { in ionic_watchdog_cb()
40 netdev_err(lif->netdev, "rxmode change dropped\n"); in ionic_watchdog_cb()
45 netdev_dbg(lif->netdev, "deferred: rx_mode\n"); in ionic_watchdog_cb()
46 ionic_lif_deferred_enqueue(lif, work); in ionic_watchdog_cb()
99 struct ionic_lif *lif = ionic->lif; in ionic_doorbell_check_dwork() local
101 mutex_lock(&lif->queue_lock); in ionic_doorbell_check_dwork()
103 if (test_bit(IONIC_LIF_F_FW_STOPPING, lif->state) || in ionic_doorbell_check_dwork()
104 test_bit(IONIC_LIF_F_FW_RESET, lif->state)) { in ionic_doorbell_check_dwork()
105 mutex_unlock(&lif->queue_lock); in ionic_doorbell_check_dwork()
109 ionic_napi_schedule_do_softirq(&lif->adminqcq->napi); in ionic_doorbell_check_dwork()
111 if (test_bit(IONIC_LIF_F_UP, lif->state)) { in ionic_doorbell_check_dwork()
114 for (i = 0; i < lif->nxqs; i++) { in ionic_doorbell_check_dwork()
115 ionic_queue_dbell_napi_work(ionic, lif->txqcqs[i]); in ionic_doorbell_check_dwork()
116 ionic_queue_dbell_napi_work(ionic, lif->rxqcqs[i]); in ionic_doorbell_check_dwork()
119 if (lif->hwstamp_txq && in ionic_doorbell_check_dwork()
120 lif->hwstamp_txq->flags & IONIC_QCQ_F_INTR) in ionic_doorbell_check_dwork()
121 ionic_napi_schedule_do_softirq(&lif->hwstamp_txq->napi); in ionic_doorbell_check_dwork()
122 if (lif->hwstamp_rxq && in ionic_doorbell_check_dwork()
123 lif->hwstamp_rxq->flags & IONIC_QCQ_F_INTR) in ionic_doorbell_check_dwork()
124 ionic_napi_schedule_do_softirq(&lif->hwstamp_rxq->napi); in ionic_doorbell_check_dwork()
126 mutex_unlock(&lif->queue_lock); in ionic_doorbell_check_dwork()
173 if (!ionic->lif->doorbell_wa) in ionic_queue_doorbell_check()
176 cpu = ionic_get_preferred_cpu(ionic, &ionic->lif->adminqcq->intr); in ionic_queue_doorbell_check()
317 struct ionic_lif *lif = ionic->lif; in ionic_heartbeat_check() local
359 if (test_bit(IONIC_LIF_F_FW_RESET, lif->state)) in ionic_heartbeat_check()
368 idev->last_fw_hb, lif->state[0]); in ionic_heartbeat_check()
372 !test_bit(IONIC_LIF_F_FW_STOPPING, lif->state)) { in ionic_heartbeat_check()
378 !test_bit(IONIC_LIF_F_FW_RESET, lif->state) && in ionic_heartbeat_check()
379 !test_and_set_bit(IONIC_LIF_F_FW_STOPPING, lif->state)) { in ionic_heartbeat_check()
384 test_bit(IONIC_LIF_F_FW_RESET, lif->state)) { in ionic_heartbeat_check()
396 ionic_lif_deferred_enqueue(lif, work); in ionic_heartbeat_check()
687 .q_init.ver = qcq->q.lif->qtype_info[q->type].version, in ionic_dev_cmd_adminq_init()
701 int ionic_db_page_num(struct ionic_lif *lif, int pid) in ionic_db_page_num() argument
703 return (lif->hw_index * lif->dbid_count) + pid; in ionic_db_page_num()
706 int ionic_get_cmb(struct ionic_lif *lif, u32 *pgid, phys_addr_t *pgaddr, int order) in ionic_get_cmb() argument
708 struct ionic_dev *idev = &lif->ionic->idev; in ionic_get_cmb()
724 void ionic_put_cmb(struct ionic_lif *lif, u32 pgid, int order) in ionic_put_cmb() argument
726 struct ionic_dev *idev = &lif->ionic->idev; in ionic_put_cmb()
733 int ionic_cq_init(struct ionic_lif *lif, struct ionic_cq *cq, in ionic_cq_init() argument
746 cq->lif = lif; in ionic_cq_init()
752 cq->idev = &lif->ionic->idev; in ionic_cq_init()
782 int ionic_q_init(struct ionic_lif *lif, struct ionic_dev *idev, in ionic_q_init() argument
796 q->lif = lif; in ionic_q_init()
805 snprintf(q->name, sizeof(q->name), "L%d-%s%u", lif->index, name, index); in ionic_q_init()
812 struct ionic_lif *lif = q->lif; in ionic_q_post() local
818 q->lif->index, q->name, q->hw_type, q->hw_index, in ionic_q_post()
822 ionic_dbell_ring(lif->kern_dbpage, q->hw_type, in ionic_q_post()