Changeset 37977


Ignore:
Timestamp:
2013-09-13T21:24:08+02:00 (4 years ago)
Author:
hauke
Message:

brcm47xx: board detection, GPIO for Linksys E1000 V2.1

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

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.

Signed-off-by: Zachary Catlin <zcatlin@…>
Signed-off-by: Hauke Mehrtens <hauke@…>

Location:
trunk
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/package/kernel/broadcom-diag/src/diag.c

    r37970 r37977  
    9090        WRT610NV2, 
    9191        E1000V1, 
     92        E1000V21, 
    9293        E3000V1, 
    9394        E3200V1, 
     
    470471                        { .name = "ses_blue",   .gpio = 1 << 4, .polarity = REVERSE }, /* nvram get gpio4=wps_led */ 
    471472                        { .name = "ses_orange", .gpio = 1 << 2, .polarity = REVERSE }, /* nvram get gpio2=wps_status_led */ 
     473                }, 
     474        }, 
     475        [E1000V21] = { 
     476                .name           = "Linksys E1000 V2.1", 
     477                .buttons        = { 
     478                        { .name = "reset",      .gpio = 1 << 10 }, /* nvram get reset_gpio=10 */ 
     479                        { .name = "wps",        .gpio = 1 << 9 }, /* nvram get gpio9=wps_button */ 
     480                }, 
     481                .leds           = { 
     482                        { .name = "power",      .gpio = 1 << 6, .polarity = REVERSE }, 
     483                        { .name = "wlan",       .gpio = 1 << 5, .polarity = NORMAL }, 
     484                        { .name = "ses_blue",   .gpio = 1 << 8, .polarity = NORMAL }, /* nvram get gpio8=wps_led */ 
     485                        { .name = "ses_orange", .gpio = 1 << 7, .polarity = NORMAL }, /* nvram get gpio7=wps_status_led */ 
    472486                }, 
    473487        }, 
     
    13511365        case BCM47XX_BOARD_LINKSYS_E1000V1: 
    13521366                return &platforms[E1000V1]; 
     1367        case BCM47XX_BOARD_LINKSYS_E1000V21: 
     1368                return &platforms[E1000V21]; 
    13531369        case BCM47XX_BOARD_LINKSYS_E3000V1: 
    13541370                return &platforms[E3000V1]; 
  • trunk/target/linux/brcm47xx/patches-3.10/260-MIPS-BCM47XX-add-board-detection.patch

    r37969 r37977  
    99--- /dev/null 
    1010+++ b/arch/mips/bcm47xx/board.c 
    11 @@ -0,0 +1,241 @@ 
     11@@ -0,0 +1,242 @@ 
    1212+#include <linux/export.h> 
    1313+#include <linux/string.h> 
     
    102102+       {{BCM47XX_BOARD_LINKSYS_E1000V1, "Linksys E1000 V1"}, "E100", "1.0"},  /* like WRT160N v3.0 */ 
    103103+       {{BCM47XX_BOARD_LINKSYS_E1000V2, "Linksys E1000 V2"}, "E1000", "2.0"}, 
     104+       {{BCM47XX_BOARD_LINKSYS_E1000V21, "Linksys E1000 V2.1"}, "E1000", "2.1"}, 
    104105+       {{BCM47XX_BOARD_LINKSYS_E2000V1, "Linksys E2000 V1"}, "Linksys E2000", "1.0"}, 
    105106+       {{BCM47XX_BOARD_LINKSYS_E3000V1, "Linksys E3000 V1"}, "E300", "1.0"}, /* like WRT610N v2.0 */ 
     
    253254--- /dev/null 
    254255+++ b/arch/mips/include/asm/mach-bcm47xx/bcm47xx_board.h 
    255 @@ -0,0 +1,98 @@ 
     256@@ -0,0 +1,99 @@ 
    256257+#ifndef __BCM47XX_BOARD_H 
    257258+#define __BCM47XX_BOARD_H 
     
    304305+       BCM47XX_BOARD_LINKSYS_E1000V1, 
    305306+       BCM47XX_BOARD_LINKSYS_E1000V2, 
     307+       BCM47XX_BOARD_LINKSYS_E1000V21, 
    306308+       BCM47XX_BOARD_LINKSYS_E2000V1, 
    307309+       BCM47XX_BOARD_LINKSYS_E3000V1, 
Note: See TracChangeset for help on using the changeset viewer.