net: lan966x: Add lag support
From: | Horatiu Vultur <horatiu.vultur-AT-microchip.com> | |
To: | <linux-kernel-AT-vger.kernel.org>, <netdev-AT-vger.kernel.org> | |
Subject: | [PATCH net-next v3 0/7] net: lan966x: Add lag support | |
Date: | Fri, 01 Jul 2022 22:52:20 +0200 | |
Message-ID: | <20220701205227.1337160-1-horatiu.vultur@microchip.com> | |
Cc: | <UNGLinuxDriver-AT-microchip.com>, <davem-AT-davemloft.net>, <edumazet-AT-google.com>, <kuba-AT-kernel.org>, <pabeni-AT-redhat.com>, <vladimir.oltean-AT-nxp.com>, Horatiu Vultur <horatiu.vultur-AT-microchip.com> | |
Archive-link: | Article |
Add lag support for lan966x. First 4 patches don't do any changes to the current behaviour, they just prepare for lag support. While the rest is to add the lag support. v2->v3: - return error code from 'switchdev_bridge_port_offload()' - fix lan966x_foreign_dev_check(), it was missing lag support - remove lan966x_lag_mac_add_entry and lan966x_mac_del_entry as they are not needed - fix race conditions when accessing port->bond - move FDB entries when a new port joins the lag if it has a lower v1->v2: - fix the LAG PGIDs when ports go down, in this way is not needed anymore the last patch of the series. Horatiu Vultur (7): net: lan966x: Add reqisters used to configure lag interfaces net: lan966x: Split lan966x_fdb_event_work net: lan966x: Expose lan966x_switchdev_nb and lan966x_switchdev_blocking_nb net: lan966x: Extend lan966x_foreign_bridging_check net: lan966x: Add lag support for lan966x. net: lan966x: Extend FDB to support also lag net: lan966x: Extend MAC to support also lag interfaces. .../net/ethernet/microchip/lan966x/Makefile | 2 +- .../ethernet/microchip/lan966x/lan966x_fdb.c | 155 +++++--- .../ethernet/microchip/lan966x/lan966x_lag.c | 335 ++++++++++++++++++ .../ethernet/microchip/lan966x/lan966x_mac.c | 66 +++- .../ethernet/microchip/lan966x/lan966x_main.h | 38 ++ .../ethernet/microchip/lan966x/lan966x_regs.h | 45 +++ .../microchip/lan966x/lan966x_switchdev.c | 137 +++++-- 7 files changed, 680 insertions(+), 98 deletions(-) create mode 100644 drivers/net/ethernet/microchip/lan966x/lan966x_lag.c -- 2.33.0