modules/other.mk: Enable bluetooth for atheros
[openwrt.git] / package / broadcom-diag / src / diag.c
index 3f92997375ca40cc4871088c64954011d43d4c81..e1655d0b742bbfb83100ddf4c96bf079b6c7dc2d 100644 (file)
@@ -70,6 +70,7 @@ enum {
        WL500GP,
        WL500GPV2,
        WL500W,
+       WL520GC,
        WL520GU,
        ASUS_4702,
        WL700GE,
@@ -284,6 +285,17 @@ static struct platform_t __initdata platforms[] = {
                        { .name = "power",      .gpio = 1 << 1, .polarity = REVERSE },
                },
        },
+       [WL500GPV2] = {
+               .name           = "ASUS WL-500g Premium V2",
+               .buttons        = {
+                       { .name = "reset",      .gpio = 1 << 2 },
+                       { .name = "ses",        .gpio = 1 << 3 },
+               },
+               .leds           = {
+                       { .name = "power",      .gpio = 1 << 0, .polarity = REVERSE },
+                       { .name = "wlan",       .gpio = 1 << 1, .polarity = REVERSE },
+               },
+       },
        [WL500W] = {
                .name           = "ASUS WL-500W",
                .buttons        = {
@@ -294,6 +306,17 @@ static struct platform_t __initdata platforms[] = {
                        { .name = "power",      .gpio = 1 << 5, .polarity = REVERSE },
                },
        },
+       [WL520GC] = {
+               .name           = "ASUS WL-520GC",
+               .buttons        = {
+                       { .name = "reset",      .gpio = 1 << 2 },
+                       { .name = "ses",        .gpio = 1 << 3 },
+               },
+               .leds           = {
+               { .name = "power",      .gpio = 1 << 0, .polarity = REVERSE },
+                       { .name = "wlan",       .gpio = 1 << 1, .polarity = REVERSE },
+               },
+       },
        [WL520GU] = {
                .name           = "ASUS WL-520gU",
                .buttons        = {
@@ -674,6 +697,10 @@ static struct platform_t __init *platform_detect(void)
 
        /* Based on "hardware_version" */
        if (buf = nvram_get("hardware_version")) {
+               if (startswith(buf,"WL500GPV2-")) /* WL500GPV2-* */
+                       return &platforms[WL500GPV2];
+               if (startswith(buf,"WL520GC-")) /* WL520GU-* */
+                       return &platforms[WL520GC];
                if (startswith(buf,"WL520GU-")) /* WL520GU-* */
                        return &platforms[WL520GU];
        }
@@ -977,7 +1004,7 @@ static void register_leds(struct led_t *l)
                        l->state = 0;
                        set_led_extif(l);
                } else {
-                       if (l->polarity != INPUT) oe_mask != l->gpio;
+                       if (l->polarity != INPUT) oe_mask |= l->gpio;
                        mask |= l->gpio;
                        val |= (l->polarity == NORMAL)?0:l->gpio;
                }