The introduction of the explicit switchdev bridge port offloading API has introduced dependency regressions between switchdev drivers and the bridge, with some drivers where switchdev support was optional before being now compiled as a module when the bridge is a module, or worse. This patch makes the switchdev bridge port offload/unoffload events visible on the blocking notifier call chain, so that the bridge can indirectly do something when those events happen, without the driver explicitly calling a symbol exported by the bridge driver. Vladimir Oltean (2): net: make switchdev_bridge_port_{,unoffload} loosely coupled with the bridge Revert "net: build all switchdev drivers as modules when the bridge is a module" drivers/net/ethernet/microchip/sparx5/Kconfig | 1 - drivers/net/ethernet/ti/Kconfig | 2 - drivers/net/ethernet/ti/am65-cpsw-nuss.c | 2 +- drivers/net/ethernet/ti/cpsw_new.c | 2 +- include/linux/if_bridge.h | 35 ------------- include/net/switchdev.h | 46 +++++++++++++++++ net/bridge/br.c | 51 ++++++++++++++++++- net/bridge/br_private.h | 30 +++++++++++ net/bridge/br_switchdev.c | 36 ++++--------- net/switchdev/switchdev.c | 48 +++++++++++++++++ 10 files changed, 185 insertions(+), 68 deletions(-) -- 2.25.1