@@ -4268,7 +4268,7 @@ static int bnxt_alloc_vnic_attributes(struct bnxt *bp)
4268
4268
goto out ;
4269
4269
}
4270
4270
vnic_skip_grps :
4271
- if ((bp -> flags & BNXT_FLAG_NEW_RSS_CAP ) &&
4271
+ if ((bp -> rss_cap & BNXT_RSS_CAP_NEW_RSS_CAP ) &&
4272
4272
!(vnic -> flags & BNXT_VNIC_RSS_FLAG ))
4273
4273
continue ;
4274
4274
@@ -5765,7 +5765,8 @@ static int bnxt_hwrm_vnic_qcaps(struct bnxt *bp)
5765
5765
int rc ;
5766
5766
5767
5767
bp -> hw_ring_stats_size = sizeof (struct ctx_hw_stats );
5768
- bp -> flags &= ~(BNXT_FLAG_NEW_RSS_CAP | BNXT_FLAG_ROCE_MIRROR_CAP );
5768
+ bp -> flags &= ~BNXT_FLAG_ROCE_MIRROR_CAP ;
5769
+ bp -> rss_cap &= ~BNXT_RSS_CAP_NEW_RSS_CAP ;
5769
5770
if (bp -> hwrm_spec_code < 0x10600 )
5770
5771
return 0 ;
5771
5772
@@ -5780,7 +5781,7 @@ static int bnxt_hwrm_vnic_qcaps(struct bnxt *bp)
5780
5781
5781
5782
if (!(bp -> flags & BNXT_FLAG_CHIP_P5_PLUS ) &&
5782
5783
(flags & VNIC_QCAPS_RESP_FLAGS_RSS_DFLT_CR_CAP ))
5783
- bp -> flags |= BNXT_FLAG_NEW_RSS_CAP ;
5784
+ bp -> rss_cap |= BNXT_RSS_CAP_NEW_RSS_CAP ;
5784
5785
if (flags &
5785
5786
VNIC_QCAPS_RESP_FLAGS_ROCE_MIRRORING_CAPABLE_VNIC_CAP )
5786
5787
bp -> flags |= BNXT_FLAG_ROCE_MIRROR_CAP ;
@@ -5793,7 +5794,7 @@ static int bnxt_hwrm_vnic_qcaps(struct bnxt *bp)
5793
5794
!(bp -> fw_cap & BNXT_FW_CAP_EXT_HW_STATS_SUPPORTED )))
5794
5795
bp -> fw_cap |= BNXT_FW_CAP_VLAN_RX_STRIP ;
5795
5796
if (flags & VNIC_QCAPS_RESP_FLAGS_RSS_HASH_TYPE_DELTA_CAP )
5796
- bp -> fw_cap |= BNXT_FW_CAP_RSS_HASH_TYPE_DELTA ;
5797
+ bp -> rss_cap |= BNXT_RSS_CAP_RSS_HASH_TYPE_DELTA ;
5797
5798
bp -> max_tpa_v2 = le16_to_cpu (resp -> max_aggs_supported );
5798
5799
if (bp -> max_tpa_v2 ) {
5799
5800
if (BNXT_CHIP_P5 (bp ))
@@ -6456,7 +6457,7 @@ __bnxt_hwrm_reserve_pf_rings(struct bnxt *bp, int tx_rings, int rx_rings,
6456
6457
req -> num_cmpl_rings = cpu_to_le16 (cp_rings );
6457
6458
req -> num_hw_ring_grps = cpu_to_le16 (ring_grps );
6458
6459
req -> num_rsscos_ctxs = cpu_to_le16 (1 );
6459
- if (!(bp -> flags & BNXT_FLAG_NEW_RSS_CAP ) &&
6460
+ if (!(bp -> rss_cap & BNXT_RSS_CAP_NEW_RSS_CAP ) &&
6460
6461
bnxt_rfs_supported (bp ))
6461
6462
req -> num_rsscos_ctxs =
6462
6463
cpu_to_le16 (ring_grps + 1 );
@@ -9133,7 +9134,7 @@ static int bnxt_alloc_rfs_vnics(struct bnxt *bp)
9133
9134
9134
9135
vnic = & bp -> vnic_info [vnic_id ];
9135
9136
vnic -> flags |= BNXT_VNIC_RFS_FLAG ;
9136
- if (bp -> flags & BNXT_FLAG_NEW_RSS_CAP )
9137
+ if (bp -> rss_cap & BNXT_RSS_CAP_NEW_RSS_CAP )
9137
9138
vnic -> flags |= BNXT_VNIC_RFS_NEW_RSS_FLAG ;
9138
9139
rc = bnxt_hwrm_vnic_alloc (bp , vnic_id , ring_id , 1 );
9139
9140
if (rc ) {
@@ -9227,7 +9228,7 @@ static int bnxt_init_chip(struct bnxt *bp, bool irq_re_init)
9227
9228
rc = bnxt_setup_vnic (bp , 0 );
9228
9229
if (rc )
9229
9230
goto err_out ;
9230
- if (bp -> fw_cap & BNXT_FW_CAP_RSS_HASH_TYPE_DELTA )
9231
+ if (bp -> rss_cap & BNXT_RSS_CAP_RSS_HASH_TYPE_DELTA )
9231
9232
bnxt_hwrm_update_rss_hash_cfg (bp );
9232
9233
9233
9234
if (bp -> flags & BNXT_FLAG_RFS ) {
@@ -11555,7 +11556,7 @@ static bool bnxt_rfs_supported(struct bnxt *bp)
11555
11556
return false;
11556
11557
if (BNXT_PF (bp ) && !BNXT_CHIP_TYPE_NITRO_A0 (bp ))
11557
11558
return true;
11558
- if (bp -> flags & BNXT_FLAG_NEW_RSS_CAP )
11559
+ if (bp -> rss_cap & BNXT_RSS_CAP_NEW_RSS_CAP )
11559
11560
return true;
11560
11561
return false;
11561
11562
}
@@ -11576,7 +11577,7 @@ static bool bnxt_rfs_capable(struct bnxt *bp)
11576
11577
max_rss_ctxs = bnxt_get_max_func_rss_ctxs (bp );
11577
11578
11578
11579
/* RSS contexts not a limiting factor */
11579
- if (bp -> flags & BNXT_FLAG_NEW_RSS_CAP )
11580
+ if (bp -> rss_cap & BNXT_RSS_CAP_NEW_RSS_CAP )
11580
11581
max_rss_ctxs = max_vnics ;
11581
11582
if (vnics > max_vnics || vnics > max_rss_ctxs ) {
11582
11583
if (bp -> rx_nr_rings > 1 )
@@ -12697,15 +12698,15 @@ static int bnxt_fw_init_one_p2(struct bnxt *bp)
12697
12698
12698
12699
static void bnxt_set_dflt_rss_hash_type (struct bnxt * bp )
12699
12700
{
12700
- bp -> flags &= ~BNXT_FLAG_UDP_RSS_CAP ;
12701
+ bp -> rss_cap &= ~BNXT_RSS_CAP_UDP_RSS_CAP ;
12701
12702
bp -> rss_hash_cfg = VNIC_RSS_CFG_REQ_HASH_TYPE_IPV4 |
12702
12703
VNIC_RSS_CFG_REQ_HASH_TYPE_TCP_IPV4 |
12703
12704
VNIC_RSS_CFG_REQ_HASH_TYPE_IPV6 |
12704
12705
VNIC_RSS_CFG_REQ_HASH_TYPE_TCP_IPV6 ;
12705
- if (bp -> fw_cap & BNXT_FW_CAP_RSS_HASH_TYPE_DELTA )
12706
+ if (bp -> rss_cap & BNXT_RSS_CAP_RSS_HASH_TYPE_DELTA )
12706
12707
bp -> rss_hash_delta = bp -> rss_hash_cfg ;
12707
12708
if (BNXT_CHIP_P4_PLUS (bp ) && bp -> hwrm_spec_code >= 0x10501 ) {
12708
- bp -> flags |= BNXT_FLAG_UDP_RSS_CAP ;
12709
+ bp -> rss_cap |= BNXT_RSS_CAP_UDP_RSS_CAP ;
12709
12710
bp -> rss_hash_cfg |= VNIC_RSS_CFG_REQ_HASH_TYPE_UDP_IPV4 |
12710
12711
VNIC_RSS_CFG_REQ_HASH_TYPE_UDP_IPV6 ;
12711
12712
}
0 commit comments