123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118 |
- From 60d756717d772be90d07a07cd2cc140c76da3e4a Mon Sep 17 00:00:00 2001
- From: Russell King <[email protected]>
- Date: Tue, 28 May 2019 10:57:39 +0100
- Subject: [PATCH 610/660] net: sfp: remove sfp-bus use of netdevs
- The sfp-bus code now no longer has any use for the network device
- structure, so remove its use.
- Signed-off-by: Russell King <[email protected]>
- Reviewed-by: Andrew Lunn <[email protected]>
- Signed-off-by: David S. Miller <[email protected]>
- Signed-off-by: Russell King <[email protected]>
- ---
- drivers/net/phy/phylink.c | 3 +--
- drivers/net/phy/sfp-bus.c | 10 +++-------
- include/linux/sfp.h | 6 ++----
- 3 files changed, 6 insertions(+), 13 deletions(-)
- --- a/drivers/net/phy/phylink.c
- +++ b/drivers/net/phy/phylink.c
- @@ -555,8 +555,7 @@ static int phylink_register_sfp(struct p
- return ret;
- }
-
- - pl->sfp_bus = sfp_register_upstream(ref.fwnode, pl->netdev, pl,
- - &sfp_phylink_ops);
- + pl->sfp_bus = sfp_register_upstream(ref.fwnode, pl, &sfp_phylink_ops);
- if (!pl->sfp_bus)
- return -ENOMEM;
-
- --- a/drivers/net/phy/sfp-bus.c
- +++ b/drivers/net/phy/sfp-bus.c
- @@ -23,7 +23,6 @@ struct sfp_bus {
-
- const struct sfp_upstream_ops *upstream_ops;
- void *upstream;
- - struct net_device *netdev;
- struct phy_device *phydev;
-
- bool registered;
- @@ -442,13 +441,11 @@ static void sfp_upstream_clear(struct sf
- {
- bus->upstream_ops = NULL;
- bus->upstream = NULL;
- - bus->netdev = NULL;
- }
-
- /**
- * sfp_register_upstream() - Register the neighbouring device
- * @fwnode: firmware node for the SFP bus
- - * @ndev: network device associated with the interface
- * @upstream: the upstream private data
- * @ops: the upstream's &struct sfp_upstream_ops
- *
- @@ -459,7 +456,7 @@ static void sfp_upstream_clear(struct sf
- * On error, returns %NULL.
- */
- struct sfp_bus *sfp_register_upstream(struct fwnode_handle *fwnode,
- - struct net_device *ndev, void *upstream,
- + void *upstream,
- const struct sfp_upstream_ops *ops)
- {
- struct sfp_bus *bus = sfp_bus_get(fwnode);
- @@ -469,7 +466,6 @@ struct sfp_bus *sfp_register_upstream(st
- rtnl_lock();
- bus->upstream_ops = ops;
- bus->upstream = upstream;
- - bus->netdev = ndev;
-
- if (bus->sfp) {
- ret = sfp_register_bus(bus);
- @@ -591,7 +587,7 @@ struct sfp_bus *sfp_register_socket(stru
- bus->sfp = sfp;
- bus->socket_ops = ops;
-
- - if (bus->netdev) {
- + if (bus->upstream_ops) {
- ret = sfp_register_bus(bus);
- if (ret)
- sfp_socket_clear(bus);
- @@ -611,7 +607,7 @@ EXPORT_SYMBOL_GPL(sfp_register_socket);
- void sfp_unregister_socket(struct sfp_bus *bus)
- {
- rtnl_lock();
- - if (bus->netdev)
- + if (bus->upstream_ops)
- sfp_unregister_bus(bus);
- sfp_socket_clear(bus);
- rtnl_unlock();
- --- a/include/linux/sfp.h
- +++ b/include/linux/sfp.h
- @@ -464,7 +464,6 @@ enum {
- struct fwnode_handle;
- struct ethtool_eeprom;
- struct ethtool_modinfo;
- -struct net_device;
- struct sfp_bus;
-
- /**
- @@ -510,7 +509,7 @@ int sfp_get_module_eeprom(struct sfp_bus
- void sfp_upstream_start(struct sfp_bus *bus);
- void sfp_upstream_stop(struct sfp_bus *bus);
- struct sfp_bus *sfp_register_upstream(struct fwnode_handle *fwnode,
- - struct net_device *ndev, void *upstream,
- + void *upstream,
- const struct sfp_upstream_ops *ops);
- void sfp_unregister_upstream(struct sfp_bus *bus);
- #else
- @@ -555,8 +554,7 @@ static inline void sfp_upstream_stop(str
- }
-
- static inline struct sfp_bus *sfp_register_upstream(
- - struct fwnode_handle *fwnode,
- - struct net_device *ndev, void *upstream,
- + struct fwnode_handle *fwnode, void *upstream,
- const struct sfp_upstream_ops *ops)
- {
- return (struct sfp_bus *)-1;
|