IEEE 802.1ah (Provider Backbone Bridging) uses ethertype 0x88E7 as the
Backbone Service Tag (B-TAG). Some deployments stack 802.1ah on top of
existing QinQ or single-tagged VLAN infrastructure, creating scenarios
where a VF needs to negotiate support for the 0x88E7 ethertype with the
PF in order to install correct VLAN filters.

Add VIRTCHNL_VLAN_ETHERTYPE_88E7 = BIT(3) to the virtchnl_vlan_support
capability bitmask so that VF drivers can advertise and negotiate 0x88E7
VLAN ethertype support through the existing VIRTCHNL_OP_GET_OFFLOAD_VLAN_V2_CAPS
handshake.

The new bit follows the established BIT(N) pattern of the enum and does
not conflict with any existing flag.

Signed-off-by: Aleksandr Loktionov <[email protected]>
---
 include/linux/avf/virtchnl.h | 1 +
 1 file changed, 1 insertion(+)

diff --git a/include/linux/avf/virtchnl.h b/include/linux/avf/virtchnl.h
index 11bdab5..511c882 100644
--- a/include/linux/avf/virtchnl.h
+++ b/include/linux/avf/virtchnl.h
@@ -636,6 +636,7 @@ enum virtchnl_vlan_support {
        VIRTCHNL_VLAN_ETHERTYPE_8100 =          BIT(0),
        VIRTCHNL_VLAN_ETHERTYPE_88A8 =          BIT(1),
        VIRTCHNL_VLAN_ETHERTYPE_9100 =          BIT(2),
+       VIRTCHNL_VLAN_ETHERTYPE_88E7 =          BIT(3),
        VIRTCHNL_VLAN_TAG_LOCATION_L2TAG1 =     BIT(8),
        VIRTCHNL_VLAN_TAG_LOCATION_L2TAG2 =     BIT(9),
        VIRTCHNL_VLAN_TAG_LOCATION_L2TAG2_2 =   BIT(10),
-- 
2.52.0

Reply via email to