On 2015/6/9 11:27, Chen, Jing D wrote: > Hi, > > >> -----Original Message----- >> From: He, Shaopeng >> Sent: Tuesday, June 02, 2015 10:59 AM >> To: dev at dpdk.org >> Cc: Chen, Jing D; Qiu, Michael; He, Shaopeng >> Subject: [PATCH 3/3] fm10k: update VLAN offload features >> >> Fm10k PF/VF does not support QinQ; VLAN strip and filter are always on >> for PF/VF ports. >> >> Signed-off-by: Shaopeng He <shaopeng.he at intel.com> >> --- >> drivers/net/fm10k/fm10k_ethdev.c | 22 ++++++++++++++++++++++ >> 1 file changed, 22 insertions(+) >> >> diff --git a/drivers/net/fm10k/fm10k_ethdev.c >> b/drivers/net/fm10k/fm10k_ethdev.c >> index 4f23bf1..9b198a7 100644 >> --- a/drivers/net/fm10k/fm10k_ethdev.c >> +++ b/drivers/net/fm10k/fm10k_ethdev.c >> @@ -884,6 +884,27 @@ fm10k_vlan_filter_set(struct rte_eth_dev *dev, >> uint16_t vlan_id, int on) >> return (-EIO); >> } >> >> +static void >> +fm10k_vlan_offload_set(__rte_unused struct rte_eth_dev *dev, int mask) >> +{ >> + if (mask & ETH_VLAN_STRIP_MASK) { >> + if (!dev->data->dev_conf.rxmode.hw_vlan_strip) >> + PMD_INIT_LOG(ERR, "VLAN stripping is " >> + "always on in fm10k"); >> + } >> + >> + if (mask & ETH_VLAN_EXTEND_MASK) { >> + if (dev->data->dev_conf.rxmode.hw_vlan_extend) >> + PMD_INIT_LOG(ERR, "VLAN QinQ is not " >> + "supported in fm10k"); >> + } >> + >> + if (mask & ETH_VLAN_FILTER_MASK) { >> + if (!dev->data->dev_conf.rxmode.hw_vlan_filter) >> + PMD_INIT_LOG(ERR, "VLAN filter is always on in >> fm10k"); >> + } >> +} >> + > Update fm10k_dev_infos_get() to configure above options to expected values?
Could it be better to add CRC strip options to expected values by convenient? Thanks, Michael >> /* Add/Remove a MAC address, and update filters */ >> static void >> fm10k_MAC_filter_set(struct rte_eth_dev *dev, const u8 *mac, bool add) >> @@ -1801,6 +1822,7 @@ static const struct eth_dev_ops >> fm10k_eth_dev_ops = { >> .link_update = fm10k_link_update, >> .dev_infos_get = fm10k_dev_infos_get, >> .vlan_filter_set = fm10k_vlan_filter_set, >> + .vlan_offload_set = fm10k_vlan_offload_set, >> .mac_addr_add = fm10k_macaddr_add, >> .mac_addr_remove = fm10k_macaddr_remove, >> .rx_queue_start = fm10k_dev_rx_queue_start, >> -- >> 1.9.3 >