diff options
author | Ionut-robert Aron <ionut-robert.aron@nxp.com> | 2021-01-11 19:07:25 +0200 |
---|---|---|
committer | Jakub Kicinski <kuba@kernel.org> | 2021-01-13 19:20:55 -0800 |
commit | 70b32d8276feef23b9b2c50c1128a7d6252e2b47 (patch) | |
tree | 4988236b041c388f8092294b10f9a0a86818b2dd /drivers/net/ethernet/freescale/dpaa2/dpni.h | |
parent | b7cf966126eb16c96bcd13e5ba63657b7e2baef2 (diff) | |
download | lwn-70b32d8276feef23b9b2c50c1128a7d6252e2b47.tar.gz lwn-70b32d8276feef23b9b2c50c1128a7d6252e2b47.zip |
dpaa2-eth: add support for Rx VLAN filtering
Declare Rx VLAN filtering as supported and user-changeable only when
there are VLAN filtering entries available on the DPNI object. Even
then, rx-vlan-filtering is by default disabled.
Also, populate the .ndo_vlan_rx_add_vid() and .ndo_vlan_rx_kill_vid()
callbacks for adding and removing a specific VLAN from the VLAN table.
Signed-off-by: Ionut-robert Aron <ionut-robert.aron@nxp.com>
Signed-off-by: Ioana Ciornei <ioana.ciornei@nxp.com>
Link: https://lore.kernel.org/r/20210111170725.1818218-1-ciorneiioana@gmail.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Diffstat (limited to 'drivers/net/ethernet/freescale/dpaa2/dpni.h')
-rw-r--r-- | drivers/net/ethernet/freescale/dpaa2/dpni.h | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/drivers/net/ethernet/freescale/dpaa2/dpni.h b/drivers/net/ethernet/freescale/dpaa2/dpni.h index e7b9e195b534..4e96d9362dd2 100644 --- a/drivers/net/ethernet/freescale/dpaa2/dpni.h +++ b/drivers/net/ethernet/freescale/dpaa2/dpni.h @@ -1114,4 +1114,13 @@ int dpni_get_single_step_cfg(struct fsl_mc_io *mc_io, u16 token, struct dpni_single_step_cfg *ptp_cfg); +int dpni_enable_vlan_filter(struct fsl_mc_io *mc_io, u32 cmd_flags, u16 token, + u32 en); + +int dpni_add_vlan_id(struct fsl_mc_io *mc_io, u32 cmd_flags, u16 token, + u16 vlan_id, u8 flags, u8 tc_id, u8 flow_id); + +int dpni_remove_vlan_id(struct fsl_mc_io *mc_io, u32 cmd_flags, u16 token, + u16 vlan_id); + #endif /* __FSL_DPNI_H */ |