diff options
author | juhosg <juhosg@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2012-08-01 12:24:57 +0000 |
---|---|---|
committer | juhosg <juhosg@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2012-08-01 12:24:57 +0000 |
commit | 62dfbdafd5705e70cbbbd6a2dd061ac48b779d16 (patch) | |
tree | 71bb4566aaee85c1aae94fe61a2b8b6833ce48e0 /target/linux/ar71xx/files/arch/mips | |
parent | 170106750912960bc9ea44a2976fb5cb2e66faa0 (diff) |
ar71xx: ew-dorin: added router firmware generation
[juhosg: remove dead code]
Signed-off-by: embedded wireless GmbH <info@embeddedwireless.de>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@32934 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'target/linux/ar71xx/files/arch/mips')
-rw-r--r-- | target/linux/ar71xx/files/arch/mips/ath79/mach-ew-dorin.c | 40 |
1 files changed, 38 insertions, 2 deletions
diff --git a/target/linux/ar71xx/files/arch/mips/ath79/mach-ew-dorin.c b/target/linux/ar71xx/files/arch/mips/ath79/mach-ew-dorin.c index dc052c486..47ed51b5d 100644 --- a/target/linux/ar71xx/files/arch/mips/ath79/mach-ew-dorin.c +++ b/target/linux/ar71xx/files/arch/mips/ath79/mach-ew-dorin.c @@ -85,6 +85,42 @@ static void __init ew_dorin_setup(void) mac[3] |= 0x40; ath79_init_mac(ath79_eth1_data.mac_addr, mac, 0); + ath79_register_mdio(0, 0x0); + + /* LAN ports */ + ath79_register_eth(1); + + ath79_register_leds_gpio(-1, ARRAY_SIZE(dorin_leds_gpio), + dorin_leds_gpio); + ath79_register_gpio_keys_polled(-1, DORIN_KEYS_POLL_INTERVAL, + ARRAY_SIZE(dorin_gpio_keys), + dorin_gpio_keys); +} + +MIPS_MACHINE(ATH79_MACH_EW_DORIN, "EW-DORIN", "EmbWir-Dorin", + ew_dorin_setup); + + +static void __init ew_dorin_router_setup(void) +{ + u8 *art = (u8 *) KSEG1ADDR(0x1fff0000); + static u8 mac[6]; + + ath79_register_m25p80(NULL); + + ath79_register_usb(); + + if (ar93xx_wmac_read_mac_address(mac)) { + ath79_register_wmac(NULL, NULL); + } else { + ath79_register_wmac(art + DORIN_CALDATA_OFFSET, + art + DORIN_WMAC_MAC_OFFSET); + memcpy(mac, art + DORIN_WMAC_MAC_OFFSET, sizeof(mac)); + } + + mac[3] |= 0x40; + ath79_init_mac(ath79_eth1_data.mac_addr, mac, 0); + mac[3] &= 0x3F; ath79_init_mac(ath79_eth0_data.mac_addr, mac, 0); ath79_setup_ar933x_phy4_switch(true, true); @@ -104,5 +140,5 @@ static void __init ew_dorin_setup(void) dorin_gpio_keys); } -MIPS_MACHINE(ATH79_MACH_EW_DORIN, "EW-DORIN", "EmbWir-Dorin", - ew_dorin_setup); +MIPS_MACHINE(ATH79_MACH_EW_DORIN_ROUTER, "EW-DORIN-ROUTER", + "EmbWir-Dorin-Router", ew_dorin_router_setup); |