Lines Matching full:bd
25 static void bnge_fill_msix_vecs(struct bnge_dev *bd, in bnge_fill_msix_vecs() argument
28 struct bnge_auxr_dev *auxr_dev = bd->auxr_dev; in bnge_fill_msix_vecs()
32 dev_warn(bd->dev, "Requested MSI-X vectors not allocated\n"); in bnge_fill_msix_vecs()
37 info[i].vector = bd->irq_tbl[i].vector; in bnge_fill_msix_vecs()
38 info[i].db_offset = bd->db_offset; in bnge_fill_msix_vecs()
46 struct bnge_dev *bd = pci_get_drvdata(auxr_dev->pdev); in bnge_register_dev() local
50 netdev_lock(bd->netdev); in bnge_register_dev()
52 if (!bd->irq_tbl) { in bnge_register_dev()
57 if (!bnge_aux_has_enough_resources(bd)) { in bnge_register_dev()
65 auxr_info->msix_requested = bd->aux_num_msix; in bnge_register_dev()
67 bnge_fill_msix_vecs(bd, bd->auxr_dev->msix_info); in bnge_register_dev()
72 netdev_unlock(bd->netdev); in bnge_register_dev()
79 struct bnge_dev *bd = pci_get_drvdata(auxr_dev->pdev); in bnge_unregister_dev() local
83 netdev_lock(bd->netdev); in bnge_unregister_dev()
90 netdev_unlock(bd->netdev); in bnge_unregister_dev()
96 struct bnge_dev *bd = pci_get_drvdata(auxr_dev->pdev); in bnge_send_msg() local
102 rc = bnge_hwrm_req_init(bd, req, 0 /* don't care */); in bnge_send_msg()
106 rc = bnge_hwrm_req_replace(bd, req, fw_msg->msg, fw_msg->msg_len); in bnge_send_msg()
110 bnge_hwrm_req_timeout(bd, req, fw_msg->timeout); in bnge_send_msg()
111 resp = bnge_hwrm_req_hold(bd, req); in bnge_send_msg()
112 rc = bnge_hwrm_req_send(bd, req); in bnge_send_msg()
121 bnge_hwrm_req_drop(bd, req); in bnge_send_msg()
126 void bnge_rdma_aux_device_uninit(struct bnge_dev *bd) in bnge_rdma_aux_device_uninit() argument
132 if (!bd->aux_priv) in bnge_rdma_aux_device_uninit()
135 aux_priv = bd->aux_priv; in bnge_rdma_aux_device_uninit()
144 struct bnge_dev *bd = pci_get_drvdata(aux_priv->auxr_dev->pdev); in bnge_aux_dev_release() local
148 bd->auxr_dev = NULL; in bnge_aux_dev_release()
151 bd->aux_priv = NULL; in bnge_aux_dev_release()
154 void bnge_rdma_aux_device_del(struct bnge_dev *bd) in bnge_rdma_aux_device_del() argument
156 if (!bd->auxr_dev) in bnge_rdma_aux_device_del()
159 auxiliary_device_delete(&bd->aux_priv->aux_dev); in bnge_rdma_aux_device_del()
163 struct bnge_dev *bd) in bnge_set_auxr_dev_info() argument
165 auxr_dev->pdev = bd->pdev; in bnge_set_auxr_dev_info()
166 auxr_dev->l2_db_size = bd->db_size; in bnge_set_auxr_dev_info()
167 auxr_dev->l2_db_size_nc = bd->db_size; in bnge_set_auxr_dev_info()
168 auxr_dev->l2_db_offset = bd->db_offset; in bnge_set_auxr_dev_info()
171 if (bd->flags & BNGE_EN_ROCE_V1) in bnge_set_auxr_dev_info()
173 if (bd->flags & BNGE_EN_ROCE_V2) in bnge_set_auxr_dev_info()
176 auxr_dev->chip_num = bd->chip_num; in bnge_set_auxr_dev_info()
177 auxr_dev->hw_ring_stats_size = bd->hw_ring_stats_size; in bnge_set_auxr_dev_info()
178 auxr_dev->pf_port_id = bd->pf.port_id; in bnge_set_auxr_dev_info()
179 auxr_dev->en_state = bd->state; in bnge_set_auxr_dev_info()
180 auxr_dev->bar0 = bd->bar0; in bnge_set_auxr_dev_info()
183 void bnge_rdma_aux_device_add(struct bnge_dev *bd) in bnge_rdma_aux_device_add() argument
188 if (!bd->auxr_dev) in bnge_rdma_aux_device_add()
191 aux_dev = &bd->aux_priv->aux_dev; in bnge_rdma_aux_device_add()
194 dev_warn(bd->dev, "Failed to add auxiliary device for ROCE\n"); in bnge_rdma_aux_device_add()
196 bd->flags &= ~BNGE_EN_ROCE; in bnge_rdma_aux_device_add()
199 bd->auxr_dev->net = bd->netdev; in bnge_rdma_aux_device_add()
202 void bnge_rdma_aux_device_init(struct bnge_dev *bd) in bnge_rdma_aux_device_init() argument
210 if (!bnge_is_roce_en(bd)) in bnge_rdma_aux_device_init()
219 dev_warn(bd->dev, "ida alloc failed for aux device\n"); in bnge_rdma_aux_device_init()
227 aux_dev->dev.parent = &bd->pdev->dev; in bnge_rdma_aux_device_init()
236 bd->aux_priv = aux_priv; in bnge_rdma_aux_device_init()
249 bd->auxr_dev = auxr_dev; in bnge_rdma_aux_device_init()
250 bnge_set_auxr_dev_info(auxr_dev, bd); in bnge_rdma_aux_device_init()
257 bd->flags &= ~BNGE_EN_ROCE; in bnge_rdma_aux_device_init()