[ar71xx] add board setup code for the RB-450G/RB-433UAH boards
authorGabor Juhos <juhosg@openwrt.org>
Thu, 9 Jul 2009 19:46:41 +0000 (19:46 +0000)
committerGabor Juhos <juhosg@openwrt.org>
Thu, 9 Jul 2009 19:46:41 +0000 (19:46 +0000)
  * based on a patch from http://forum.openwrt.org/viewtopic.php?pid=91127#p91127

SVN-Revision: 16754

target/linux/ar71xx/files/arch/mips/ar71xx/mach-rb-4xx.c
target/linux/ar71xx/files/arch/mips/ar71xx/prom.c
target/linux/ar71xx/files/arch/mips/include/asm/mach-ar71xx/ar71xx.h

index bed6799b7bd7f2770dc38d0e58521ff70259ee21..647a9320dffd7896c6805b801803b803081c410d 100644 (file)
@@ -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();
index 58db51a01cf7b9de7e5f65bdf807477b8447901b..eee55edffb6d4a8d2897a14a143f4200e24cb0f7 100644 (file)
@@ -38,9 +38,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,
index 2a16257d782724f5ba4cc3ab8c905fcfe1067306..1ba20fa385b7991eae0fc4a553f448bf9d64f41d 100644 (file)
@@ -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 */