add hardware detection for dell truemobile 2300
[openwrt/svn-archive/archive.git] / package / broadcom-diag / src / diag.c
index 92d660ed385d4f88777ff0442398c0e5a36bf549..88881b95012051c50fe7c9ffa769ad0aff2cddfb 100644 (file)
@@ -70,6 +70,7 @@ enum {
        WHR_HP_G54,
        WHR2_A54G54,
        WLA2_G54L,
+       WZR_G300N,
        WZR_RS_G54,
        WZR_RS_G54HP,
        BUFFALO_UNKNOWN,
@@ -299,6 +300,17 @@ static struct platform_t __initdata platforms[] = {
                        { .name = "diag",       .gpio = 1 << 1, .polarity = REVERSE },
                },
        },
+       [WZR_G300N] = {
+               .name           = "Buffalo WZR-G300N",
+               .buttons        = {
+                       { .name = "reset",      .gpio = 1 << 4 },
+               },
+               .leds           = {
+                       { .name = "diag",       .gpio = 1 << 7, .polarity = REVERSE },
+                       { .name = "bridge",     .gpio = 1 << 1, .polarity = REVERSE },
+                       { .name = "ses",        .gpio = 1 << 6, .polarity = REVERSE },
+               },
+       },
        [WZR_RS_G54] = {
                .name           = "Buffalo WZR-RS-G54",
                .buttons        = {
@@ -381,7 +393,8 @@ static struct platform_t __initdata platforms[] = {
                        { .name = "reset",      .gpio = 1 << 0 },
                },
                .leds           = {
-                       { .name = "diag",       .gpio = 1 << 7, .polarity = REVERSE },
+                       { .name = "wlan",       .gpio = 1 << 6, .polarity = REVERSE },
+                       { .name = "power",      .gpio = 1 << 7, .polarity = REVERSE },
                },
        },
        /* Motorola */
@@ -490,6 +503,11 @@ static struct platform_t __init *platform_detect(void)
                if (!strcmp(boardnum, "10496"))
                        return &platforms[USR5461];
        } else { /* PMON based - old stuff */
+
+               /* Dell TrueMobile 2300 */
+               if (!strcmp(getvar("ModelId"),"WX-5565"))
+                       return &platforms[TM2300];
+       
                if ((simple_strtoul(getvar("GemtekPmonVer"), NULL, 0) == 9) &&
                        (simple_strtoul(getvar("et0phyaddr"), NULL, 0) == 30)) {
                        if (!strncmp(getvar("ModelId"),"WE800G", 6))
@@ -532,6 +550,8 @@ static struct platform_t __init *platform_detect(void)
                        return &platforms[WHR_G54S];
                if (!strcmp(buf, "290441dd"))
                        return &platforms[WHR2_A54G54];
+               if (!strcmp(buf, "31120"))
+                       return &platforms[WZR_G300N];
                if (!strcmp(buf, "30083"))
                        return &platforms[WZR_RS_G54];
                if (!strcmp(buf, "30103"))