31 lines
1.0 KiB
Diff
31 lines
1.0 KiB
Diff
From d3fe9bfb9c854ce3acb7db099d9c9476e4fe2ea7 Mon Sep 17 00:00:00 2001
|
|
From: Michael Walle <michael@walle.cc>
|
|
Date: Thu, 7 Nov 2019 09:39:37 +0100
|
|
Subject: [PATCH] enetc: add ioctl() support for PHY-related ops
|
|
|
|
If there is an attached PHY try to handle the requested ioctl with its
|
|
handler, which allows the userspace to access PHY registers, for
|
|
example. This will make mii-diag and similar tools work.
|
|
|
|
Signed-off-by: Michael Walle <michael@walle.cc>
|
|
Reviewed-by: Andrew Lunn <andrew@lunn.ch>
|
|
Signed-off-by: David S. Miller <davem@davemloft.net>
|
|
---
|
|
drivers/net/ethernet/freescale/enetc/enetc.c | 5 ++++-
|
|
1 file changed, 4 insertions(+), 1 deletion(-)
|
|
|
|
--- a/drivers/net/ethernet/freescale/enetc/enetc.c
|
|
+++ b/drivers/net/ethernet/freescale/enetc/enetc.c
|
|
@@ -1653,7 +1653,10 @@ int enetc_ioctl(struct net_device *ndev,
|
|
if (cmd == SIOCGHWTSTAMP)
|
|
return enetc_hwtstamp_get(ndev, rq);
|
|
#endif
|
|
- return -EINVAL;
|
|
+
|
|
+ if (!ndev->phydev)
|
|
+ return -EINVAL;
|
|
+ return phy_mii_ioctl(ndev->phydev, rq, cmd);
|
|
}
|
|
|
|
int enetc_alloc_msix(struct enetc_ndev_priv *priv)
|