aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/au1000/patches-2.6.30/004-state_led_phy_fix.patch
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/au1000/patches-2.6.30/004-state_led_phy_fix.patch')
-rw-r--r--target/linux/au1000/patches-2.6.30/004-state_led_phy_fix.patch31
1 files changed, 31 insertions, 0 deletions
diff --git a/target/linux/au1000/patches-2.6.30/004-state_led_phy_fix.patch b/target/linux/au1000/patches-2.6.30/004-state_led_phy_fix.patch
new file mode 100644
index 0000000000..e681970c5b
--- /dev/null
+++ b/target/linux/au1000/patches-2.6.30/004-state_led_phy_fix.patch
@@ -0,0 +1,31 @@
+--- a/drivers/net/au1000_eth.c
++++ b/drivers/net/au1000_eth.c
+@@ -184,6 +184,15 @@ struct au1000_private *au_macs[NUM_ETH_I
+ # undef AU1XXX_PHY1_IRQ
+ #endif
+
++#if defined(CONFIG_MIPS_MTX1)
++/*
++ * 4G MeshCube (MTX-1) board
++ * PHY is at address 31 on MAC0
++ * autodetect fails if not searched for highest address !
++ */
++# define AU1XXX_PHY_SEARCH_HIGHEST_ADDR
++#endif
++
+ #if defined(AU1XXX_PHY0_BUSID) && (AU1XXX_PHY0_BUSID > 0)
+ # error MAC0-associated PHY attached 2nd MACs MII bus not supported yet
+ #endif
+@@ -380,6 +389,12 @@ static int mii_probe (struct net_device
+ aup->old_duplex = -1;
+ aup->phy_dev = phydev;
+
++#ifdef CONFIG_MIPS_MTX1
++ /* set up ethernet jack LEDs on the 4G MeshCube (MTX-1 board) */
++ printk(KERN_INFO "MTX-1 PHY: updating LED settings\n");
++ phy_write(phydev, 0x11, 0xff80);
++#endif
++
+ printk(KERN_INFO "%s: attached PHY driver [%s] "
+ "(mii_bus:phy_addr=%s, irq=%d)\n",
+ dev->name, phydev->drv->name, phydev->dev.bus_id, phydev->irq);