diff options
author | hauke <hauke@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2013-09-13 19:24:08 +0000 |
---|---|---|
committer | hauke <hauke@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2013-09-13 19:24:08 +0000 |
commit | 24e993bddce396c09078f7da55837b66275c0d89 (patch) | |
tree | 3b4ccf3fc1a87a1b229ddf77bf57f7ce976e30da /package/kernel/broadcom-diag/src/diag.c | |
parent | 97fed1076459647f9543f638eb119fffef3bc50e (diff) |
brcm47xx: board detection, GPIO for Linksys E1000 V2.1
This patch adds board detection for the Linksys E1000 V2.1 router, as well
as GPIO support for same.
This fixes bug #14135. Currently, wired networking isn't working on the
router, and I haven't tried the wireless, but with this patch, OpenWRT
successfully boots, and all the LEDs and buttons work properly.
Signed-off-by: Zachary Catlin <zcatlin@indiana.edu>
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@37977 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'package/kernel/broadcom-diag/src/diag.c')
-rw-r--r-- | package/kernel/broadcom-diag/src/diag.c | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/package/kernel/broadcom-diag/src/diag.c b/package/kernel/broadcom-diag/src/diag.c index f3f70504de..3f58718ec9 100644 --- a/package/kernel/broadcom-diag/src/diag.c +++ b/package/kernel/broadcom-diag/src/diag.c @@ -89,6 +89,7 @@ enum { WRT610N, WRT610NV2, E1000V1, + E1000V21, E3000V1, E3200V1, E4200V1, @@ -471,6 +472,19 @@ static struct platform_t __initdata platforms[] = { { .name = "ses_orange", .gpio = 1 << 2, .polarity = REVERSE }, /* nvram get gpio2=wps_status_led */ }, }, + [E1000V21] = { + .name = "Linksys E1000 V2.1", + .buttons = { + { .name = "reset", .gpio = 1 << 10 }, /* nvram get reset_gpio=10 */ + { .name = "wps", .gpio = 1 << 9 }, /* nvram get gpio9=wps_button */ + }, + .leds = { + { .name = "power", .gpio = 1 << 6, .polarity = REVERSE }, + { .name = "wlan", .gpio = 1 << 5, .polarity = NORMAL }, + { .name = "ses_blue", .gpio = 1 << 8, .polarity = NORMAL }, /* nvram get gpio8=wps_led */ + { .name = "ses_orange", .gpio = 1 << 7, .polarity = NORMAL }, /* nvram get gpio7=wps_status_led */ + }, + }, [E3000V1] = { .name = "Linksys E3000 V1", .buttons = { @@ -1350,6 +1364,8 @@ static struct platform_t __init *platform_detect(void) return &platforms[DIR330]; case BCM47XX_BOARD_LINKSYS_E1000V1: return &platforms[E1000V1]; + case BCM47XX_BOARD_LINKSYS_E1000V21: + return &platforms[E1000V21]; case BCM47XX_BOARD_LINKSYS_E3000V1: return &platforms[E3000V1]; case BCM47XX_BOARD_LINKSYS_E3200V1: |