mirror of https://github.com/hak5/openwrt.git
broadcom-diag: remove devices already supported by the kernel
This driver will soon be removed completely and the scripts are already using the new API. This also removes bcm57xx_init() which restarts the switch and is now done by b53. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> SVN-Revision: 39257lede-17.01
parent
f912b47931
commit
7987b3aa4d
|
@ -75,55 +75,18 @@ enum {
|
|||
WAP54GV3,
|
||||
WRT54GV1,
|
||||
WRT54G,
|
||||
WRTSL54GS,
|
||||
WRT54G3G,
|
||||
WRT54G3GV2_VF,
|
||||
WRT150NV1,
|
||||
WRT150NV11,
|
||||
WRT160NV1,
|
||||
WRT160NV3,
|
||||
WRT300NV11,
|
||||
WRT310NV1,
|
||||
WRT350N,
|
||||
WRT600N,
|
||||
WRT600NV11,
|
||||
WRT610N,
|
||||
WRT610NV2,
|
||||
E1000V1,
|
||||
E1000V21,
|
||||
E2000V1,
|
||||
E3000V1,
|
||||
E3200V1,
|
||||
E4200V1,
|
||||
|
||||
/* ASUS */
|
||||
WLHDD,
|
||||
WL300G,
|
||||
WL320GE,
|
||||
WL330GE,
|
||||
WL500G,
|
||||
WL500GD,
|
||||
WL500GP,
|
||||
WL500GPV2,
|
||||
WL500W,
|
||||
WL520GC,
|
||||
WL520GU,
|
||||
ASUS_4702,
|
||||
WL700GE,
|
||||
RTN12,
|
||||
RTN16,
|
||||
RTN66U,
|
||||
|
||||
/* Buffalo */
|
||||
WBR2_G54,
|
||||
WHR_G54S,
|
||||
WHR_HP_G54,
|
||||
WHR_G125,
|
||||
WHR2_A54G54,
|
||||
WLA2_G54L,
|
||||
WZR_G300N,
|
||||
WZR_RS_G54,
|
||||
WZR_RS_G54HP,
|
||||
BUFFALO_UNKNOWN_4710,
|
||||
|
||||
/* Siemens */
|
||||
|
@ -134,23 +97,14 @@ enum {
|
|||
USR5461,
|
||||
|
||||
/* Dell */
|
||||
TM2300,
|
||||
TM2300V2,
|
||||
|
||||
/* Motorola */
|
||||
WE800G,
|
||||
WR850GV1,
|
||||
WR850GV2V3,
|
||||
WR850GP,
|
||||
|
||||
/* Belkin */
|
||||
BELKIN_F7D4301,
|
||||
|
||||
/* Netgear */
|
||||
WGT634U,
|
||||
WNR834BV1,
|
||||
WNR834BV2,
|
||||
WNDR3400V1,
|
||||
WNDR3700V3,
|
||||
|
||||
/* Trendware */
|
||||
|
@ -160,9 +114,7 @@ enum {
|
|||
STI_NAS,
|
||||
|
||||
/* D-Link */
|
||||
DIR130,
|
||||
DIR320,
|
||||
DIR330,
|
||||
DWL3150,
|
||||
|
||||
/* Sitecom */
|
||||
|
@ -184,7 +136,6 @@ enum {
|
|||
PS1208MFG,
|
||||
|
||||
/* Huawei */
|
||||
HUAWEI_E970,
|
||||
};
|
||||
|
||||
static void __init bcm4780_init(void) {
|
||||
|
@ -216,15 +167,6 @@ static void __init NetCenter_init(void) {
|
|||
bcm4780_init();
|
||||
}
|
||||
|
||||
static void __init bcm57xx_init(void) {
|
||||
int pin = 1 << 2;
|
||||
|
||||
/* FIXME: switch comes up, but port mappings/vlans not right */
|
||||
bcm47xx_gpio_outen(pin, pin);
|
||||
bcm47xx_gpio_control(pin, 0);
|
||||
bcm47xx_gpio_out(pin, pin);
|
||||
}
|
||||
|
||||
static struct platform_t __initdata platforms[] = {
|
||||
/* Linksys */
|
||||
[WAP54GV1] = {
|
||||
|
@ -283,19 +225,6 @@ static struct platform_t __initdata platforms[] = {
|
|||
{ .name = "wlan", .gpio = 1 << 0, .polarity = REVERSE },
|
||||
},
|
||||
},
|
||||
[WRTSL54GS] = {
|
||||
.name = "Linksys WRTSL54GS",
|
||||
.buttons = {
|
||||
{ .name = "reset", .gpio = 1 << 6 },
|
||||
{ .name = "ses", .gpio = 1 << 4 },
|
||||
},
|
||||
.leds = {
|
||||
{ .name = "power", .gpio = 1 << 1, .polarity = NORMAL },
|
||||
{ .name = "dmz", .gpio = 1 << 0, .polarity = REVERSE },
|
||||
{ .name = "ses_white", .gpio = 1 << 5, .polarity = REVERSE },
|
||||
{ .name = "ses_orange", .gpio = 1 << 7, .polarity = REVERSE },
|
||||
},
|
||||
},
|
||||
[WRT54G3G] = {
|
||||
.name = "Linksys WRT54G3G",
|
||||
.buttons = {
|
||||
|
@ -310,91 +239,6 @@ static struct platform_t __initdata platforms[] = {
|
|||
{ .name = "3g_blink", .gpio = 1 << 5, .polarity = NORMAL },
|
||||
},
|
||||
},
|
||||
[WRT54G3GV2_VF] = {
|
||||
.name = "Linksys WRT54G3GV2-VF",
|
||||
.buttons = {
|
||||
{ .name = "reset", .gpio = 1 << 6 },
|
||||
{ .name = "3g", .gpio = 1 << 5 },
|
||||
},
|
||||
.leds = {
|
||||
{ .name = "power", .gpio = 1 << 1, .polarity = NORMAL },
|
||||
{ .name = "3g_green", .gpio = 1 << 2, .polarity = NORMAL },
|
||||
{ .name = "3g_blue", .gpio = 1 << 3, .polarity = NORMAL },
|
||||
},
|
||||
},
|
||||
[WRT150NV1] = {
|
||||
.name = "Linksys WRT150N V1",
|
||||
.buttons = {
|
||||
{ .name = "reset", .gpio = 1 << 6 },
|
||||
{ .name = "ses", .gpio = 1 << 4 },
|
||||
},
|
||||
.leds = {
|
||||
{ .name = "power", .gpio = 1 << 1, .polarity = NORMAL },
|
||||
{ .name = "ses_green", .gpio = 1 << 5, .polarity = REVERSE },
|
||||
{ .name = "ses_amber", .gpio = 1 << 3, .polarity = REVERSE },
|
||||
},
|
||||
},
|
||||
[WRT150NV11] = {
|
||||
.name = "Linksys WRT150N V1.1",
|
||||
.buttons = {
|
||||
{ .name = "reset", .gpio = 1 << 6 },
|
||||
{ .name = "ses", .gpio = 1 << 4 },
|
||||
},
|
||||
.leds = {
|
||||
{ .name = "power", .gpio = 1 << 1, .polarity = NORMAL },
|
||||
{ .name = "ses_green", .gpio = 1 << 5, .polarity = REVERSE },
|
||||
{ .name = "ses_amber", .gpio = 1 << 3, .polarity = REVERSE },
|
||||
},
|
||||
},
|
||||
[WRT160NV1] = {
|
||||
.name = "Linksys WRT160N v1.x",
|
||||
.buttons = {
|
||||
{ .name = "reset", .gpio = 1 << 6 },
|
||||
{ .name = "ses", .gpio = 1 << 4 },
|
||||
},
|
||||
.leds = {
|
||||
{ .name = "power", .gpio = 1 << 1, .polarity = NORMAL },
|
||||
{ .name = "ses_blue", .gpio = 1 << 5, .polarity = REVERSE },
|
||||
{ .name = "ses_orange", .gpio = 1 << 3, .polarity = REVERSE },
|
||||
},
|
||||
},
|
||||
[WRT160NV3] = {
|
||||
.name = "Linksys WRT160N V3",
|
||||
.buttons = {
|
||||
{ .name = "reset", .gpio = 1 << 6 },
|
||||
{ .name = "ses", .gpio = 1 << 5 },
|
||||
},
|
||||
.leds = {
|
||||
{ .name = "power", .gpio = 1 << 1, .polarity = NORMAL },
|
||||
{ .name = "ses_blue", .gpio = 1 << 4, .polarity = REVERSE },
|
||||
{ .name = "ses_orange", .gpio = 1 << 2, .polarity = REVERSE },
|
||||
},
|
||||
},
|
||||
[WRT300NV11] = {
|
||||
.name = "Linksys WRT300N V1.1",
|
||||
.buttons = {
|
||||
{ .name = "reset", .gpio = 1 << 6 }, // "Reset" on back panel
|
||||
{ .name = "ses", .gpio = 1 << 4 }, // "Reserved" on top panel
|
||||
},
|
||||
.leds = {
|
||||
{ .name = "power", .gpio = 1 << 1, .polarity = NORMAL }, // "Power"
|
||||
{ .name = "ses_amber", .gpio = 1 << 3, .polarity = REVERSE }, // "Security" Amber
|
||||
{ .name = "ses_green", .gpio = 1 << 5, .polarity = REVERSE }, // "Security" Green
|
||||
},
|
||||
.platform_init = bcm57xx_init,
|
||||
},
|
||||
[WRT310NV1] = {
|
||||
.name = "Linksys WRT310N V1",
|
||||
.buttons = {
|
||||
{ .name = "reset", .gpio = 1 << 6 }, // "Reset" on back panel
|
||||
{ .name = "ses", .gpio = 1 << 8 }, // "Reserved" on top panel
|
||||
},
|
||||
.leds = {
|
||||
{ .name = "power", .gpio = 1 << 1, .polarity = NORMAL }, // Power LED
|
||||
{ .name = "ses_amber", .gpio = 1 << 3, .polarity = REVERSE }, // "Security" Amber
|
||||
{ .name = "ses_blue", .gpio = 1 << 9, .polarity = REVERSE }, // "Security" Blue
|
||||
},
|
||||
},
|
||||
[WRT350N] = {
|
||||
.name = "Linksys WRT350N",
|
||||
.buttons = {
|
||||
|
@ -408,7 +252,6 @@ static struct platform_t __initdata platforms[] = {
|
|||
{ .name = "usb_blink", .gpio = 1 << 10, .polarity = REVERSE },
|
||||
{ .name = "usb", .gpio = 1 << 11, .polarity = REVERSE },
|
||||
},
|
||||
.platform_init = bcm57xx_init,
|
||||
},
|
||||
[WRT600N] = {
|
||||
.name = "Linksys WRT600N",
|
||||
|
@ -424,7 +267,6 @@ static struct platform_t __initdata platforms[] = {
|
|||
{ .name = "wl1_ses_amber", .gpio = 1 << 10, .polarity = REVERSE }, // 5.6Ghz LED Amber
|
||||
{ .name = "wl1_ses_green", .gpio = 1 << 11, .polarity = REVERSE }, // 5.6Ghz LED Green
|
||||
},
|
||||
.platform_init = bcm57xx_init,
|
||||
},
|
||||
[WRT600NV11] = {
|
||||
.name = "Linksys WRT600N V1.1",
|
||||
|
@ -440,156 +282,8 @@ static struct platform_t __initdata platforms[] = {
|
|||
{ .name = "wl1_ses_amber", .gpio = 1 << 10, .polarity = REVERSE }, // 5.6Ghz LED Amber
|
||||
{ .name = "wl1_ses_green", .gpio = 1 << 11, .polarity = REVERSE }, // 5.6Ghz LED Green
|
||||
},
|
||||
.platform_init = bcm57xx_init,
|
||||
},
|
||||
[WRT610N] = {
|
||||
.name = "Linksys WRT610N",
|
||||
.buttons = {
|
||||
{ .name = "reset", .gpio = 1 << 6 },
|
||||
{ .name = "ses", .gpio = 1 << 8 },
|
||||
},
|
||||
.leds = {
|
||||
{ .name = "power", .gpio = 1 << 1, .polarity = NORMAL }, // Power LED
|
||||
{ .name = "usb", .gpio = 1 << 0, .polarity = REVERSE }, // USB LED
|
||||
{ .name = "ses_amber", .gpio = 1 << 3, .polarity = REVERSE }, // WiFi protected setup LED amber
|
||||
{ .name = "ses_blue", .gpio = 1 << 9, .polarity = REVERSE }, // WiFi protected setup LED blue
|
||||
},
|
||||
},
|
||||
[WRT610NV2] = {
|
||||
.name = "Linksys WRT610N V2",
|
||||
.buttons = {
|
||||
{ .name = "reset", .gpio = 1 << 6 },
|
||||
{ .name = "ses", .gpio = 1 << 4 },
|
||||
},
|
||||
.leds = {
|
||||
{ .name = "power", .gpio = 1 << 5, .polarity = NORMAL }, // Power LED
|
||||
{ .name = "usb", .gpio = 1 << 7, .polarity = NORMAL }, // USB LED
|
||||
{ .name = "ses_amber", .gpio = 1 << 0, .polarity = REVERSE }, // WiFi protected setup LED amber
|
||||
{ .name = "ses_blue", .gpio = 1 << 3, .polarity = REVERSE }, // WiFi protected setup LED blue
|
||||
{ .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 */
|
||||
},
|
||||
},
|
||||
[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 */
|
||||
},
|
||||
},
|
||||
[E2000V1] = {
|
||||
.name = "Linksys E2000 V1",
|
||||
.buttons = {
|
||||
{ .name = "reset", .gpio = 1 << 8 },
|
||||
{ .name = "ses", .gpio = 1 << 5 },
|
||||
},
|
||||
.leds = {
|
||||
{ .name = "power", .gpio = 1 << 2, .polarity = NORMAL },
|
||||
{ .name = "ses_amber", .gpio = 1 << 4, .polarity = REVERSE },
|
||||
{ .name = "ses_blue", .gpio = 1 << 3, .polarity = REVERSE },
|
||||
{ .name = "wlan", .gpio = 1 << 1, .polarity = NORMAL },
|
||||
},
|
||||
},
|
||||
[E3000V1] = {
|
||||
.name = "Linksys E3000 V1",
|
||||
.buttons = {
|
||||
{ .name = "reset", .gpio = 1 << 6 },
|
||||
{ .name = "ses", .gpio = 1 << 4 },
|
||||
},
|
||||
.leds = {
|
||||
{ .name = "power", .gpio = 1 << 5, .polarity = NORMAL }, // Power LED
|
||||
{ .name = "usb", .gpio = 1 << 7, .polarity = NORMAL }, // USB LED
|
||||
{ .name = "ses_amber", .gpio = 1 << 0, .polarity = REVERSE }, // WiFi protected setup LED amber
|
||||
{ .name = "ses_blue", .gpio = 1 << 3, .polarity = REVERSE }, // WiFi protected setup LED blue
|
||||
{ .name = "wlan", .gpio = 1 << 1, .polarity = NORMAL }, // Wireless LED
|
||||
},
|
||||
},
|
||||
[E3200V1] = {
|
||||
.name = "Linksys E3200 V1",
|
||||
.buttons = {
|
||||
/* { .name = "switch", .gpio = 1 << 4 },*/ /* nvram get gpio4=robo_reset */
|
||||
{ .name = "reset", .gpio = 1 << 5 }, /* nvram get reset_gpio=5 */
|
||||
{ .name = "wps", .gpio = 1 << 8 }, /* nvram get gpio8=wps_button */
|
||||
/* { .name = "wombo", .gpio = 1 << 23 },*/ /* nvram get gpio23=wombo_reset - wireless on motherboard */
|
||||
},
|
||||
.leds = {
|
||||
{ .name = "power", .gpio = 1 << 3, .polarity = REVERSE }, /* Power LED */
|
||||
},
|
||||
},
|
||||
[E4200V1] = {
|
||||
.name = "Linksys E4200 V1",
|
||||
.buttons = {
|
||||
{ .name = "reset", .gpio = 1 << 6 },
|
||||
{ .name = "wps", .gpio = 1 << 4 },
|
||||
},
|
||||
.leds = {
|
||||
{ .name = "power", .gpio = 1 << 5, .polarity = REVERSE },
|
||||
},
|
||||
},
|
||||
/* Asus */
|
||||
[WLHDD] = {
|
||||
.name = "ASUS WL-HDD",
|
||||
.buttons = {
|
||||
{ .name = "reset", .gpio = 1 << 6 },
|
||||
},
|
||||
.leds = {
|
||||
{ .name = "power", .gpio = 1 << 0, .polarity = REVERSE },
|
||||
{ .name = "usb", .gpio = 1 << 2, .polarity = REVERSE },
|
||||
},
|
||||
},
|
||||
[WL300G] = {
|
||||
.name = "ASUS WL-300g",
|
||||
.buttons = {
|
||||
{ .name = "reset", .gpio = 1 << 6 },
|
||||
},
|
||||
.leds = {
|
||||
{ .name = "power", .gpio = 1 << 0, .polarity = REVERSE },
|
||||
},
|
||||
},
|
||||
[WL320GE] = {
|
||||
.name = "ASUS WL-320gE/WL-320gP",
|
||||
.buttons = {
|
||||
{ .name = "reset", .gpio = 1 << 6 },
|
||||
},
|
||||
.leds = {
|
||||
{ .name = "wlan", .gpio = 1 << 0, .polarity = REVERSE },
|
||||
{ .name = "power", .gpio = 1 << 2, .polarity = REVERSE },
|
||||
{ .name = "link", .gpio = 1 << 11, .polarity = REVERSE },
|
||||
},
|
||||
},
|
||||
[WL330GE] = {
|
||||
.name = "ASUS WL-330gE",
|
||||
.buttons = {
|
||||
{ .name = "reset", .gpio = 1 << 2 },
|
||||
},
|
||||
.leds = {
|
||||
{ .name = "power", .gpio = 1 << 0, .polarity = REVERSE },
|
||||
},
|
||||
},
|
||||
[WL500G] = {
|
||||
.name = "ASUS WL-500g",
|
||||
.buttons = {
|
||||
|
@ -599,68 +293,6 @@ static struct platform_t __initdata platforms[] = {
|
|||
{ .name = "power", .gpio = 1 << 0, .polarity = REVERSE },
|
||||
},
|
||||
},
|
||||
[WL500GD] = {
|
||||
.name = "ASUS WL-500g Deluxe",
|
||||
.buttons = {
|
||||
{ .name = "reset", .gpio = 1 << 6 },
|
||||
},
|
||||
.leds = {
|
||||
{ .name = "power", .gpio = 1 << 0, .polarity = REVERSE },
|
||||
},
|
||||
},
|
||||
[WL500GP] = {
|
||||
.name = "ASUS WL-500g Premium",
|
||||
.buttons = {
|
||||
{ .name = "reset", .gpio = 1 << 0 },
|
||||
{ .name = "ses", .gpio = 1 << 4 },
|
||||
},
|
||||
.leds = {
|
||||
{ .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 = {
|
||||
{ .name = "reset", .gpio = 1 << 6 },
|
||||
{ .name = "ses", .gpio = 1 << 7 },
|
||||
},
|
||||
.leds = {
|
||||
{ .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 = {
|
||||
{ .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 },
|
||||
},
|
||||
},
|
||||
[ASUS_4702] = {
|
||||
.name = "ASUS (unknown, BCM4702)",
|
||||
.buttons = {
|
||||
|
@ -670,80 +302,7 @@ static struct platform_t __initdata platforms[] = {
|
|||
{ .name = "power", .gpio = 1 << 0, .polarity = REVERSE },
|
||||
},
|
||||
},
|
||||
[WL700GE] = {
|
||||
.name = "ASUS WL-700gE",
|
||||
.buttons = {
|
||||
{ .name = "reset", .gpio = 1 << 7 }, // on back, hardwired, always resets device regardless OS state
|
||||
{ .name = "ses", .gpio = 1 << 4 }, // on back, actual name ezsetup
|
||||
{ .name = "power", .gpio = 1 << 0 }, // on front
|
||||
{ .name = "copy", .gpio = 1 << 6 }, // on front
|
||||
},
|
||||
.leds = {
|
||||
#if 0
|
||||
// GPIO that controls power led also enables/disables some essential functions
|
||||
// - power to HDD
|
||||
// - switch leds
|
||||
{ .name = "power", .gpio = 1 << 3, .polarity = NORMAL }, // actual name power
|
||||
#endif
|
||||
{ .name = "diag", .gpio = 1 << 1, .polarity = REVERSE }, // actual name ready
|
||||
},
|
||||
.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 = {
|
||||
{ .name = "reset", .gpio = 1 << 8 },
|
||||
{ .name = "ses", .gpio = 1 << 6 },
|
||||
},
|
||||
.leds = {
|
||||
{ .name = "power", .gpio = 1 << 1, .polarity = REVERSE },
|
||||
{ .name = "wlan", .gpio = 1 << 7, .polarity = NORMAL },
|
||||
},
|
||||
},
|
||||
[RTN66U] = {
|
||||
.name = "ASUS RT-N66U",
|
||||
.buttons = {
|
||||
{ .name = "reset", .gpio = 1 << 9 },
|
||||
{ .name = "wps", .gpio = 1 << 4 },
|
||||
},
|
||||
.leds = {
|
||||
{ .name = "power", .gpio = 1 << 12, .polarity = REVERSE },
|
||||
{ .name = "usb", .gpio = 1 << 15, .polarity = REVERSE },
|
||||
},
|
||||
},
|
||||
/* Buffalo */
|
||||
[WHR_G54S] = {
|
||||
.name = "Buffalo WHR-G54S",
|
||||
.buttons = {
|
||||
{ .name = "reset", .gpio = 1 << 4 },
|
||||
{ .name = "bridge", .gpio = 1 << 5 },
|
||||
{ .name = "ses", .gpio = 1 << 0 },
|
||||
},
|
||||
.leds = {
|
||||
{ .name = "diag", .gpio = 1 << 7, .polarity = REVERSE },
|
||||
{ .name = "internal", .gpio = 1 << 3, .polarity = REVERSE },
|
||||
{ .name = "ses", .gpio = 1 << 6, .polarity = REVERSE },
|
||||
{ .name = "bridge", .gpio = 1 << 1, .polarity = REVERSE },
|
||||
{ .name = "wlan", .gpio = 1 << 2, .polarity = REVERSE },
|
||||
},
|
||||
},
|
||||
[WBR2_G54] = {
|
||||
.name = "Buffalo WBR2-G54",
|
||||
/* FIXME: verify */
|
||||
|
@ -754,45 +313,6 @@ static struct platform_t __initdata platforms[] = {
|
|||
{ .name = "diag", .gpio = 1 << 1, .polarity = REVERSE },
|
||||
},
|
||||
},
|
||||
[WHR_HP_G54] = {
|
||||
.name = "Buffalo WHR-HP-G54",
|
||||
.buttons = {
|
||||
{ .name = "reset", .gpio = 1 << 4 },
|
||||
{ .name = "bridge", .gpio = 1 << 5 },
|
||||
{ .name = "ses", .gpio = 1 << 0 },
|
||||
},
|
||||
.leds = {
|
||||
{ .name = "diag", .gpio = 1 << 7, .polarity = REVERSE },
|
||||
{ .name = "internal", .gpio = 1 << 3, .polarity = REVERSE },
|
||||
{ .name = "bridge", .gpio = 1 << 1, .polarity = REVERSE },
|
||||
{ .name = "ses", .gpio = 1 << 6, .polarity = REVERSE },
|
||||
{ .name = "wlan", .gpio = 1 << 2, .polarity = REVERSE },
|
||||
},
|
||||
},
|
||||
[WHR_G125] = {
|
||||
.name = "Buffalo WHR-G125",
|
||||
.buttons = {
|
||||
{ .name = "reset", .gpio = 1 << 4 },
|
||||
{ .name = "bridge", .gpio = 1 << 5 },
|
||||
{ .name = "ses", .gpio = 1 << 0 },
|
||||
},
|
||||
.leds = {
|
||||
{ .name = "diag", .gpio = 1 << 7, .polarity = REVERSE },
|
||||
{ .name = "internal", .gpio = 1 << 3, .polarity = REVERSE },
|
||||
{ .name = "bridge", .gpio = 1 << 1, .polarity = REVERSE },
|
||||
{ .name = "ses", .gpio = 1 << 6, .polarity = REVERSE },
|
||||
{ .name = "wlan", .gpio = 1 << 2, .polarity = REVERSE },
|
||||
},
|
||||
},
|
||||
[WHR2_A54G54] = {
|
||||
.name = "Buffalo WHR2-A54G54",
|
||||
.buttons = {
|
||||
{ .name = "reset", .gpio = 1 << 4 },
|
||||
},
|
||||
.leds = {
|
||||
{ .name = "diag", .gpio = 1 << 7, .polarity = REVERSE },
|
||||
},
|
||||
},
|
||||
[WLA2_G54L] = {
|
||||
.name = "Buffalo WLA2-G54L",
|
||||
/* FIXME: verify */
|
||||
|
@ -803,41 +323,6 @@ static struct platform_t __initdata platforms[] = {
|
|||
{ .name = "diag", .gpio = 1 << 1, .polarity = REVERSE },
|
||||
},
|
||||
},
|
||||
[WZR_G300N] = {
|
||||
.name = "Buffalo WZR-G300N",
|
||||
.buttons = {
|
||||
{ .name = "reset", .gpio = 1 << 4 },
|
||||
},
|
||||
.leds = {
|
||||
{ .name = "diag", .gpio = 1 << 7, .polarity = REVERSE },
|
||||
{ .name = "bridge", .gpio = 1 << 1, .polarity = REVERSE },
|
||||
{ .name = "ses", .gpio = 1 << 6, .polarity = REVERSE },
|
||||
},
|
||||
},
|
||||
[WZR_RS_G54] = {
|
||||
.name = "Buffalo WZR-RS-G54",
|
||||
.buttons = {
|
||||
{ .name = "ses", .gpio = 1 << 0 },
|
||||
{ .name = "reset", .gpio = 1 << 4 },
|
||||
},
|
||||
.leds = {
|
||||
{ .name = "diag", .gpio = 1 << 7, .polarity = REVERSE },
|
||||
{ .name = "ses", .gpio = 1 << 6, .polarity = REVERSE },
|
||||
{ .name = "vpn", .gpio = 1 << 1, .polarity = REVERSE },
|
||||
},
|
||||
},
|
||||
[WZR_RS_G54HP] = {
|
||||
.name = "Buffalo WZR-RS-G54HP",
|
||||
.buttons = {
|
||||
{ .name = "ses", .gpio = 1 << 0 },
|
||||
{ .name = "reset", .gpio = 1 << 4 },
|
||||
},
|
||||
.leds = {
|
||||
{ .name = "diag", .gpio = 1 << 7, .polarity = REVERSE },
|
||||
{ .name = "ses", .gpio = 1 << 6, .polarity = REVERSE },
|
||||
{ .name = "vpn", .gpio = 1 << 1, .polarity = REVERSE },
|
||||
},
|
||||
},
|
||||
[BUFFALO_UNKNOWN_4710] = {
|
||||
.name = "Buffalo (unknown, BCM4710)",
|
||||
.buttons = {
|
||||
|
@ -882,16 +367,6 @@ static struct platform_t __initdata platforms[] = {
|
|||
},
|
||||
},
|
||||
/* Dell */
|
||||
[TM2300] = {
|
||||
.name = "Dell TrueMobile 2300",
|
||||
.buttons = {
|
||||
{ .name = "reset", .gpio = 1 << 0 },
|
||||
},
|
||||
.leds = {
|
||||
{ .name = "wlan", .gpio = 1 << 6, .polarity = REVERSE },
|
||||
{ .name = "power", .gpio = 1 << 7, .polarity = REVERSE },
|
||||
},
|
||||
},
|
||||
[TM2300V2] = {
|
||||
.name = "Dell TrueMobile 2300 v2",
|
||||
.buttons = {
|
||||
|
@ -903,17 +378,6 @@ static struct platform_t __initdata platforms[] = {
|
|||
},
|
||||
},
|
||||
/* Motorola */
|
||||
[WE800G] = {
|
||||
.name = "Motorola WE800G",
|
||||
.buttons = {
|
||||
{ .name = "reset", .gpio = 1 << 0 },
|
||||
},
|
||||
.leds = {
|
||||
{ .name = "power", .gpio = 1 << 4, .polarity = NORMAL },
|
||||
{ .name = "diag", .gpio = 1 << 2, .polarity = REVERSE },
|
||||
{ .name = "wlan_amber", .gpio = 1 << 1, .polarity = NORMAL },
|
||||
},
|
||||
},
|
||||
[WR850GV1] = {
|
||||
.name = "Motorola WR850G V1",
|
||||
.buttons = {
|
||||
|
@ -927,47 +391,7 @@ static struct platform_t __initdata platforms[] = {
|
|||
{ .name = "wlan_green", .gpio = 1 << 7, .polarity = REVERSE },
|
||||
},
|
||||
},
|
||||
[WR850GV2V3] = {
|
||||
.name = "Motorola WR850G V2/V3",
|
||||
.buttons = {
|
||||
{ .name = "reset", .gpio = 1 << 5 },
|
||||
},
|
||||
.leds = {
|
||||
{ .name = "power", .gpio = 1 << 1, .polarity = NORMAL },
|
||||
{ .name = "wlan", .gpio = 1 << 0, .polarity = REVERSE },
|
||||
{ .name = "wan", .gpio = 1 << 6, .polarity = INPUT },
|
||||
{ .name = "diag", .gpio = 1 << 7, .polarity = REVERSE },
|
||||
},
|
||||
},
|
||||
[WR850GP] = {
|
||||
.name = "Motorola WR850GP",
|
||||
.buttons = {
|
||||
{ .name = "reset", .gpio = 1 << 5 },
|
||||
},
|
||||
.leds = {
|
||||
{ .name = "power", .gpio = 1 << 1, .polarity = NORMAL },
|
||||
{ .name = "wlan", .gpio = 1 << 0, .polarity = REVERSE },
|
||||
{ .name = "dmz", .gpio = 1 << 6, .polarity = REVERSE },
|
||||
{ .name = "diag", .gpio = 1 << 7, .polarity = REVERSE },
|
||||
},
|
||||
},
|
||||
|
||||
/* Belkin */
|
||||
[BELKIN_F7D4301] = {
|
||||
.name = "Belkin PlayMax F7D4301",
|
||||
.buttons = {
|
||||
{ .name = "reset", .gpio = 1 << 6 },
|
||||
{ .name = "wps", .gpio = 1 << 8 },
|
||||
},
|
||||
.leds = {
|
||||
{ .name = "power", .gpio = 1 << 10, .polarity = REVERSE },
|
||||
{ .name = "warn", .gpio = 1 << 11, .polarity = REVERSE },
|
||||
{ .name = "wps", .gpio = 1 << 12, .polarity = REVERSE },
|
||||
{ .name = "wlan", .gpio = 1 << 13, .polarity = REVERSE },
|
||||
{ .name = "usb0", .gpio = 1 << 14, .polarity = REVERSE },
|
||||
{ .name = "usb1", .gpio = 1 << 15, .polarity = REVERSE },
|
||||
},
|
||||
},
|
||||
/* Netgear */
|
||||
[WGT634U] = {
|
||||
.name = "Netgear WGT634U",
|
||||
|
@ -989,33 +413,6 @@ static struct platform_t __initdata platforms[] = {
|
|||
},
|
||||
},
|
||||
/* Netgear */
|
||||
[WNR834BV2] = {
|
||||
.name = "Netgear WNR834B V2",
|
||||
.buttons = {
|
||||
{ .name = "reset", .gpio = 1 << 6 },
|
||||
},
|
||||
.leds = {
|
||||
{ .name = "power", .gpio = 1 << 2, .polarity = NORMAL },
|
||||
{ .name = "diag", .gpio = 1 << 3, .polarity = NORMAL },
|
||||
{ .name = "connected", .gpio = 1 << 7, .polarity = NORMAL },
|
||||
},
|
||||
},
|
||||
[WNDR3400V1] = {
|
||||
.name = "Netgear WNDR3400 V1",
|
||||
.buttons = {
|
||||
/* nvram get gpio5=robo_reset */
|
||||
{ .name = "reset", .gpio = 1 << 4 },
|
||||
{ .name = "wps", .gpio = 1 << 6 },
|
||||
{ .name = "wlan", .gpio = 1 << 8 },
|
||||
},
|
||||
.leds = {
|
||||
{ .name = "wlan", .gpio = 0 << 0, .polarity = NORMAL },
|
||||
{ .name = "connected", .gpio = 1 << 0, .polarity = NORMAL },
|
||||
{ .name = "power", .gpio = 1 << 3, .polarity = NORMAL },
|
||||
{ .name = "diag", .gpio = 1 << 7, .polarity = NORMAL },
|
||||
{ .name = "usb", .gpio = 1 << 2, .polarity = REVERSE },
|
||||
},
|
||||
},
|
||||
[WNDR3700V3] = {
|
||||
.name = "Netgear WNDR3700 V3",
|
||||
.buttons = {
|
||||
|
@ -1062,17 +459,6 @@ static struct platform_t __initdata platforms[] = {
|
|||
.platform_init = bcm4780_init,
|
||||
},
|
||||
/* D-Link */
|
||||
[DIR130] = {
|
||||
.name = "D-Link DIR-130",
|
||||
.buttons = {
|
||||
{ .name = "reset", .gpio = 1 << 3},
|
||||
{ .name = "reserved", .gpio = 1 << 7},
|
||||
},
|
||||
.leds = {
|
||||
{ .name = "diag", .gpio = 1 << 0},
|
||||
{ .name = "blue", .gpio = 1 << 6},
|
||||
},
|
||||
},
|
||||
[DIR320] = {
|
||||
.name = "D-Link DIR-320",
|
||||
.buttons = {
|
||||
|
@ -1087,18 +473,6 @@ static struct platform_t __initdata platforms[] = {
|
|||
{ .name = "usb", .gpio = 1 << 5, .polarity = NORMAL },
|
||||
},
|
||||
},
|
||||
[DIR330] = {
|
||||
.name = "D-Link DIR-330",
|
||||
.buttons = {
|
||||
{ .name = "reset", .gpio = 1 << 3},
|
||||
{ .name = "reserved", .gpio = 1 << 7},
|
||||
},
|
||||
.leds = {
|
||||
{ .name = "diag", .gpio = 1 << 0},
|
||||
{ .name = "usb", .gpio = 1 << 4},
|
||||
{ .name = "blue", .gpio = 1 << 6},
|
||||
},
|
||||
},
|
||||
[DWL3150] = {
|
||||
.name = "D-Link DWL-3150",
|
||||
.buttons = {
|
||||
|
@ -1179,15 +553,6 @@ static struct platform_t __initdata platforms[] = {
|
|||
},
|
||||
},
|
||||
/* Huawei */
|
||||
[HUAWEI_E970] = {
|
||||
.name = "Huawei E970",
|
||||
.buttons = {
|
||||
{ .name = "reset", .gpio = 1 << 6 },
|
||||
},
|
||||
.leds = {
|
||||
{ .name = "wlan", .gpio = 1 << 0, .polarity = NORMAL },
|
||||
},
|
||||
},
|
||||
};
|
||||
|
||||
static struct platform_t __init *platform_detect_legacy(void)
|
||||
|
@ -1252,8 +617,6 @@ static struct platform_t __init *platform_detect_legacy(void)
|
|||
if (!strcmp(boardtype,"0x0472") && !strcmp(getvar("cardbus"), "1")) { /* Netgear WNR834B V1 and V2*/
|
||||
if (!strcmp(boardnum, "08") || !strcmp(boardnum, "8"))
|
||||
return &platforms[WNR834BV1];
|
||||
if (!strcmp(boardnum, "01") || !strcmp(boardnum, "1"))
|
||||
return &platforms[WNR834BV2];
|
||||
}
|
||||
|
||||
} else { /* PMON based - old stuff */
|
||||
|
@ -1300,13 +663,6 @@ static struct platform_t __init *platform_detect_legacy(void)
|
|||
return &platforms[BUFFALO_UNKNOWN_4710];
|
||||
}
|
||||
|
||||
if (startswith(getvar("CFEver"), "MotoWRv2") ||
|
||||
startswith(getvar("CFEver"), "MotoWRv3") ||
|
||||
!strcmp(getvar("MOTO_BOARD_TYPE"), "WR_FEM1")) {
|
||||
|
||||
return &platforms[WR850GV2V3];
|
||||
}
|
||||
|
||||
if (!strcmp(boardnum, "44") && !strcmp(getvar("boardflags"),"0x0388")) { /* Trendware TEW-411BRP+ */
|
||||
return &platforms[TEW411BRPP];
|
||||
}
|
||||
|
@ -1333,108 +689,14 @@ static struct platform_t __init *platform_detect(void)
|
|||
|
||||
board = bcm47xx_board_get();
|
||||
board_name = bcm47xx_board_get_name();
|
||||
if (board != BCM47XX_BOARD_UNKNOWN && board != BCM47XX_BOARD_NO)
|
||||
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_RTN66U:
|
||||
return &platforms[RTN66U];
|
||||
case BCM47XX_BOARD_ASUS_WL300G:
|
||||
return &platforms[WL300G];
|
||||
case BCM47XX_BOARD_ASUS_WL320GE:
|
||||
return &platforms[WL320GE];
|
||||
case BCM47XX_BOARD_ASUS_WL330GE:
|
||||
return &platforms[WL330GE];
|
||||
case BCM47XX_BOARD_ASUS_WL500GD:
|
||||
return &platforms[WL500GD];
|
||||
case BCM47XX_BOARD_ASUS_WL500GPV1:
|
||||
return &platforms[WL500GP];
|
||||
case BCM47XX_BOARD_ASUS_WL500GPV2:
|
||||
return &platforms[WL500GPV2];
|
||||
case BCM47XX_BOARD_ASUS_WL500W:
|
||||
return &platforms[WL500W];
|
||||
case BCM47XX_BOARD_ASUS_WL520GC:
|
||||
return &platforms[WL520GC];
|
||||
case BCM47XX_BOARD_ASUS_WL520GU:
|
||||
return &platforms[WL520GU];
|
||||
case BCM47XX_BOARD_ASUS_WL700GE:
|
||||
return &platforms[WL700GE];
|
||||
case BCM47XX_BOARD_ASUS_WLHDD:
|
||||
return &platforms[WLHDD];
|
||||
case BCM47XX_BOARD_BELKIN_F7D4301:
|
||||
return &platforms[BELKIN_F7D4301];
|
||||
case BCM47XX_BOARD_BUFFALO_WBR2_G54:
|
||||
return &platforms[WBR2_G54];
|
||||
case BCM47XX_BOARD_BUFFALO_WHR2_A54G54:
|
||||
return &platforms[WHR2_A54G54];
|
||||
case BCM47XX_BOARD_BUFFALO_WHR_G125:
|
||||
return &platforms[WHR_G125];
|
||||
case BCM47XX_BOARD_BUFFALO_WHR_G54S:
|
||||
return &platforms[WHR_G54S];
|
||||
case BCM47XX_BOARD_BUFFALO_WHR_HP_G54:
|
||||
return &platforms[WHR_HP_G54];
|
||||
case BCM47XX_BOARD_BUFFALO_WLA2_G54L:
|
||||
return &platforms[WLA2_G54L];
|
||||
case BCM47XX_BOARD_BUFFALO_WZR_G300N:
|
||||
return &platforms[WZR_G300N];
|
||||
case BCM47XX_BOARD_BUFFALO_WZR_RS_G54:
|
||||
return &platforms[WZR_RS_G54];
|
||||
case BCM47XX_BOARD_BUFFALO_WZR_RS_G54HP:
|
||||
return &platforms[WZR_RS_G54HP];
|
||||
case BCM47XX_BOARD_DELL_TM2300:
|
||||
return &platforms[TM2300];
|
||||
case BCM47XX_BOARD_DLINK_DIR130:
|
||||
return &platforms[DIR130];
|
||||
case BCM47XX_BOARD_DLINK_DIR330:
|
||||
return &platforms[DIR330];
|
||||
case BCM47XX_BOARD_HUAWEI_E970:
|
||||
return &platforms[HUAWEI_E970];
|
||||
case BCM47XX_BOARD_LINKSYS_E1000V1:
|
||||
return &platforms[E1000V1];
|
||||
case BCM47XX_BOARD_LINKSYS_E1000V21:
|
||||
return &platforms[E1000V21];
|
||||
case BCM47XX_BOARD_LINKSYS_E2000V1:
|
||||
return &platforms[E2000V1];
|
||||
case BCM47XX_BOARD_LINKSYS_E3000V1:
|
||||
return &platforms[E3000V1];
|
||||
case BCM47XX_BOARD_LINKSYS_E3200V1:
|
||||
return &platforms[E3200V1];
|
||||
case BCM47XX_BOARD_LINKSYS_E4200V1:
|
||||
return &platforms[E4200V1];
|
||||
case BCM47XX_BOARD_LINKSYS_WRT150NV1:
|
||||
return &platforms[WRT150NV1];
|
||||
case BCM47XX_BOARD_LINKSYS_WRT150NV11:
|
||||
return &platforms[WRT150NV11];
|
||||
case BCM47XX_BOARD_LINKSYS_WRT160NV1:
|
||||
return &platforms[WRT160NV1];
|
||||
case BCM47XX_BOARD_LINKSYS_WRT160NV3:
|
||||
return &platforms[WRT160NV3];
|
||||
case BCM47XX_BOARD_LINKSYS_WRT300NV11:
|
||||
return &platforms[WRT300NV11];
|
||||
case BCM47XX_BOARD_LINKSYS_WRT310NV1:
|
||||
return &platforms[WRT310NV1];
|
||||
case BCM47XX_BOARD_LINKSYS_WRT54GSV1:
|
||||
return &platforms[WRT54G];
|
||||
case BCM47XX_BOARD_LINKSYS_WRT54G3GV2:
|
||||
return &platforms[WRT54G3GV2_VF];
|
||||
case BCM47XX_BOARD_LINKSYS_WRT610NV1:
|
||||
return &platforms[WRT610N];
|
||||
case BCM47XX_BOARD_LINKSYS_WRT610NV2:
|
||||
return &platforms[WRT610NV2];
|
||||
case BCM47XX_BOARD_LINKSYS_WRTSL54GS:
|
||||
return &platforms[WRTSL54GS];
|
||||
case BCM47XX_BOARD_MOTOROLA_WE800G:
|
||||
return &platforms[WE800G];
|
||||
case BCM47XX_BOARD_MOTOROLA_WR850GP:
|
||||
return &platforms[WR850GP];
|
||||
case BCM47XX_BOARD_MOTOROLA_WR850GV2V3:
|
||||
return &platforms[WR850GV2V3];
|
||||
case BCM47XX_BOARD_NETGEAR_WNDR3400V1:
|
||||
return &platforms[WNDR3400V1];
|
||||
case BCM47XX_BOARD_NETGEAR_WNDR3700V3:
|
||||
return &platforms[WNDR3700V3];
|
||||
case BCM47XX_BOARD_UNKNOWN:
|
||||
|
@ -1443,9 +705,8 @@ static struct platform_t __init *platform_detect(void)
|
|||
printk(MODULE_NAME ": please open a ticket at https://dev.openwrt.org and attach the complete nvram\n");
|
||||
return platform_detect_legacy();
|
||||
default:
|
||||
printk(MODULE_NAME ": board was detected as \"%s\", but not gpio configuration available\n", board_name);
|
||||
printk(MODULE_NAME ": now trying legacy detect\n");
|
||||
return platform_detect_legacy();
|
||||
printk(MODULE_NAME ": board was detected as \"%s\", and kernel should handle it\n", board_name);
|
||||
return NULL;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue