brcm47xx: fix switch detection with kernel 3.14
authorHauke Mehrtens <hauke@hauke-m.de>
Thu, 17 Jul 2014 20:34:18 +0000 (20:34 +0000)
committerHauke Mehrtens <hauke@hauke-m.de>
Thu, 17 Jul 2014 20:34:18 +0000 (20:34 +0000)
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
SVN-Revision: 41706

target/linux/brcm47xx/patches-3.14/960-fix-phy-device.patch [new file with mode: 0644]

diff --git a/target/linux/brcm47xx/patches-3.14/960-fix-phy-device.patch b/target/linux/brcm47xx/patches-3.14/960-fix-phy-device.patch
new file mode 100644 (file)
index 0000000..f8d9239
--- /dev/null
@@ -0,0 +1,22 @@
+This fixes a problem introduced in this commit:
+
+commit 87aa9f9c61ad56d505641681812e92ad976f8608
+Author: Florian Fainelli <f.fainelli@gmail.com>
+Date:   Fri Dec 6 13:01:34 2013 -0800
+
+    net: phy: consolidate PHY reset in phy_init_hw()
+
+The fixups are not executed before the switch gets registered but after 
+the kernel searches for the right switch driver. When the search is 
+executed it searches for the phy_id 0x00, because it was not fixed.
+
+--- a/drivers/net/phy/phy_device.c
++++ b/drivers/net/phy/phy_device.c
+@@ -353,6 +353,7 @@ int phy_device_register(struct phy_devic
+       phydev->bus->phy_map[phydev->addr] = phydev;
+       /* Run all of the fixups for this PHY */
++      phy_scan_fixups(phydev);
+       err = phy_init_hw(phydev);
+       if (err) {
+               pr_err("PHY %d failed to initialize\n", phydev->addr);