summaryrefslogtreecommitdiff
path: root/package/kernel/broadcom-diag
diff options
context:
space:
mode:
authorhauke <hauke@3c298f89-4303-0410-b956-a3cf2f4a3e73>2013-08-02 15:44:04 +0000
committerhauke <hauke@3c298f89-4303-0410-b956-a3cf2f4a3e73>2013-08-02 15:44:04 +0000
commit3097ae8483897eeab398a0ba03569eac1693d9c8 (patch)
treec128cd5287e308a143c11b415f9bf106257b2f2b /package/kernel/broadcom-diag
parent52546a2a3744f03ee99cc8a8b20c04b8307699ba (diff)
broadcom-diag: add support for the ASUS RT-N12
This adds button and led info, which I determined by manually poking the gpio values. Signed-off-by: Josh Stone <cuviper@gmail.com> Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@37655 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'package/kernel/broadcom-diag')
-rw-r--r--package/kernel/broadcom-diag/src/diag.c20
1 files changed, 20 insertions, 0 deletions
diff --git a/package/kernel/broadcom-diag/src/diag.c b/package/kernel/broadcom-diag/src/diag.c
index f5c834617f..58d6755389 100644
--- a/package/kernel/broadcom-diag/src/diag.c
+++ b/package/kernel/broadcom-diag/src/diag.c
@@ -106,6 +106,7 @@ enum {
WL520GU,
ASUS_4702,
WL700GE,
+ RTN12,
RTN16,
/* Buffalo */
@@ -634,6 +635,23 @@ static struct platform_t __initdata platforms[] = {
},
.platform_init = bcm4780_init,
},
+ [RTN12] = {
+ .name = "ASUS RT-N12",
+ .buttons = {
+ { .name = "wps", .gpio = 1 << 0 },
+ { .name = "reset", .gpio = 1 << 1 },
+ // this is the router/repeater/ap switch
+ { .name = "sw1", .gpio = 1 << 4 },
+ { .name = "sw2", .gpio = 1 << 5 },
+ { .name = "sw3", .gpio = 1 << 6 },
+ },
+ .leds = {
+ { .name = "power", .gpio = 1 << 2, .polarity = REVERSE },
+ { .name = "wlan", .gpio = 1 << 7, .polarity = NORMAL },
+ // gpio3 forces WAN and LAN1-4 all on
+ //{ .name = "eth", .gpio = 1 << 3, .polarity = REVERSE },
+ },
+ },
[RTN16] = {
.name = "ASUS RT-N16",
.buttons = {
@@ -1282,6 +1300,8 @@ static struct platform_t __init *platform_detect(void)
printk(MODULE_NAME ": kernel found a \"%s\"\n", board_name);
switch(board) {
+ case BCM47XX_BOARD_ASUS_RTN12:
+ return &platforms[RTN12];
case BCM47XX_BOARD_ASUS_RTN16:
return &platforms[RTN16];
case BCM47XX_BOARD_ASUS_WL330GE: