summaryrefslogtreecommitdiffstats
path: root/target/linux/au1000/patches-2.6.30/004-state_led_phy_fix.patch
blob: cfaea00e2802910041bde2e93a5cf41d979d1661 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
--- a/drivers/net/au1000_eth.c
+++ b/drivers/net/au1000_eth.c
@@ -166,6 +166,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
@@ -483,6 +492,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, dev_name(&phydev->dev), phydev->irq);