qed: Define new MF bit for no_vlan config
The patch introduces a new Multi-Function bit for cases where firmware shouldn't perform the insertion of vlan-0 tag. The new bit is defined to abstract the implementation from the actual MF mode. Signed-off-by: Sudarsana Reddy Kalluru <skalluru@marvell.com> Signed-off-by: Ariel Elior <aelior@marvell.com> Signed-off-by: Michal Kalderon <mkalderon@marvell.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
a88381dece
commit
1a3ca25062
|
@ -492,6 +492,9 @@ enum qed_mf_mode_bit {
|
|||
|
||||
/* Allow DSCP to TC mapping */
|
||||
QED_MF_DSCP_TO_TC_MAP,
|
||||
|
||||
/* Do not insert a vlan tag with id 0 */
|
||||
QED_MF_DONT_ADD_VLAN0_TAG,
|
||||
};
|
||||
|
||||
enum qed_ufp_mode {
|
||||
|
|
|
@ -204,9 +204,7 @@ qed_dcbx_set_params(struct qed_dcbx_results *p_data,
|
|||
else
|
||||
p_data->arr[type].update = DONT_UPDATE_DCB_DSCP;
|
||||
|
||||
/* Do not add vlan tag 0 when DCB is enabled and port in UFP/OV mode */
|
||||
if ((test_bit(QED_MF_8021Q_TAGGING, &p_hwfn->cdev->mf_bits) ||
|
||||
test_bit(QED_MF_8021AD_TAGGING, &p_hwfn->cdev->mf_bits)))
|
||||
if (test_bit(QED_MF_DONT_ADD_VLAN0_TAG, &p_hwfn->cdev->mf_bits))
|
||||
p_data->arr[type].dont_add_vlan0 = true;
|
||||
|
||||
/* QM reconf data */
|
||||
|
|
|
@ -3157,12 +3157,14 @@ static int qed_hw_get_nvm_info(struct qed_hwfn *p_hwfn, struct qed_ptt *p_ptt)
|
|||
cdev->mf_bits = BIT(QED_MF_OVLAN_CLSS) |
|
||||
BIT(QED_MF_LLH_PROTO_CLSS) |
|
||||
BIT(QED_MF_UFP_SPECIFIC) |
|
||||
BIT(QED_MF_8021Q_TAGGING);
|
||||
BIT(QED_MF_8021Q_TAGGING) |
|
||||
BIT(QED_MF_DONT_ADD_VLAN0_TAG);
|
||||
break;
|
||||
case NVM_CFG1_GLOB_MF_MODE_BD:
|
||||
cdev->mf_bits = BIT(QED_MF_OVLAN_CLSS) |
|
||||
BIT(QED_MF_LLH_PROTO_CLSS) |
|
||||
BIT(QED_MF_8021AD_TAGGING);
|
||||
BIT(QED_MF_8021AD_TAGGING) |
|
||||
BIT(QED_MF_DONT_ADD_VLAN0_TAG);
|
||||
break;
|
||||
case NVM_CFG1_GLOB_MF_MODE_NPAR1_0:
|
||||
cdev->mf_bits = BIT(QED_MF_LLH_MAC_CLSS) |
|
||||
|
|
Loading…
Reference in New Issue