• Vladimir Oltean's avatar
    net: make switchdev_bridge_port_{,unoffload} loosely coupled with the bridge · 957e2235
    Vladimir Oltean authored
    With the introduction of explicit offloading API in switchdev in commit
    2f5dc00f ("net: bridge: switchdev: let drivers inform which bridge
    ports are offloaded"), we started having Ethernet switch drivers calling
    directly into a function exported by net/bridge/br_switchdev.c, which is
    a function exported by the bridge driver.
    
    This means that drivers that did not have an explicit dependency on the
    bridge before, like cpsw and am65-cpsw, now do - otherwise it is not
    possible to call a symbol exported by a driver that can be built as
    module unless you are a module too.
    
    There was an attempt to solve the dependency issue in the form of commit
    b0e81817 ("net: build all switchdev drivers as modules when the
    bridge is a module"). Grygorii Strashko, however, says about it:
    
    | In my opinion, the problem is a bit bigger here than just fixing the
    | build :(
    |
    | In case, of ^cpsw the switchdev mode is kinda optional and in many
    | cas...
    957e2235
am65-cpsw-nuss.c 74.7 KB