From: Zachary Catlin <[email protected]>

This patch adds board detection for the Linksys E1000 V2.1 router, as well
as GPIO support for same.

Signed-off-by: Zachary Catlin <[email protected]>
---
NOTE: This is identical to the patch I sent earlier today (local time),
but the first time around my mail client messed up spaces in the diff.
Trying again with a different client.

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.
===================================================================
--- 
target/linux/brcm47xx/patches-3.10/260-MIPS-BCM47XX-add-board-detection.patch   
    (revision 37919)
+++ 
target/linux/brcm47xx/patches-3.10/260-MIPS-BCM47XX-add-board-detection.patch   
    (working copy)
@@ -8,7 +8,7 @@
  obj-$(CONFIG_BCM47XX_SSB)     += wgt634u.o
 --- /dev/null
 +++ b/arch/mips/bcm47xx/board.c
-@@ -0,0 +1,240 @@
+@@ -0,0 +1,241 @@
 +#include <linux/export.h>
 +#include <linux/string.h>
 +#include <bcm47xx_board.h>
@@ -101,6 +101,7 @@
 +      {{BCM47XX_BOARD_CISCO_M20V1, "Cisco M20"}, "M20", "1.0"}, /* like 
WRT310N v2.0 */
 +      {{BCM47XX_BOARD_LINKSYS_E1000V1, "Linksys E1000 V1"}, "E100", "1.0"},  
/* like WRT160N v3.0 */
 +      {{BCM47XX_BOARD_LINKSYS_E1000V2, "Linksys E1000 V2"}, "E1000", "2.0"},
++      {{BCM47XX_BOARD_LINKSYS_E1000V21, "Linksys E1000 V2.1"}, "E1000", 
"2.1"},
 +      {{BCM47XX_BOARD_LINKSYS_E2000V1, "Linksys E2000 V1"}, "Linksys E2000", 
"1.0"},
 +      {{BCM47XX_BOARD_LINKSYS_E3000V1, "Linksys E3000 V1"}, "E300", "1.0"}, 
/* like WRT610N v2.0 */
 +      {{BCM47XX_BOARD_LINKSYS_E3200V1, "Linksys E3200 V1"}, "E3200", "1.0"},
@@ -251,7 +252,7 @@
 +EXPORT_SYMBOL(bcm47xx_board_get_name);
 --- /dev/null
 +++ b/arch/mips/include/asm/mach-bcm47xx/bcm47xx_board.h
-@@ -0,0 +1,97 @@
+@@ -0,0 +1,98 @@
 +#ifndef __BCM47XX_BOARD_H
 +#define __BCM47XX_BOARD_H
 +
@@ -302,6 +303,7 @@
 +
 +      BCM47XX_BOARD_LINKSYS_E1000V1,
 +      BCM47XX_BOARD_LINKSYS_E1000V2,
++      BCM47XX_BOARD_LINKSYS_E1000V21,
 +      BCM47XX_BOARD_LINKSYS_E2000V1,
 +      BCM47XX_BOARD_LINKSYS_E3000V1,
 +      BCM47XX_BOARD_LINKSYS_E3200V1,
Index: package/kernel/broadcom-diag/src/diag.c
===================================================================
--- package/kernel/broadcom-diag/src/diag.c     (revision 37919)
+++ package/kernel/broadcom-diag/src/diag.c     (working copy)
@@ -89,6 +89,7 @@
        WRT610N,
        WRT610NV2,
        E1000V1,
+       E1000V21,
        E3000V1,
        E3200V1,
        E4200V1,
@@ -471,6 +472,19 @@
                        { .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        = {
@@ -1349,6 +1363,8 @@
                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:
_______________________________________________
openwrt-devel mailing list
[email protected]
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel

Reply via email to