@@ -347,7 +347,7 @@ static void bnxt_re_start_irq(void *handle, struct bnxt_msix_entry *ent)
347347 return ;
348348
349349 rdev = en_info -> rdev ;
350- msix_ent = rdev -> en_dev -> msix_entries ;
350+ msix_ent = rdev -> nqr -> msix_entries ;
351351 rcfw = & rdev -> rcfw ;
352352 if (!ent ) {
353353 /* Not setting the f/w timeout bit in rcfw.
@@ -363,7 +363,7 @@ static void bnxt_re_start_irq(void *handle, struct bnxt_msix_entry *ent)
363363 * in device sctructure.
364364 */
365365 for (indx = 0 ; indx < rdev -> nqr -> num_msix ; indx ++ )
366- rdev -> en_dev -> msix_entries [indx ].vector = ent [indx ].vector ;
366+ rdev -> nqr -> msix_entries [indx ].vector = ent [indx ].vector ;
367367
368368 rc = bnxt_qplib_rcfw_start_irq (rcfw , msix_ent [BNXT_RE_AEQ_IDX ].vector ,
369369 false);
@@ -1569,9 +1569,9 @@ static int bnxt_re_init_res(struct bnxt_re_dev *rdev)
15691569 mutex_init (& rdev -> nqr -> load_lock );
15701570
15711571 for (i = 1 ; i < rdev -> nqr -> num_msix ; i ++ ) {
1572- db_offt = rdev -> en_dev -> msix_entries [i ].db_offset ;
1572+ db_offt = rdev -> nqr -> msix_entries [i ].db_offset ;
15731573 rc = bnxt_qplib_enable_nq (rdev -> en_dev -> pdev , & rdev -> nqr -> nq [i - 1 ],
1574- i - 1 , rdev -> en_dev -> msix_entries [i ].vector ,
1574+ i - 1 , rdev -> nqr -> msix_entries [i ].vector ,
15751575 db_offt , & bnxt_re_cqn_handler ,
15761576 & bnxt_re_srqn_handler );
15771577 if (rc ) {
@@ -1658,7 +1658,7 @@ static int bnxt_re_alloc_res(struct bnxt_re_dev *rdev)
16581658 rattr .type = type ;
16591659 rattr .mode = RING_ALLOC_REQ_INT_MODE_MSIX ;
16601660 rattr .depth = BNXT_QPLIB_NQE_MAX_CNT - 1 ;
1661- rattr .lrid = rdev -> en_dev -> msix_entries [i + 1 ].ring_idx ;
1661+ rattr .lrid = rdev -> nqr -> msix_entries [i + 1 ].ring_idx ;
16621662 rc = bnxt_re_net_ring_alloc (rdev , & rattr , & nq -> ring_id );
16631663 if (rc ) {
16641664 ibdev_err (& rdev -> ibdev ,
@@ -1983,6 +1983,8 @@ static int bnxt_re_dev_init(struct bnxt_re_dev *rdev, u8 op_type)
19831983 return rc ;
19841984 }
19851985 rdev -> nqr -> num_msix = rdev -> en_dev -> ulp_tbl -> msix_requested ;
1986+ memcpy (rdev -> nqr -> msix_entries , rdev -> en_dev -> msix_entries ,
1987+ sizeof (struct bnxt_msix_entry ) * rdev -> nqr -> num_msix );
19861988
19871989 /* Check whether VF or PF */
19881990 bnxt_re_get_sriov_func_type (rdev );
@@ -2008,14 +2010,14 @@ static int bnxt_re_dev_init(struct bnxt_re_dev *rdev, u8 op_type)
20082010 rattr .type = type ;
20092011 rattr .mode = RING_ALLOC_REQ_INT_MODE_MSIX ;
20102012 rattr .depth = BNXT_QPLIB_CREQE_MAX_CNT - 1 ;
2011- rattr .lrid = rdev -> en_dev -> msix_entries [BNXT_RE_AEQ_IDX ].ring_idx ;
2013+ rattr .lrid = rdev -> nqr -> msix_entries [BNXT_RE_AEQ_IDX ].ring_idx ;
20122014 rc = bnxt_re_net_ring_alloc (rdev , & rattr , & creq -> ring_id );
20132015 if (rc ) {
20142016 ibdev_err (& rdev -> ibdev , "Failed to allocate CREQ: %#x\n" , rc );
20152017 goto free_rcfw ;
20162018 }
2017- db_offt = rdev -> en_dev -> msix_entries [BNXT_RE_AEQ_IDX ].db_offset ;
2018- vid = rdev -> en_dev -> msix_entries [BNXT_RE_AEQ_IDX ].vector ;
2019+ db_offt = rdev -> nqr -> msix_entries [BNXT_RE_AEQ_IDX ].db_offset ;
2020+ vid = rdev -> nqr -> msix_entries [BNXT_RE_AEQ_IDX ].vector ;
20192021 rc = bnxt_qplib_enable_rcfw_channel (& rdev -> rcfw ,
20202022 vid , db_offt ,
20212023 & bnxt_re_aeq_handler );
0 commit comments