summaryrefslogtreecommitdiffstats
path: root/target/linux/ar7/patches-2.6.32/950-cpmac_fallback_switch.patch
blob: b5ba861552d28ddd01445f29fc287a24352ddc8d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Index: linux-2.6.32.9/drivers/net/cpmac.c
===================================================================
--- linux-2.6.32.9.orig/drivers/net/cpmac.c	2010-03-06 23:12:46.000000000 +0100
+++ linux-2.6.32.9/drivers/net/cpmac.c	2010-03-06 23:13:14.000000000 +0100
@@ -1132,8 +1132,9 @@
 	}
 
 	if (phy_id == PHY_MAX_ADDR) {
-		dev_err(&pdev->dev, "no PHY present\n");
-		return -ENODEV;
+		dev_err(&pdev->dev, "no PHY present, falling back to switch mode\n");
+		strncpy(mdio_bus_id, "0", MII_BUS_ID_SIZE); /* fixed phys bus */
+		phy_id = pdev->id;
 	}
 
 	dev = alloc_etherdev_mq(sizeof(*priv), CPMAC_QUEUES);