Lines Matching refs:bna

25 	if (ethport->bna->enet.type == BNA_ENET_T_REGULAR)  in ethport_can_be_up()
73 stats_src = (u64 *)&bna->stats.hw_stats_kva->_name ## _stats; \
74 stats_dst = (u64 *)&bna->stats.hw_stats._name ## _stats; \
127 ethport->link_cbfn(ethport->bna->bnad, BNA_LINK_DOWN); in bna_bfi_ethport_admin_rsp()
187 bna_bfi_stats_get_rsp(struct bna *bna, struct bfi_msgq_mhdr *msghdr) in bna_bfi_stats_get_rsp() argument
189 struct bfi_enet_stats_req *stats_req = &bna->stats_mod.stats_get; in bna_bfi_stats_get_rsp()
204 stats_src = (u64 *)&(bna->stats.hw_stats_kva->rxf_stats[0]); in bna_bfi_stats_get_rsp()
208 stats_dst = (u64 *)&(bna->stats.hw_stats.rxf_stats[i]); in bna_bfi_stats_get_rsp()
223 stats_dst = (u64 *)&(bna->stats.hw_stats.txf_stats[i]); in bna_bfi_stats_get_rsp()
236 bna->stats_mod.stats_get_busy = false; in bna_bfi_stats_get_rsp()
237 bnad_cb_stats_get(bna->bnad, BNA_CB_SUCCESS, &bna->stats); in bna_bfi_stats_get_rsp()
247 ethport->link_cbfn(ethport->bna->bnad, ethport->link_status); in bna_bfi_ethport_linkup_aen()
257 ethport->link_cbfn(ethport->bna->bnad, BNA_LINK_DOWN); in bna_bfi_ethport_linkdown_aen()
261 bna_err_handler(struct bna *bna, u32 intr_status) in bna_err_handler() argument
263 if (BNA_IS_HALT_INTR(bna, intr_status)) in bna_err_handler()
264 bna_halt_clear(bna); in bna_err_handler()
266 bfa_nw_ioc_error_isr(&bna->ioceth.ioc); in bna_err_handler()
270 bna_mbox_handler(struct bna *bna, u32 intr_status) in bna_mbox_handler() argument
272 if (BNA_IS_ERR_INTR(bna, intr_status)) { in bna_mbox_handler()
273 bna_err_handler(bna, intr_status); in bna_mbox_handler()
276 if (BNA_IS_MBOX_INTR(bna, intr_status)) in bna_mbox_handler()
277 bfa_nw_ioc_mbox_isr(&bna->ioceth.ioc); in bna_mbox_handler()
283 struct bna *bna = (struct bna *)arg; in bna_msgq_rsp_handler() local
289 bna_rx_from_rid(bna, msghdr->enet_id, rx); in bna_msgq_rsp_handler()
295 bna_rx_from_rid(bna, msghdr->enet_id, rx); in bna_msgq_rsp_handler()
312 bna_rx_from_rid(bna, msghdr->enet_id, rx); in bna_msgq_rsp_handler()
318 bna_rx_from_rid(bna, msghdr->enet_id, rx); in bna_msgq_rsp_handler()
324 bna_rx_from_rid(bna, msghdr->enet_id, rx); in bna_msgq_rsp_handler()
330 bna_tx_from_rid(bna, msghdr->enet_id, tx); in bna_msgq_rsp_handler()
336 bna_tx_from_rid(bna, msghdr->enet_id, tx); in bna_msgq_rsp_handler()
342 bna_bfi_ethport_admin_rsp(&bna->ethport, msghdr); in bna_msgq_rsp_handler()
346 bna_bfi_ethport_lpbk_rsp(&bna->ethport, msghdr); in bna_msgq_rsp_handler()
350 bna_bfi_pause_set_rsp(&bna->enet, msghdr); in bna_msgq_rsp_handler()
354 bna_bfi_attr_get_rsp(&bna->ioceth, msghdr); in bna_msgq_rsp_handler()
358 bna_bfi_stats_get_rsp(bna, msghdr); in bna_msgq_rsp_handler()
366 bna_bfi_ethport_linkup_aen(&bna->ethport, msghdr); in bna_msgq_rsp_handler()
370 bna_bfi_ethport_linkdown_aen(&bna->ethport, msghdr); in bna_msgq_rsp_handler()
374 bna_bfi_ethport_enable_aen(&bna->ethport, msghdr); in bna_msgq_rsp_handler()
378 bna_bfi_ethport_disable_aen(&bna->ethport, msghdr); in bna_msgq_rsp_handler()
382 bna_bfi_bw_update_aen(&bna->tx_mod); in bna_msgq_rsp_handler()
398 cbfn(&(_ethport)->bna->enet); \
408 cbfn((ethport)->bna->bnad, status); \
426 bfa_msgq_cmd_post(&ethport->bna->msgq, &ethport->msgq_cmd); in bna_bfi_ethport_admin_up()
443 bfa_msgq_cmd_post(&ethport->bna->msgq, &ethport->msgq_cmd); in bna_bfi_ethport_admin_down()
456 lpbk_up_req->mode = (ethport->bna->enet.type == in bna_bfi_ethport_lpbk_up()
464 bfa_msgq_cmd_post(&ethport->bna->msgq, &ethport->msgq_cmd); in bna_bfi_ethport_lpbk_up()
481 bfa_msgq_cmd_post(&ethport->bna->msgq, &ethport->msgq_cmd); in bna_bfi_ethport_lpbk_down()
487 if (ethport->bna->enet.type == BNA_ENET_T_REGULAR) in bna_bfi_ethport_up()
496 if (ethport->bna->enet.type == BNA_ENET_T_REGULAR) in bna_bfi_ethport_down()
729 bna_ethport_init(struct bna_ethport *ethport, struct bna *bna) in bna_ethport_init() argument
732 ethport->bna = bna; in bna_ethport_init()
751 ethport->bna = NULL; in bna_ethport_uninit()
781 ethport->link_cbfn(ethport->bna->bnad, BNA_LINK_DOWN); in bna_ethport_fail()
825 bna_ethport_start(&(enet)->bna->ethport); \
826 bna_tx_mod_start(&(enet)->bna->tx_mod, tx_type); \
827 bna_rx_mod_start(&(enet)->bna->rx_mod, rx_type); \
840 bna_ethport_stop(&(enet)->bna->ethport); \
842 bna_tx_mod_stop(&(enet)->bna->tx_mod, tx_type); \
844 bna_rx_mod_stop(&(enet)->bna->rx_mod, rx_type); \
850 bna_ethport_fail(&(enet)->bna->ethport); \
851 bna_tx_mod_fail(&(enet)->bna->tx_mod); \
852 bna_rx_mod_fail(&(enet)->bna->rx_mod); \
860 bna_rx_mod_start(&(enet)->bna->rx_mod, rx_type); \
870 bna_rx_mod_stop(&(enet)->bna->rx_mod, rx_type); \
893 cbfn((enet)->bna->bnad); \
1179 bfa_msgq_cmd_post(&enet->bna->msgq, &enet->msgq_cmd); in bna_bfi_pause_set()
1191 bna_enet_init(struct bna_enet *enet, struct bna *bna) in bna_enet_init() argument
1193 enet->bna = bna; in bna_enet_init()
1211 enet->bna = NULL; in bna_enet_uninit()
1234 enet->stop_cbarg = &enet->bna->ioceth; in bna_enet_stop()
1282 (*cbfn)(enet->bna->bnad); in bna_enet_disable()
1287 enet->stop_cbarg = enet->bna->bnad; in bna_enet_disable()
1317 bfa_nw_ioc_get_mac(&enet->bna->ioceth.ioc, mac); in bna_enet_perm_mac_get()
1325 bna_intr_status_get((_ioceth)->bna, intr_status); \
1326 bnad_cb_mbox_intr_enable((_ioceth)->bna->bnad); \
1327 bna_mbox_intr_enable((_ioceth)->bna); \
1332 bna_mbox_intr_disable((_ioceth)->bna); \
1333 bnad_cb_mbox_intr_disable((_ioceth)->bna->bnad); \
1492 bna_enet_start(&ioceth->bna->enet); in bna_ioceth_sm_ready_entry()
1493 bna_stats_mod_start(&ioceth->bna->stats_mod); in bna_ioceth_sm_ready_entry()
1494 bnad_cb_ioceth_ready(ioceth->bna->bnad); in bna_ioceth_sm_ready_entry()
1507 bna_enet_fail(&ioceth->bna->enet); in bna_ioceth_sm_ready()
1508 bna_stats_mod_fail(&ioceth->bna->stats_mod); in bna_ioceth_sm_ready()
1546 bna_stats_mod_stop(&ioceth->bna->stats_mod); in bna_ioceth_sm_enet_stop_wait_entry()
1547 bna_enet_stop(&ioceth->bna->enet); in bna_ioceth_sm_enet_stop_wait_entry()
1558 bna_enet_fail(&ioceth->bna->enet); in bna_ioceth_sm_enet_stop_wait()
1559 bna_stats_mod_fail(&ioceth->bna->stats_mod); in bna_ioceth_sm_enet_stop_wait()
1601 bnad_cb_ioceth_failed(ioceth->bna->bnad); in bna_ioceth_sm_failed_entry()
1638 bfa_msgq_cmd_post(&ioceth->bna->msgq, &ioceth->msgq_cmd); in bna_bfi_attr_get()
1696 bna_ioceth_init(struct bna_ioceth *ioceth, struct bna *bna, in bna_ioceth_init() argument
1702 ioceth->bna = bna; in bna_ioceth_init()
1710 bfa_nw_ioc_pci_init(&ioceth->ioc, &bna->pcidev, BFI_PCIFN_CLASS_ETH); in bna_ioceth_init()
1727 bfa_nw_cee_attach(&bna->cee, &ioceth->ioc, bna); in bna_ioceth_init()
1728 bfa_nw_cee_mem_claim(&bna->cee, kva, dma); in bna_ioceth_init()
1732 bfa_nw_flash_attach(&bna->flash, &ioceth->ioc, bna); in bna_ioceth_init()
1733 bfa_nw_flash_memclaim(&bna->flash, kva, dma); in bna_ioceth_init()
1737 bfa_msgq_attach(&bna->msgq, &ioceth->ioc); in bna_ioceth_init()
1738 bfa_msgq_memclaim(&bna->msgq, kva, dma); in bna_ioceth_init()
1739 bfa_msgq_regisr(&bna->msgq, BFI_MC_ENET, bna_msgq_rsp_handler, bna); in bna_ioceth_init()
1756 ioceth->bna = NULL; in bna_ioceth_uninit()
1763 bnad_cb_ioceth_ready(ioceth->bna->bnad); in bna_ioceth_enable()
1775 bnad_cb_ioceth_disabled(ioceth->bna->bnad); in bna_ioceth_disable()
1780 ioceth->stop_cbarg = ioceth->bna->bnad; in bna_ioceth_disable()
1786 bna_ucam_mod_init(struct bna_ucam_mod *ucam_mod, struct bna *bna, in bna_ucam_mod_init() argument
1795 for (i = 0; i < bna->ioceth.attr.num_ucmac; i++) in bna_ucam_mod_init()
1800 for (i = i; i < (bna->ioceth.attr.num_ucmac * 2); i++) in bna_ucam_mod_init()
1803 ucam_mod->bna = bna; in bna_ucam_mod_init()
1809 ucam_mod->bna = NULL; in bna_ucam_mod_uninit()
1813 bna_mcam_mod_init(struct bna_mcam_mod *mcam_mod, struct bna *bna, in bna_mcam_mod_init() argument
1822 for (i = 0; i < bna->ioceth.attr.num_mcmac; i++) in bna_mcam_mod_init()
1829 for (i = 0; i < bna->ioceth.attr.num_mcmac; i++) in bna_mcam_mod_init()
1835 for (i = i; i < (bna->ioceth.attr.num_mcmac * 2); i++) in bna_mcam_mod_init()
1838 mcam_mod->bna = bna; in bna_mcam_mod_init()
1844 mcam_mod->bna = NULL; in bna_mcam_mod_uninit()
1848 bna_bfi_stats_get(struct bna *bna) in bna_bfi_stats_get() argument
1850 struct bfi_enet_stats_req *stats_req = &bna->stats_mod.stats_get; in bna_bfi_stats_get()
1852 bna->stats_mod.stats_get_busy = true; in bna_bfi_stats_get()
1859 stats_req->tx_enet_mask = htonl(bna->tx_mod.rid_mask); in bna_bfi_stats_get()
1860 stats_req->rx_enet_mask = htonl(bna->rx_mod.rid_mask); in bna_bfi_stats_get()
1861 stats_req->host_buffer.a32.addr_hi = bna->stats.hw_stats_dma.msb; in bna_bfi_stats_get()
1862 stats_req->host_buffer.a32.addr_lo = bna->stats.hw_stats_dma.lsb; in bna_bfi_stats_get()
1864 bfa_msgq_cmd_set(&bna->stats_mod.stats_get_cmd, NULL, NULL, in bna_bfi_stats_get()
1866 bfa_msgq_cmd_post(&bna->msgq, &bna->stats_mod.stats_get_cmd); in bna_bfi_stats_get()
1904 bna_mod_res_req(struct bna *bna, struct bna_res_info *res_info) in bna_mod_res_req() argument
1906 struct bna_attr *attr = &bna->ioceth.attr; in bna_mod_res_req()
1974 bna_init(struct bna *bna, struct bnad *bnad, in bna_init() argument
1977 bna->bnad = bnad; in bna_init()
1978 bna->pcidev = *pcidev; in bna_init()
1980 bna->stats.hw_stats_kva = (struct bfi_enet_stats *) in bna_init()
1982 bna->stats.hw_stats_dma.msb = in bna_init()
1984 bna->stats.hw_stats_dma.lsb = in bna_init()
1987 bna_reg_addr_init(bna, &bna->pcidev); in bna_init()
1990 bna_ioceth_init(&bna->ioceth, bna, res_info); in bna_init()
1992 bna_enet_init(&bna->enet, bna); in bna_init()
1993 bna_ethport_init(&bna->ethport, bna); in bna_init()
1997 bna_mod_init(struct bna *bna, struct bna_res_info *res_info) in bna_mod_init() argument
1999 bna_tx_mod_init(&bna->tx_mod, bna, res_info); in bna_mod_init()
2001 bna_rx_mod_init(&bna->rx_mod, bna, res_info); in bna_mod_init()
2003 bna_ucam_mod_init(&bna->ucam_mod, bna, res_info); in bna_mod_init()
2005 bna_mcam_mod_init(&bna->mcam_mod, bna, res_info); in bna_mod_init()
2007 bna->default_mode_rid = BFI_INVALID_RID; in bna_mod_init()
2008 bna->promisc_rid = BFI_INVALID_RID; in bna_mod_init()
2010 bna->mod_flags |= BNA_MOD_F_INIT_DONE; in bna_mod_init()
2014 bna_uninit(struct bna *bna) in bna_uninit() argument
2016 if (bna->mod_flags & BNA_MOD_F_INIT_DONE) { in bna_uninit()
2017 bna_mcam_mod_uninit(&bna->mcam_mod); in bna_uninit()
2018 bna_ucam_mod_uninit(&bna->ucam_mod); in bna_uninit()
2019 bna_rx_mod_uninit(&bna->rx_mod); in bna_uninit()
2020 bna_tx_mod_uninit(&bna->tx_mod); in bna_uninit()
2021 bna->mod_flags &= ~BNA_MOD_F_INIT_DONE; in bna_uninit()
2024 bna_stats_mod_uninit(&bna->stats_mod); in bna_uninit()
2025 bna_ethport_uninit(&bna->ethport); in bna_uninit()
2026 bna_enet_uninit(&bna->enet); in bna_uninit()
2028 bna_ioceth_uninit(&bna->ioceth); in bna_uninit()
2030 bna->bnad = NULL; in bna_uninit()
2034 bna_num_txq_set(struct bna *bna, int num_txq) in bna_num_txq_set() argument
2036 if (bna->ioceth.attr.fw_query_complete && in bna_num_txq_set()
2037 (num_txq <= bna->ioceth.attr.num_txq)) { in bna_num_txq_set()
2038 bna->ioceth.attr.num_txq = num_txq; in bna_num_txq_set()
2046 bna_num_rxp_set(struct bna *bna, int num_rxp) in bna_num_rxp_set() argument
2048 if (bna->ioceth.attr.fw_query_complete && in bna_num_rxp_set()
2049 (num_rxp <= bna->ioceth.attr.num_rxp)) { in bna_num_rxp_set()
2050 bna->ioceth.attr.num_rxp = num_rxp; in bna_num_rxp_set()
2090 bna_hw_stats_get(struct bna *bna) in bna_hw_stats_get() argument
2092 if (!bna->stats_mod.ioc_ready) { in bna_hw_stats_get()
2093 bnad_cb_stats_get(bna->bnad, BNA_CB_FAIL, &bna->stats); in bna_hw_stats_get()
2096 if (bna->stats_mod.stats_get_busy) { in bna_hw_stats_get()
2097 bnad_cb_stats_get(bna->bnad, BNA_CB_BUSY, &bna->stats); in bna_hw_stats_get()
2101 bna_bfi_stats_get(bna); in bna_hw_stats_get()