Message ID | 20210212010531.2722925-1-olteanv@gmail.com |
---|---|
Headers | show |
Series | Cleanup in brport flags switchdev offload for DSA | expand |
On 2/11/2021 5:05 PM, Vladimir Oltean wrote: > From: Vladimir Oltean <vladimir.oltean@nxp.com> > > When a struct switchdev_attr is notified through switchdev, there is no > way to report informational messages, unlike for struct switchdev_obj. > > Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com> > Reviewed-by: Ido Schimmel <idosch@nvidia.com> Reviewed-by: Florian Fainelli <f.fainelli@gmail.com>
On 12/02/2021 03:05, Vladimir Oltean wrote: > From: Vladimir Oltean <vladimir.oltean@nxp.com> > > The initial goal of this series was to have better support for > standalone ports mode on the DSA drivers like ocelot/felix and sja1105. > This turned out to require some API adjustments in both directions: > to the information presented to and by the switchdev notifier, and to > the API presented to the switch drivers by the DSA layer. > > Vladimir Oltean (9): > net: switchdev: propagate extack to port attributes > net: bridge: offload all port flags at once in br_setport > net: bridge: don't print in br_switchdev_set_port_flag > net: dsa: configure better brport flags when ports leave the bridge > net: switchdev: pass flags and mask to both {PRE_,}BRIDGE_FLAGS > attributes > net: dsa: act as ass passthrough for bridge port flags > net: mscc: ocelot: use separate flooding PGID for broadcast > net: mscc: ocelot: offload bridge port flags to device > net: dsa: sja1105: offload bridge port flags to device > > drivers/net/dsa/b53/b53_common.c | 91 ++++--- > drivers/net/dsa/b53/b53_priv.h | 2 - > drivers/net/dsa/mv88e6xxx/chip.c | 163 ++++++++++--- > drivers/net/dsa/mv88e6xxx/chip.h | 6 +- > drivers/net/dsa/mv88e6xxx/port.c | 52 ++-- > drivers/net/dsa/mv88e6xxx/port.h | 19 +- > drivers/net/dsa/ocelot/felix.c | 22 ++ > drivers/net/dsa/sja1105/sja1105.h | 2 + > drivers/net/dsa/sja1105/sja1105_main.c | 222 +++++++++++++++++- > drivers/net/dsa/sja1105/sja1105_spi.c | 6 + > .../marvell/prestera/prestera_switchdev.c | 26 +- > .../mellanox/mlxsw/spectrum_switchdev.c | 53 +++-- > drivers/net/ethernet/mscc/ocelot.c | 100 +++++++- > drivers/net/ethernet/mscc/ocelot_net.c | 52 +++- > drivers/net/ethernet/rocker/rocker_main.c | 10 +- > drivers/net/ethernet/ti/cpsw_switchdev.c | 27 ++- > drivers/staging/fsl-dpaa2/ethsw/ethsw.c | 34 ++- > include/net/dsa.h | 10 +- > include/net/switchdev.h | 13 +- > include/soc/mscc/ocelot.h | 20 +- > net/bridge/br_netlink.c | 116 +++------ > net/bridge/br_private.h | 6 +- > net/bridge/br_switchdev.c | 23 +- > net/bridge/br_sysfs_if.c | 7 +- > net/dsa/dsa_priv.h | 11 +- > net/dsa/port.c | 76 ++++-- > net/dsa/slave.c | 10 +- > net/switchdev/switchdev.c | 11 +- > 28 files changed, 870 insertions(+), 320 deletions(-) > Sorry, but we seems just added more work for you. https://lore.kernel.org/patchwork/cover/1379380/
On Fri, Feb 12, 2021 at 08:01:33PM +0530, Vignesh Raghavendra wrote: > Hi Vladimir, > > On 2/12/21 7:47 PM, Grygorii Strashko wrote: > > > > > > On 12/02/2021 03:05, Vladimir Oltean wrote: > >> From: Vladimir Oltean <vladimir.oltean@nxp.com> > [...] > > > > Sorry, but we seems just added more work for you. > > https://lore.kernel.org/patchwork/cover/1379380/ > > > > Could you squash these when you post new version: > Sorry for not noticing earlier. Hey, thanks for the fixup patch and congrats on the new driver support for the AM65 NUSS! What's functionally different compared to the other CPSW instantiations? Also, do I get it right that you also tested the bridge port flags passed in the new format and that they still work ok? May I add your Tested-by tag?
Hi, On 2/12/21 8:10 PM, Vladimir Oltean wrote: > On Fri, Feb 12, 2021 at 08:01:33PM +0530, Vignesh Raghavendra wrote: >> Hi Vladimir, >> >> On 2/12/21 7:47 PM, Grygorii Strashko wrote: >>> >>> >>> On 12/02/2021 03:05, Vladimir Oltean wrote: >>>> From: Vladimir Oltean <vladimir.oltean@nxp.com> >> [...] >>> >>> Sorry, but we seems just added more work for you. >>> https://lore.kernel.org/patchwork/cover/1379380/ >>> >> >> Could you squash these when you post new version: >> Sorry for not noticing earlier. > > Hey, thanks for the fixup patch and congrats on the new driver support > for the AM65 NUSS! What's functionally different compared to the other > CPSW instantiations? > CPSW is mostly present on older TI's 32 bit SoCs and can support upto 2 external ports. AM65 NUSS is next generation multi port switch IP (up to 8 external ports) present on TI's newer 64 bit platform. It also has different DMA integration and has native HW support to work as both Multi Mac and Switch mode. > Also, do I get it right that you also tested the bridge port flags > passed in the new format and that they still work ok? May I add your > Tested-by tag? > Sorry, I have not done extensive testing but tried couple of cmds. Those worked as expected: root@evm:~# ip link set eth0 type bridge_slave flood off mcast_flood off learning off Error: bridge: bridge flag offload is not supported. root@evm:~# ip link set eth0 type bridge_slave mcast_flood off [ 65.025285] am65-cpsw-nuss 8000000.ethernet eth0: BR_MCAST_FLOOD: 0 port 1 Regards Vignesh
From: Vladimir Oltean <vladimir.oltean@nxp.com> The initial goal of this series was to have better support for standalone ports mode on the DSA drivers like ocelot/felix and sja1105. This turned out to require some API adjustments in both directions: to the information presented to and by the switchdev notifier, and to the API presented to the switch drivers by the DSA layer. Vladimir Oltean (9): net: switchdev: propagate extack to port attributes net: bridge: offload all port flags at once in br_setport net: bridge: don't print in br_switchdev_set_port_flag net: dsa: configure better brport flags when ports leave the bridge net: switchdev: pass flags and mask to both {PRE_,}BRIDGE_FLAGS attributes net: dsa: act as ass passthrough for bridge port flags net: mscc: ocelot: use separate flooding PGID for broadcast net: mscc: ocelot: offload bridge port flags to device net: dsa: sja1105: offload bridge port flags to device drivers/net/dsa/b53/b53_common.c | 91 ++++--- drivers/net/dsa/b53/b53_priv.h | 2 - drivers/net/dsa/mv88e6xxx/chip.c | 163 ++++++++++--- drivers/net/dsa/mv88e6xxx/chip.h | 6 +- drivers/net/dsa/mv88e6xxx/port.c | 52 ++-- drivers/net/dsa/mv88e6xxx/port.h | 19 +- drivers/net/dsa/ocelot/felix.c | 22 ++ drivers/net/dsa/sja1105/sja1105.h | 2 + drivers/net/dsa/sja1105/sja1105_main.c | 222 +++++++++++++++++- drivers/net/dsa/sja1105/sja1105_spi.c | 6 + .../marvell/prestera/prestera_switchdev.c | 26 +- .../mellanox/mlxsw/spectrum_switchdev.c | 53 +++-- drivers/net/ethernet/mscc/ocelot.c | 100 +++++++- drivers/net/ethernet/mscc/ocelot_net.c | 52 +++- drivers/net/ethernet/rocker/rocker_main.c | 10 +- drivers/net/ethernet/ti/cpsw_switchdev.c | 27 ++- drivers/staging/fsl-dpaa2/ethsw/ethsw.c | 34 ++- include/net/dsa.h | 10 +- include/net/switchdev.h | 13 +- include/soc/mscc/ocelot.h | 20 +- net/bridge/br_netlink.c | 116 +++------ net/bridge/br_private.h | 6 +- net/bridge/br_switchdev.c | 23 +- net/bridge/br_sysfs_if.c | 7 +- net/dsa/dsa_priv.h | 11 +- net/dsa/port.c | 76 ++++-- net/dsa/slave.c | 10 +- net/switchdev/switchdev.c | 11 +- 28 files changed, 870 insertions(+), 320 deletions(-)