summaryrefslogtreecommitdiff
path: root/target/linux/ar71xx
diff options
context:
space:
mode:
authornbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>2010-09-28 22:55:14 +0000
committernbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>2010-09-28 22:55:14 +0000
commit05c0f03a6cb47adaa23582b1a5488cc4e9706888 (patch)
tree0f147ad79ea6ebb9c9c30b3479c365dda02d9487 /target/linux/ar71xx
parentbdc88cc893f6881aba095e9eb36ef4a070fd8baf (diff)
AP96: Fix LAN/WAN setup
LAN (eth0) is behind a switch and the fixed speed/duplex was supposed to be for it, not WAN (eth1). Signed-off-by: Jouni Malinen <jouni.malinen@atheros.com> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@23147 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'target/linux/ar71xx')
-rw-r--r--target/linux/ar71xx/files/arch/mips/ar71xx/mach-ap96.c12
1 files changed, 8 insertions, 4 deletions
diff --git a/target/linux/ar71xx/files/arch/mips/ar71xx/mach-ap96.c b/target/linux/ar71xx/files/arch/mips/ar71xx/mach-ap96.c
index 6a7b6ff1cb..c5b2d3abd8 100644
--- a/target/linux/ar71xx/files/arch/mips/ar71xx/mach-ap96.c
+++ b/target/linux/ar71xx/files/arch/mips/ar71xx/mach-ap96.c
@@ -134,22 +134,26 @@ static struct gpio_button ap96_gpio_buttons[] __initdata = {
}
};
+#define AP96_WAN_PHYMASK 0x10
+#define AP96_LAN_PHYMASK 0x0f
+
static void __init ap96_setup(void)
{
u8 *art = (u8 *) KSEG1ADDR(0x1fff0000);
- ar71xx_add_device_mdio(0xfffffffe);
+ ar71xx_add_device_mdio(~(AP96_WAN_PHYMASK | AP96_LAN_PHYMASK));
ar71xx_init_mac(ar71xx_eth0_data.mac_addr, art, 0);
ar71xx_eth0_data.phy_if_mode = PHY_INTERFACE_MODE_RGMII;
- ar71xx_eth0_data.phy_mask = 0x1;
+ ar71xx_eth0_data.phy_mask = AP96_LAN_PHYMASK;
+ ar71xx_eth0_data.speed = SPEED_1000;
+ ar71xx_eth0_data.duplex = DUPLEX_FULL;
ar71xx_add_device_eth(0);
ar71xx_init_mac(ar71xx_eth1_data.mac_addr, art, 1);
ar71xx_eth1_data.phy_if_mode = PHY_INTERFACE_MODE_RGMII;
- ar71xx_eth1_data.speed = SPEED_1000;
- ar71xx_eth1_data.duplex = DUPLEX_FULL;
+ ar71xx_eth1_data.phy_mask = AP96_WAN_PHYMASK;
ar71xx_eth1_pll_data.pll_1000 = 0x1f000000;