Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1584700
| From | Michael Walle <michael@walle.cc> |
|---|---|
| Newsgroups | linux.kernel |
| Subject | [PATCH] dpaa_eth: implement ioctl() for PHY-related ops |
| Date | 2017-02-20 17:10 +0100 |
| Message-ID | <tcYHf-6QY-1@gated-at.bofh.it> (permalink) |
| Organization | linux.* mail to news gateway |
This commit adds the ndo_do_ioctl() callback 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>
---
drivers/net/ethernet/freescale/dpaa/dpaa_eth.c | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/drivers/net/ethernet/freescale/dpaa/dpaa_eth.c b/drivers/net/ethernet/freescale/dpaa/dpaa_eth.c
index 726b569..b0f5990 100644
--- a/drivers/net/ethernet/freescale/dpaa/dpaa_eth.c
+++ b/drivers/net/ethernet/freescale/dpaa/dpaa_eth.c
@@ -2335,6 +2335,13 @@ static int dpaa_eth_stop(struct net_device *net_dev)
return err;
}
+static int dpaa_ioctl(struct net_device *net_dev, struct ifreq *rq, int cmd)
+{
+ if (!net_dev->phydev)
+ return -EINVAL;
+ return phy_mii_ioctl(net_dev->phydev, rq, cmd);
+}
+
static const struct net_device_ops dpaa_ops = {
.ndo_open = dpaa_open,
.ndo_start_xmit = dpaa_start_xmit,
@@ -2344,6 +2351,7 @@ static const struct net_device_ops dpaa_ops = {
.ndo_set_mac_address = dpaa_set_mac_address,
.ndo_validate_addr = eth_validate_addr,
.ndo_set_rx_mode = dpaa_set_rx_mode,
+ .ndo_do_ioctl = dpaa_ioctl,
};
static int dpaa_napi_add(struct net_device *net_dev)
--
2.1.4
Back to linux.kernel | Previous | Next — Next in thread | Find similar | Unroll thread
[PATCH] dpaa_eth: implement ioctl() for PHY-related ops Michael Walle <michael@walle.cc> - 2017-02-20 17:10 +0100 Re: [PATCH] dpaa_eth: implement ioctl() for PHY-related ops David Miller <davem@davemloft.net> - 2017-02-21 04:30 +0100
csiph-web