aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMisho <misho@elwix.org>2022-04-21 08:24:04 +0000
committerTom Jones <thj@FreeBSD.org>2022-04-27 13:55:24 +0000
commit5acfa48bb2585adfb8ceeacb695c6e6cc660894d (patch)
treeb76a4ef4c4e935a2138d5e887e3c66c0bcb4a2a7
parent27c537bf05d242643df7483052eb737885aa4db2 (diff)
if_bnxt: Allow bnxt interfaces to use vlans
When VLAN HW filter is disabled, the NIC does not pass any vlan tagged traffic. Setting these flags on the device allows vlan tagged traffic to pass. Approved by: re (gjb) PR: 236983 Tested by: pi Sponsored by: Klara, Inc. Differential Revision: https://reviews.freebsd.org/D34824 (cherry picked from commit 0c6a2fa33e36ac0b5d51cbae39a9c5564ad61788) (cherry picked from commit e54505277c39cad32f999fd72033f6fa9594b130)
-rw-r--r--sys/dev/bnxt/if_bnxt.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/sys/dev/bnxt/if_bnxt.c b/sys/dev/bnxt/if_bnxt.c
index 52d989a88392..1805a1f24f93 100644
--- a/sys/dev/bnxt/if_bnxt.c
+++ b/sys/dev/bnxt/if_bnxt.c
@@ -586,7 +586,8 @@ bnxt_rx_queues_alloc(if_ctx_t ctx, caddr_t *vaddrs,
softc->vnic_info.def_ring_grp = (uint16_t)HWRM_NA_SIGNATURE;
softc->vnic_info.cos_rule = (uint16_t)HWRM_NA_SIGNATURE;
softc->vnic_info.lb_rule = (uint16_t)HWRM_NA_SIGNATURE;
- softc->vnic_info.rx_mask = HWRM_CFA_L2_SET_RX_MASK_INPUT_MASK_BCAST;
+ softc->vnic_info.rx_mask = HWRM_CFA_L2_SET_RX_MASK_INPUT_MASK_BCAST |
+ HWRM_CFA_L2_SET_RX_MASK_INPUT_MASK_ANYVLAN_NONVLAN;
softc->vnic_info.mc_list_count = 0;
softc->vnic_info.flags = BNXT_VNIC_FLAG_DEFAULT;
rc = iflib_dma_alloc(ctx, BNXT_MAX_MC_ADDRS * ETHER_ADDR_LEN,
@@ -1391,8 +1392,7 @@ bnxt_promisc_set(if_ctx_t ctx, int flags)
HWRM_CFA_L2_SET_RX_MASK_INPUT_MASK_ANYVLAN_NONVLAN;
else
softc->vnic_info.rx_mask &=
- ~(HWRM_CFA_L2_SET_RX_MASK_INPUT_MASK_PROMISCUOUS |
- HWRM_CFA_L2_SET_RX_MASK_INPUT_MASK_ANYVLAN_NONVLAN);
+ ~(HWRM_CFA_L2_SET_RX_MASK_INPUT_MASK_PROMISCUOUS);
rc = bnxt_hwrm_cfa_l2_set_rx_mask(softc, &softc->vnic_info);