mirror of
https://git.proxmox.com/git/mirror_ubuntu-kernels.git
synced 2025-11-16 07:00:01 +00:00
There is a desire for the felix driver to gain support for multiple tag_8021q CPU ports, but the current model prevents it. This is because ocelot_apply_bridge_fwd_mask() only takes into consideration whether a port is a tag_8021q CPU port, but not whose CPU port it is. We need a model where we can have a direct affinity between an ocelot port and a tag_8021q CPU port. This serves as the basis for multiple CPU ports. Declare a "dsa_8021q_cpu" backpointer in struct ocelot_port which encodes that affinity. Repurpose the "ocelot_set_dsa_8021q_cpu" API to "ocelot_assign_dsa_8021q_cpu" to express the change of paradigm. Note that this change makes the first practical use of the new ocelot_port->index field in ocelot_port_unassign_dsa_8021q_cpu(), where we need to remove the old tag_8021q CPU port from the reserved VLAN range. Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com> Signed-off-by: David S. Miller <davem@davemloft.net> |
||
|---|---|---|
| .. | ||
| Kconfig | ||
| Makefile | ||
| ocelot_devlink.c | ||
| ocelot_fdma.c | ||
| ocelot_fdma.h | ||
| ocelot_flower.c | ||
| ocelot_io.c | ||
| ocelot_mrp.c | ||
| ocelot_net.c | ||
| ocelot_police.c | ||
| ocelot_police.h | ||
| ocelot_ptp.c | ||
| ocelot_qs.h | ||
| ocelot_rew.h | ||
| ocelot_vcap.c | ||
| ocelot_vcap.h | ||
| ocelot_vsc7514.c | ||
| ocelot.c | ||
| ocelot.h | ||
| vsc7514_regs.c | ||