bnxt_en: Add helper function bnxt_hwrm_vnic_rss_cfg_p5()
This is a pure refactoring patch. The new function bnxt_hwrm_vnic_set_rss_p5() will set up the P5_PLUS specific RSS ring table and then call bnxt_hwrm_vnic_cfg() to setup the vnic for proper RSS operations. This new function will be used later for additional RSS contexts. Signed-off-by: Pavan Chebbi <pavan.chebbi@broadcom.com> Signed-off-by: Michael Chan <michael.chan@broadcom.com> Link: https://lore.kernel.org/r/20240325222902.220712-4-michael.chan@broadcom.com Signed-off-by: Jakub Kicinski <kuba@kernel.org>
This commit is contained in:
parent
604041643a
commit
1dcd70ba24
@ -9825,6 +9825,23 @@ vnic_setup_err:
|
||||
return rc;
|
||||
}
|
||||
|
||||
int bnxt_hwrm_vnic_rss_cfg_p5(struct bnxt *bp, u16 vnic_id)
|
||||
{
|
||||
int rc;
|
||||
|
||||
rc = bnxt_hwrm_vnic_set_rss_p5(bp, vnic_id, true);
|
||||
if (rc) {
|
||||
netdev_err(bp->dev, "hwrm vnic %d set rss failure rc: %d\n",
|
||||
vnic_id, rc);
|
||||
return rc;
|
||||
}
|
||||
rc = bnxt_hwrm_vnic_cfg(bp, vnic_id);
|
||||
if (rc)
|
||||
netdev_err(bp->dev, "hwrm vnic %d cfg failure rc: %x\n",
|
||||
vnic_id, rc);
|
||||
return rc;
|
||||
}
|
||||
|
||||
static int __bnxt_setup_vnic_p5(struct bnxt *bp, u16 vnic_id)
|
||||
{
|
||||
int rc, i, nr_ctxs;
|
||||
@ -9842,18 +9859,10 @@ static int __bnxt_setup_vnic_p5(struct bnxt *bp, u16 vnic_id)
|
||||
if (i < nr_ctxs)
|
||||
return -ENOMEM;
|
||||
|
||||
rc = bnxt_hwrm_vnic_set_rss_p5(bp, vnic_id, true);
|
||||
if (rc) {
|
||||
netdev_err(bp->dev, "hwrm vnic %d set rss failure rc: %d\n",
|
||||
vnic_id, rc);
|
||||
rc = bnxt_hwrm_vnic_rss_cfg_p5(bp, vnic_id);
|
||||
if (rc)
|
||||
return rc;
|
||||
}
|
||||
rc = bnxt_hwrm_vnic_cfg(bp, vnic_id);
|
||||
if (rc) {
|
||||
netdev_err(bp->dev, "hwrm vnic %d cfg failure rc: %x\n",
|
||||
vnic_id, rc);
|
||||
return rc;
|
||||
}
|
||||
|
||||
if (bp->flags & BNXT_FLAG_AGG_RINGS) {
|
||||
rc = bnxt_hwrm_vnic_set_hds(bp, vnic_id);
|
||||
if (rc) {
|
||||
|
@ -2721,6 +2721,7 @@ int bnxt_hwrm_free_wol_fltr(struct bnxt *bp);
|
||||
int bnxt_hwrm_func_resc_qcaps(struct bnxt *bp, bool all);
|
||||
int bnxt_hwrm_func_qcaps(struct bnxt *bp);
|
||||
int bnxt_hwrm_fw_set_time(struct bnxt *);
|
||||
int bnxt_hwrm_vnic_rss_cfg_p5(struct bnxt *bp, u16 vnic_id);
|
||||
int bnxt_open_nic(struct bnxt *, bool, bool);
|
||||
int bnxt_half_open_nic(struct bnxt *bp);
|
||||
void bnxt_half_close_nic(struct bnxt *bp);
|
||||
|
Loading…
x
Reference in New Issue
Block a user