@@ -347,7 +347,7 @@ static void bnxt_re_start_irq(void *handle, struct bnxt_msix_entry *ent)
347
347
return ;
348
348
349
349
rdev = en_info -> rdev ;
350
- msix_ent = rdev -> en_dev -> msix_entries ;
350
+ msix_ent = rdev -> nqr -> msix_entries ;
351
351
rcfw = & rdev -> rcfw ;
352
352
if (!ent ) {
353
353
/* 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)
363
363
* in device sctructure.
364
364
*/
365
365
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 ;
367
367
368
368
rc = bnxt_qplib_rcfw_start_irq (rcfw , msix_ent [BNXT_RE_AEQ_IDX ].vector ,
369
369
false);
@@ -1569,9 +1569,9 @@ static int bnxt_re_init_res(struct bnxt_re_dev *rdev)
1569
1569
mutex_init (& rdev -> nqr -> load_lock );
1570
1570
1571
1571
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 ;
1573
1573
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 ,
1575
1575
db_offt , & bnxt_re_cqn_handler ,
1576
1576
& bnxt_re_srqn_handler );
1577
1577
if (rc ) {
@@ -1658,7 +1658,7 @@ static int bnxt_re_alloc_res(struct bnxt_re_dev *rdev)
1658
1658
rattr .type = type ;
1659
1659
rattr .mode = RING_ALLOC_REQ_INT_MODE_MSIX ;
1660
1660
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 ;
1662
1662
rc = bnxt_re_net_ring_alloc (rdev , & rattr , & nq -> ring_id );
1663
1663
if (rc ) {
1664
1664
ibdev_err (& rdev -> ibdev ,
@@ -1983,6 +1983,8 @@ static int bnxt_re_dev_init(struct bnxt_re_dev *rdev, u8 op_type)
1983
1983
return rc ;
1984
1984
}
1985
1985
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 );
1986
1988
1987
1989
/* Check whether VF or PF */
1988
1990
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)
2008
2010
rattr .type = type ;
2009
2011
rattr .mode = RING_ALLOC_REQ_INT_MODE_MSIX ;
2010
2012
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 ;
2012
2014
rc = bnxt_re_net_ring_alloc (rdev , & rattr , & creq -> ring_id );
2013
2015
if (rc ) {
2014
2016
ibdev_err (& rdev -> ibdev , "Failed to allocate CREQ: %#x\n" , rc );
2015
2017
goto free_rcfw ;
2016
2018
}
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 ;
2019
2021
rc = bnxt_qplib_enable_rcfw_channel (& rdev -> rcfw ,
2020
2022
vid , db_offt ,
2021
2023
& bnxt_re_aeq_handler );
0 commit comments