diff options
author | juhosg <juhosg@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2009-07-09 19:46:41 +0000 |
---|---|---|
committer | juhosg <juhosg@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2009-07-09 19:46:41 +0000 |
commit | d681740252b9365dc40580e11d090612d7cc5c89 (patch) | |
tree | 22cc1ddeb54e264d7ce1d3cef4851a9741e5ffa1 | |
parent | ff39a6c6f5cae8bb4750369898f44e1a806f41f8 (diff) |
[ar71xx] add board setup code for the RB-450G/RB-433UAH boards
* based on a patch from http://forum.openwrt.org/viewtopic.php?pid=91127#p91127
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@16754 3c298f89-4303-0410-b956-a3cf2f4a3e73
3 files changed, 30 insertions, 2 deletions
diff --git a/target/linux/ar71xx/files/arch/mips/ar71xx/mach-rb-4xx.c b/target/linux/ar71xx/files/arch/mips/ar71xx/mach-rb-4xx.c index bed6799b7..647a9320d 100644 --- a/target/linux/ar71xx/files/arch/mips/ar71xx/mach-rb-4xx.c +++ b/target/linux/ar71xx/files/arch/mips/ar71xx/mach-rb-4xx.c @@ -206,7 +206,15 @@ static void __init rb433_setup(void) MIPS_MACHINE(AR71XX_MACH_RB_433, "MikroTik RouterBOARD 433/AH", rb433_setup); -static void __init rb450_setup(void) +static void __init rb433u_setup(void) +{ + rb433_setup(); + ar71xx_add_device_usb(); +} + +MIPS_MACHINE(AR71XX_MACH_RB_433U, "MikroTik RouterBOARD 433UAH", rb433u_setup); + +static void __init rb450_generic_setup(int gige) { rb4xx_generic_setup(); rb4xx_add_device_spi(); @@ -215,7 +223,7 @@ static void __init rb450_setup(void) ar71xx_eth0_data.phy_if_mode = PHY_INTERFACE_MODE_MII; ar71xx_eth0_data.phy_mask = 0x0000000f; - ar71xx_eth0_data.speed = SPEED_100; + ar71xx_eth0_data.speed = (gige) ? SPEED_1000 : SPEED_100; ar71xx_eth0_data.duplex = DUPLEX_FULL; ar71xx_eth1_data.phy_if_mode = PHY_INTERFACE_MODE_RMII; @@ -225,8 +233,20 @@ static void __init rb450_setup(void) ar71xx_add_device_eth(0); } +static void __init rb450_setup(void) +{ + rb450_generic_setup(0); +} + MIPS_MACHINE(AR71XX_MACH_RB_450, "MikroTik RouterBOARD 450", rb450_setup); +static void __init rb450g_setup(void) +{ + rb450_generic_setup(1); +} + +MIPS_MACHINE(AR71XX_MACH_RB_450G, "MikroTik RouterBOARD 450G", rb450g_setup); + static void __init rb493_setup(void) { rb4xx_generic_setup(); diff --git a/target/linux/ar71xx/files/arch/mips/ar71xx/prom.c b/target/linux/ar71xx/files/arch/mips/ar71xx/prom.c index 58db51a01..eee55edff 100644 --- a/target/linux/ar71xx/files/arch/mips/ar71xx/prom.c +++ b/target/linux/ar71xx/files/arch/mips/ar71xx/prom.c @@ -39,9 +39,15 @@ static struct board_rec boards[] __initdata = { .name = "433", .mach_type = AR71XX_MACH_RB_433, }, { + .name = "433U", + .mach_type = AR71XX_MACH_RB_433U, + }, { .name = "450", .mach_type = AR71XX_MACH_RB_450, }, { + .name = "450G", + .mach_type = AR71XX_MACH_RB_450G, + }, { .name = "493", .mach_type = AR71XX_MACH_RB_493, }, { diff --git a/target/linux/ar71xx/files/arch/mips/include/asm/mach-ar71xx/ar71xx.h b/target/linux/ar71xx/files/arch/mips/include/asm/mach-ar71xx/ar71xx.h index 2a16257d7..1ba20fa38 100644 --- a/target/linux/ar71xx/files/arch/mips/include/asm/mach-ar71xx/ar71xx.h +++ b/target/linux/ar71xx/files/arch/mips/include/asm/mach-ar71xx/ar71xx.h @@ -124,7 +124,9 @@ enum ar71xx_mach_type { AR71XX_MACH_AW_NR580, /* AzureWave AW-NR580 */ AR71XX_MACH_RB_411, /* MikroTik RouterBOARD 411/411A/411AH */ AR71XX_MACH_RB_433, /* MikroTik RouterBOARD 433/433AH */ + AR71XX_MACH_RB_433U, /* MikroTik RouterBOARD 433UAH */ AR71XX_MACH_RB_450, /* MikroTik RouterBOARD 450 */ + AR71XX_MACH_RB_450G, /* MikroTik RouterBOARD 450G */ AR71XX_MACH_RB_493, /* Mikrotik RouterBOARD 493/493AH */ AR71XX_MACH_PB42, /* Atheros PB42 */ AR71XX_MACH_PB44, /* Atheros PB44 */ |