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.

SVN-Revision: 34996
This commit is contained in:
Hauke Mehrtens 2013-01-03 02:07:11 +00:00
parent 4443997fd8
commit ac383f95a5

View File

@ -63,6 +63,7 @@ enum {
WRT600NV11,
WRT610N,
WRT610NV2,
E1000V1,
E3000V1,
/* ASUS */
@ -421,6 +422,25 @@ static struct platform_t __initdata platforms[] = {
{ .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] = {
.name = "Linksys E3000 V1",
.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 */
return &platforms[WRT54G];
}