lkml.org 
[lkml]   [2023]   [Dec]   [21]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH net-next v5 04/13] net: sfp: Add helper to return the SFP bus name
    Date
    Knowing the bus name is helpful when we want to expose the link topology
    to userspace, add a helper to return the SFP bus name.

    Signed-off-by: Maxime Chevallier <maxime.chevallier@bootlin.com>
    Reviewed-by: Andrew Lunn <andrew@lunn.ch>
    ---
    V5: - Added Andrew's R-b
    V4: - No changes
    V3: - Added RTNL assert
    - Made the stub inline
    V2: New patch

    drivers/net/phy/sfp-bus.c | 11 +++++++++++
    include/linux/sfp.h | 6 ++++++
    2 files changed, 17 insertions(+)

    diff --git a/drivers/net/phy/sfp-bus.c b/drivers/net/phy/sfp-bus.c
    index 3a86c41e1235..fb1c102714b5 100644
    --- a/drivers/net/phy/sfp-bus.c
    +++ b/drivers/net/phy/sfp-bus.c
    @@ -859,3 +859,14 @@ void sfp_unregister_socket(struct sfp_bus *bus)
    sfp_bus_put(bus);
    }
    EXPORT_SYMBOL_GPL(sfp_unregister_socket);
    +
    +const char *sfp_get_name(struct sfp_bus *bus)
    +{
    + ASSERT_RTNL();
    +
    + if (bus->sfp_dev)
    + return dev_name(bus->sfp_dev);
    +
    + return NULL;
    +}
    +EXPORT_SYMBOL_GPL(sfp_get_name);
    diff --git a/include/linux/sfp.h b/include/linux/sfp.h
    index 0573e53b0c11..55c0ab17c9e2 100644
    --- a/include/linux/sfp.h
    +++ b/include/linux/sfp.h
    @@ -570,6 +570,7 @@ struct sfp_bus *sfp_bus_find_fwnode(const struct fwnode_handle *fwnode);
    int sfp_bus_add_upstream(struct sfp_bus *bus, void *upstream,
    const struct sfp_upstream_ops *ops);
    void sfp_bus_del_upstream(struct sfp_bus *bus);
    +const char *sfp_get_name(struct sfp_bus *bus);
    #else
    static inline int sfp_parse_port(struct sfp_bus *bus,
    const struct sfp_eeprom_id *id,
    @@ -648,6 +649,11 @@ static inline int sfp_bus_add_upstream(struct sfp_bus *bus, void *upstream,
    static inline void sfp_bus_del_upstream(struct sfp_bus *bus)
    {
    }
    +
    +static inline const char *sfp_get_name(struct sfp_bus *bus)
    +{
    + return NULL;
    +}
    #endif

    #endif
    --
    2.43.0

    \
     
     \ /
      Last update: 2023-12-21 19:03    [W:6.167 / U:0.004 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site