Ran update_kernel.sh in a fresh clone without any existing toolchains. Manually rebased: bcm27xx/950-0993-xhci-quirks-add-link-TRB-quirk-for-VL805.patch layerscape/701-net-0231-enetc-Use-DT-protocol-information-to-set-up-the-port.patch Build system: x86_64 Build-tested: ipq806x/R7800 Run-tested: ipq806x/R7800 No dmesg regressions, everything functional Signed-off-by: John Audia <graysky@archlinux.us> [remove accidental whitespace edit] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
		
			
				
	
	
		
			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
 | 
						|
@@ -1656,7 +1656,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)
 |