[PATCH net-next v2 1/2] net: phy: Use genphy_loopback() by default

From: Florian Fainelli
Date: Thu Oct 17 2019 - 17:45:14 EST


The standard way of putting a PHY device into loopback is most often
suitable for testing. This is going to be necessary in a subsequent
patch that adds RGII debugging capability using the loopback feature.

Clause 45 PHYs are not supported through a generic method yet.

Signed-off-by: Florian Fainelli <f.fainelli@xxxxxxxxx>
---
drivers/net/phy/phy_device.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/drivers/net/phy/phy_device.c b/drivers/net/phy/phy_device.c
index 9d2bbb13293e..7fa728c44632 100644
--- a/drivers/net/phy/phy_device.c
+++ b/drivers/net/phy/phy_device.c
@@ -1513,8 +1513,10 @@ int phy_loopback(struct phy_device *phydev, bool enable)

if (phydev->drv && phydrv->set_loopback)
ret = phydrv->set_loopback(phydev, enable);
- else
+ else if (phydev->is_c45)
ret = -EOPNOTSUPP;
+ else
+ ret = genphy_loopback(phydev, enable);

if (ret)
goto out;
--
2.17.1