Hi,
Does anyone know how to support the RSS for receiving packets with
double VLAN or QinQ vlan (0x88A8), for I350 NIC card?
In the I350 datasheet, it is mentioned:
7.4.5
A packet is defined as a VLAN/802.1q packet if its type field matches
the VET.
Double VLAN Support
The I350 supports a mode where most of the received and sent packet have
at least one VLAN tag in
addition to the regular tagging which might optionally be added. This
mode is used for systems where
the switches add an additional tag containing switching information.
Note:
The only packets that may not have the additional VLAN are local packets
that will not have
any VLAN tag.
This mode is activated by setting CTRL_EXT.EXT_VLAN bit. The default
value of this bit is set according
to the EXT_VLAN (bit 1) in the Initialization Control 3 EEPROM word for
ports 0 to 3. See Section 6.2.26
for more information.
The type of the VLAN tag used for the additional VLAN is defined in the
VET.VET_EXT field.
Based on above, I can use the
rte_eth_dev_set_vlan_offload(port_id, ETH_VLAN_EXTEND_OFFLOAD)
and
rte_eth_dev_set_vlan_ether_type(port_id, ETH_VLAN_TYPE_OUTER, 0x88A8)
to set the vlan extend offload and the corresponding eth type successfully.
But the RSS still does not work for QinQ traffic.
Can anyone have some input?
Thanks,