X-Git-Url: https://git.rohieb.name/openwrt.git/blobdiff_plain/e7bcb2908a8cf4d248270212daccc0f51798d179..24168b91595c0c5a9420c348c4c16e727e1aaa81:/package/broadcom-diag/src/diag.c?ds=sidebyside diff --git a/package/broadcom-diag/src/diag.c b/package/broadcom-diag/src/diag.c index 834a83abd..89af0f7fc 100644 --- a/package/broadcom-diag/src/diag.c +++ b/package/broadcom-diag/src/diag.c @@ -60,9 +60,11 @@ enum { WRT54G, WRTSL54GS, WRT54G3G, + WRT160N, WRT350N, WRT600N, WRT600NV11, + WRT610N, /* ASUS */ WLHDD, @@ -241,6 +243,18 @@ static struct platform_t __initdata platforms[] = { { .name = "3g_blink", .gpio = 1 << 5, .polarity = NORMAL }, }, }, + [WRT160N] = { + .name = "Linksys WRT160N", + .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 }, + }, + }, [WRT350N] = { .name = "Linksys WRT350N", .buttons = { @@ -288,6 +302,19 @@ static struct platform_t __initdata platforms[] = { }, .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 + }, + }, /* Asus */ [WLHDD] = { .name = "ASUS WL-HDD", @@ -785,6 +812,12 @@ static struct platform_t __init *platform_detect(void) return &platforms[DIR330]; } + /* Based on "wsc_modelname */ + if ((buf = nvram_get("wsc_modelname"))) { + if (!strcmp(buf, "WRT610N")) + return &platforms[WRT610N]; + } + /* Based on "model_no" */ if ((buf = nvram_get("model_no"))) { if (startswith(buf,"WL700")) /* WL700* */ @@ -862,6 +895,9 @@ static struct platform_t __init *platform_detect(void) if (!strcmp(getvar("et1phyaddr"),"5") && !strcmp(getvar("et1mdcport"), "1")) return &platforms[WRTSL54GS]; + if (!strcmp(boardtype, "0x0472")) + return &platforms[WRT160N]; + /* default to WRT54G */ return &platforms[WRT54G]; }