|
|
|
@ -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); |
|
|
|
|