• Florian Fainelli's avatar
    net: dsa: Add support for platform data · 71e0bbde
    Florian Fainelli authored
    Allow drivers to use the new DSA API with platform data. Most of the
    code in net/dsa/dsa2.c does not rely so much on device_nodes and can get
    the same information from platform_data instead.
    
    We purposely do not support distributed configurations with platform
    data, so drivers should be providing a pointer to a 'struct
    dsa_chip_data' structure if they wish to communicate per-port layout.
    
    Multiple CPUs port could potentially be supported and dsa_chip_data is
    extended to receive up to one reference to an upstream network device
    per port described by a dsa_chip_data structure.
    
    dsa_dev_to_net_device() increments the network device's reference count,
    so we intentionally call dev_put() to be consistent with the DT-enabled
    path, until we have a generic notifier based solution.
    Signed-off-by: default avatarFlorian Fainelli <f.fainelli@gmail.com>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    71e0bbde
dsa2.c 15.6 KB