]> git.baikalelectronics.ru Git - kernel.git/commit
net: dsa: remove port argument from ->change_tag_protocol()
authorVladimir Oltean <vladimir.oltean@nxp.com>
Wed, 11 May 2022 09:50:18 +0000 (12:50 +0300)
committerJakub Kicinski <kuba@kernel.org>
Thu, 12 May 2022 23:38:55 +0000 (16:38 -0700)
commita44425a1c0b6f829b9ea94bd0213207f53baa41a
treef6631572c4903afed0f1d13955c59ffc291b3c4d
parent9f6be6c5a5dc92047ddc5cb7ec0b872a5dee96f8
net: dsa: remove port argument from ->change_tag_protocol()

DSA has not supported (and probably will not support in the future
either) independent tagging protocols per CPU port.

Different switch drivers have different requirements, some may need to
replicate some settings for each CPU port, some may need to apply some
settings on a single CPU port, while some may have to configure some
global settings and then some per-CPU-port settings.

In any case, the current model where DSA calls ->change_tag_protocol for
each CPU port turns out to be impractical for drivers where there are
global things to be done. For example, felix calls dsa_tag_8021q_register(),
which makes no sense per CPU port, so it suppresses the second call.

Let drivers deal with replication towards all CPU ports, and remove the
CPU port argument from the function prototype.

Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com>
Acked-by: Luiz Angelo Daros de Luca <luizluca@gmail.com>
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/dsa/mv88e6xxx/chip.c
drivers/net/dsa/ocelot/felix.c
drivers/net/dsa/realtek/rtl8365mb.c
include/net/dsa.h
net/dsa/dsa2.c
net/dsa/switch.c