broadcom-diag: add diag support for Linksys E1000 V1

This adds diag leds/buttons support for Linksys E1000 V1. It worked on
my router, however it may need some tweaking by people more familiar
with openwrt and c to make it fit for commiting.

Thank you hhm for this patch.


git-svn-id: svn://svn.openwrt.org/openwrt/trunk@34996 3c298f89-4303-0410-b956-a3cf2f4a3e73
master
Hauke Mehrtens 2013-01-03 02:07:11 +00:00
parent 0bcdbcb299
commit 48aaa4ce65
1 changed files with 27 additions and 0 deletions

View File

@ -63,6 +63,7 @@ enum {
WRT600NV11, WRT600NV11,
WRT610N, WRT610N,
WRT610NV2, WRT610NV2,
E1000V1,
E3000V1, E3000V1,
/* ASUS */ /* ASUS */
@ -421,6 +422,25 @@ static struct platform_t __initdata platforms[] = {
{ .name = "wlan", .gpio = 1 << 1, .polarity = NORMAL }, // Wireless LED { .name = "wlan", .gpio = 1 << 1, .polarity = NORMAL }, // Wireless LED
}, },
}, },
/* same hardware as WRT160NV3 and Cisco Valet M10V1, but different board detection, combine? */
[E1000V1] = {
.name = "Linksys E1000 V1",
.buttons = {
{ .name = "reset", .gpio = 1 << 6 },
{ .name = "wps", .gpio = 1 << 5 }, /* nvram get gpio5=wps_button */
},
.leds = {
/** turns on leds for all ethernet ports (wan too)
* this also disconnects some, or maybe all, ethernet ports
* 1: leds work normally
* 0: all lit all the time */
/* nvram get gpio3=robo_reset */
{ .name = "wlan", .gpio = 1 << 0, .polarity = NORMAL },
{ .name = "power", .gpio = 1 << 1, .polarity = NORMAL },
{ .name = "ses_blue", .gpio = 1 << 4, .polarity = REVERSE }, /* nvram get gpio4=wps_led */
{ .name = "ses_orange", .gpio = 1 << 2, .polarity = REVERSE }, /* nvram get gpio2=wps_status_led */
},
},
[E3000V1] = { [E3000V1] = {
.name = "Linksys E3000 V1", .name = "Linksys E3000 V1",
.buttons = { .buttons = {
@ -1156,6 +1176,13 @@ static struct platform_t __init *platform_detect(void)
} }
} }
if (!strcmp(boardtype, "0x04cd")) {
if (!strcmp(getvar("boot_hw_model"), "E100")) {
if (!strcmp(getvar("boot_hw_ver"), "1.0"))
return &platforms[E1000V1];
}
}
/* default to WRT54G */ /* default to WRT54G */
return &platforms[WRT54G]; return &platforms[WRT54G];
} }