Skip to content

Commit

Permalink
net: phy: move marking PHY on SFP module into SFP code
Browse files Browse the repository at this point in the history
Move marking the PHY as being on a SFP module into the SFP code between
getting the PHY device (and thus initialising the phy_device structure)
and registering the discovered device.

This means that PHY drivers can use phy_on_sfp() in their match and
get_features methods.

Signed-off-by: Russell King (Oracle) <rmk+kernel@armlinux.org.uk>
Link: https://lore.kernel.org/r/E1qRaga-001vKt-8X@rmk-PC.armlinux.org.uk
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
  • Loading branch information
Russell King (Oracle) authored and Jakub Kicinski committed Aug 5, 2023
1 parent 852c18d commit f4bf467
Show file tree
Hide file tree
Showing 2 changed files with 3 additions and 2 deletions.
2 changes: 0 additions & 2 deletions drivers/net/phy/phy_device.c
Original file line number Diff line number Diff line change
Expand Up @@ -1489,8 +1489,6 @@ int phy_attach_direct(struct net_device *dev, struct phy_device *phydev,

if (phydev->sfp_bus_attached)
dev->sfp_bus = phydev->sfp_bus;
else if (dev->sfp_bus)
phydev->is_on_sfp_module = true;
}

/* Some Ethernet drivers try to connect to a PHY device before
Expand Down
3 changes: 3 additions & 0 deletions drivers/net/phy/sfp.c
Original file line number Diff line number Diff line change
Expand Up @@ -1763,6 +1763,9 @@ static int sfp_sm_probe_phy(struct sfp *sfp, int addr, bool is_c45)
return PTR_ERR(phy);
}

/* Mark this PHY as being on a SFP module */
phy->is_on_sfp_module = true;

err = phy_device_register(phy);
if (err) {
phy_device_free(phy);
Expand Down

0 comments on commit f4bf467

Please sign in to comment.