enetc: Fix HW_VLAN_CTAG_TX|RX toggling
authorClaudiu Manoil <claudiu.manoil@nxp.com>
Thu, 18 Jun 2020 09:16:52 +0000 (12:16 +0300)
committerDavid S. Miller <davem@davemloft.net>
Sat, 20 Jun 2020 03:00:33 +0000 (20:00 -0700)
commit9deba33f1b7266a3870c9da31f787b605748fc0c
treeafce69d4e2a94f0284fbebb221a9db03ad0571d7
parentfaa620876b01d6744f1599e279042bb8149247ab
enetc: Fix HW_VLAN_CTAG_TX|RX toggling

VLAN tag insertion/extraction offload is correctly
activated at probe time but deactivation of this feature
(i.e. via ethtool) is broken.  Toggling works only for
Tx/Rx ring 0 of a PF, and is ignored for the other rings,
including the VF rings.
To fix this, the existing VLAN offload toggling code
was extended to all the rings assigned to a netdevice,
instead of the default ring 0 (likely a leftover from the
early validation days of this feature).  And the code was
moved to the common set_features() function to fix toggling
for the VF driver too.

Fixes: d4fd0404c1c9 ("enetc: Introduce basic PF and VF ENETC ethernet drivers")
Signed-off-by: Claudiu Manoil <claudiu.manoil@nxp.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/freescale/enetc/enetc.c
drivers/net/ethernet/freescale/enetc/enetc_hw.h
drivers/net/ethernet/freescale/enetc/enetc_pf.c