mirror of https://gitee.com/openkylin/linux.git
i40e: Fix a bug with VMDq RSS queue allocation
The X722 pf flag setup should happen before the VMDq RSS queue count is initialized for VMDq VSI to get the right number of queues for RSS in case of X722 devices. Signed-off-by: Anjali Singhai Jain <anjali.singhai@intel.com> Signed-off-by: Alice Michael <alice.michael@intel.com> Tested-by: Andrew Bowers <andrewx.bowers@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
This commit is contained in:
parent
fe2647ab0c
commit
5a433199bf
|
@ -9000,6 +9000,29 @@ static int i40e_sw_init(struct i40e_pf *pf)
|
|||
pf->hw.func_caps.fd_filters_best_effort;
|
||||
}
|
||||
|
||||
if (pf->hw.mac.type == I40E_MAC_X722) {
|
||||
pf->flags |= I40E_FLAG_RSS_AQ_CAPABLE
|
||||
| I40E_FLAG_128_QP_RSS_CAPABLE
|
||||
| I40E_FLAG_HW_ATR_EVICT_CAPABLE
|
||||
| I40E_FLAG_OUTER_UDP_CSUM_CAPABLE
|
||||
| I40E_FLAG_WB_ON_ITR_CAPABLE
|
||||
| I40E_FLAG_MULTIPLE_TCP_UDP_RSS_PCTYPE
|
||||
| I40E_FLAG_NO_PCI_LINK_CHECK
|
||||
| I40E_FLAG_USE_SET_LLDP_MIB
|
||||
| I40E_FLAG_GENEVE_OFFLOAD_CAPABLE
|
||||
| I40E_FLAG_PTP_L4_CAPABLE
|
||||
| I40E_FLAG_WOL_MC_MAGIC_PKT_WAKE;
|
||||
} else if ((pf->hw.aq.api_maj_ver > 1) ||
|
||||
((pf->hw.aq.api_maj_ver == 1) &&
|
||||
(pf->hw.aq.api_min_ver > 4))) {
|
||||
/* Supported in FW API version higher than 1.4 */
|
||||
pf->flags |= I40E_FLAG_GENEVE_OFFLOAD_CAPABLE;
|
||||
}
|
||||
|
||||
/* Enable HW ATR eviction if possible */
|
||||
if (pf->flags & I40E_FLAG_HW_ATR_EVICT_CAPABLE)
|
||||
pf->flags |= I40E_FLAG_HW_ATR_EVICT_ENABLED;
|
||||
|
||||
if ((pf->hw.mac.type == I40E_MAC_XL710) &&
|
||||
(((pf->hw.aq.fw_maj_ver == 4) && (pf->hw.aq.fw_min_ver < 33)) ||
|
||||
(pf->hw.aq.fw_maj_ver < 4))) {
|
||||
|
@ -9041,29 +9064,6 @@ static int i40e_sw_init(struct i40e_pf *pf)
|
|||
I40E_MAX_VF_COUNT);
|
||||
}
|
||||
#endif /* CONFIG_PCI_IOV */
|
||||
if (pf->hw.mac.type == I40E_MAC_X722) {
|
||||
pf->flags |= I40E_FLAG_RSS_AQ_CAPABLE
|
||||
| I40E_FLAG_128_QP_RSS_CAPABLE
|
||||
| I40E_FLAG_HW_ATR_EVICT_CAPABLE
|
||||
| I40E_FLAG_OUTER_UDP_CSUM_CAPABLE
|
||||
| I40E_FLAG_WB_ON_ITR_CAPABLE
|
||||
| I40E_FLAG_MULTIPLE_TCP_UDP_RSS_PCTYPE
|
||||
| I40E_FLAG_NO_PCI_LINK_CHECK
|
||||
| I40E_FLAG_USE_SET_LLDP_MIB
|
||||
| I40E_FLAG_GENEVE_OFFLOAD_CAPABLE
|
||||
| I40E_FLAG_PTP_L4_CAPABLE
|
||||
| I40E_FLAG_WOL_MC_MAGIC_PKT_WAKE;
|
||||
} else if ((pf->hw.aq.api_maj_ver > 1) ||
|
||||
((pf->hw.aq.api_maj_ver == 1) &&
|
||||
(pf->hw.aq.api_min_ver > 4))) {
|
||||
/* Supported in FW API version higher than 1.4 */
|
||||
pf->flags |= I40E_FLAG_GENEVE_OFFLOAD_CAPABLE;
|
||||
}
|
||||
|
||||
/* Enable HW ATR eviction if possible */
|
||||
if (pf->flags & I40E_FLAG_HW_ATR_EVICT_CAPABLE)
|
||||
pf->flags |= I40E_FLAG_HW_ATR_EVICT_ENABLED;
|
||||
|
||||
pf->eeprom_version = 0xDEAD;
|
||||
pf->lan_veb = I40E_NO_VEB;
|
||||
pf->lan_vsi = I40E_NO_VSI;
|
||||
|
|
Loading…
Reference in New Issue