From: Florian Fainelli Date: Sat, 6 Mar 2010 22:33:25 +0000 (+0000) Subject: fallback to "dumb switch" mode if no PHY was detected X-Git-Tag: reboot~20797 X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=ac0b6ee5596fcede180f1c0fcc013e1b73160fb8;p=openwrt%2Fstaging%2Fchunkeey.git fallback to "dumb switch" mode if no PHY was detected This will enable the second Ethernet MAC in most cases, but will allow previously non working devices to work. SVN-Revision: 20022 --- diff --git a/target/linux/ar7/patches-2.6.32/950-cpmac_fallback_switch.patch b/target/linux/ar7/patches-2.6.32/950-cpmac_fallback_switch.patch new file mode 100644 index 0000000000..b5ba861552 --- /dev/null +++ b/target/linux/ar7/patches-2.6.32/950-cpmac_fallback_switch.patch @@ -0,0 +1,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);