brcm47xx: add detection code for Huawei E970
authorHauke Mehrtens <hauke@hauke-m.de>
Sun, 15 Sep 2013 17:00:45 +0000 (17:00 +0000)
committerHauke Mehrtens <hauke@hauke-m.de>
Sun, 15 Sep 2013 17:00:45 +0000 (17:00 +0000)
This is based on a patch by Mathias Adam.

Signed-off-by: Mathias Adam <m.adam--openwrt@adamis.de>
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
SVN-Revision: 38001

package/kernel/broadcom-diag/src/diag.c
target/linux/brcm47xx/patches-3.10/260-MIPS-BCM47XX-add-board-detection.patch

index 3f58718ec9162027b81ca69869c7398b85de0366..c0ef6ac5673fc1632f40beb4b8b7509ff01672de 100644 (file)
@@ -181,6 +181,9 @@ enum {
 
        /* Edimax */
        PS1208MFG,
+
+       /* Huawei */
+       HUAWEI_E970,
 };
 
 static void __init bcm4780_init(void) {
@@ -1159,6 +1162,16 @@ static struct platform_t __initdata platforms[] = {
                        { .name = "wlan",       .gpio = 1 << 0, .polarity = NORMAL },
                },
        },
+       /* 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)
@@ -1362,6 +1375,8 @@ static struct platform_t __init *platform_detect(void)
                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:
index aa63f45357f43b2ed3dca63d3ff9325ce3718401..b172797bfc4c143b6746beb33008d2213fea8a92 100644 (file)
@@ -8,7 +8,7 @@
  obj-$(CONFIG_BCM47XX_SSB)     += wgt634u.o
 --- /dev/null
 +++ b/arch/mips/bcm47xx/board.c
-@@ -0,0 +1,285 @@
+@@ -0,0 +1,286 @@
 +#include <linux/export.h>
 +#include <linux/string.h>
 +#include <bcm47xx_board.h>
 +/* boardtype, boardnum, boardrev */
 +static const struct bcm47xx_board_type_list3 bcm47xx_board_list_board[] = {
 +      {{BCM47XX_BOARD_ZTE_H218N, "ZTE H218N"}, "0x053d", "1234", "0x1305"},
++      {{BCM47XX_BOARD_HUAWEI_E970, "Huawei E970"}, "0x048e", "0x5347", "0x11"},
 +      { {0}, 0},
 +};
 +
 +EXPORT_SYMBOL(bcm47xx_board_get_name);
 --- /dev/null
 +++ b/arch/mips/include/asm/mach-bcm47xx/bcm47xx_board.h
-@@ -0,0 +1,102 @@
+@@ -0,0 +1,104 @@
 +#ifndef __BCM47XX_BOARD_H
 +#define __BCM47XX_BOARD_H
 +
 +      BCM47XX_BOARD_DLINK_DIR130,
 +      BCM47XX_BOARD_DLINK_DIR330,
 +
++      BCM47XX_BOARD_HUAWEI_E970,
++
 +      BCM47XX_BOARD_LINKSYS_E1000V1,
 +      BCM47XX_BOARD_LINKSYS_E1000V2,
 +      BCM47XX_BOARD_LINKSYS_E1000V21,