brcm63xx: Add support for Comtrend WAP-5813n
authorJonas Gorski <jogo@openwrt.org>
Mon, 30 Jun 2014 13:34:34 +0000 (13:34 +0000)
committerJonas Gorski <jogo@openwrt.org>
Mon, 30 Jun 2014 13:34:34 +0000 (13:34 +0000)
This adds support for Comtrend WAP-5813n.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
[jogo: refresh patches]
Signed-off-by: Jonas Gorski <jogo@openwrt.org>
SVN-Revision: 41421

target/linux/brcm63xx/base-files/etc/uci-defaults/02_network
target/linux/brcm63xx/base-files/etc/uci-defaults/09_fix_crc
target/linux/brcm63xx/base-files/lib/brcm63xx.sh
target/linux/brcm63xx/image/Makefile
target/linux/brcm63xx/patches-3.10/561-board_WAP-5813n.patch [new file with mode: 0644]
target/linux/brcm63xx/patches-3.10/801-ssb_export_fallback_sprom.patch
target/linux/brcm63xx/patches-3.14/561-board_WAP-5813n.patch [new file with mode: 0644]

index c3babd8..f091523 100755 (executable)
@@ -95,6 +95,13 @@ DVG3810BN)
        ucidef_add_switch_vlan "eth0" "1" "1 2 4 5 8t"
        ;;
 
+96369R-1231N)
+       ucidef_set_interfaces_lan_wan "eth0.1" "eth0.2"
+       ucidef_add_switch "eth0" "1" "1"
+       ucidef_add_switch_vlan "eth0" "1" "0 1 2 3 5t"
+       ucidef_add_switch_vlan "eth0" "2" "4 5t"
+       ;;
+
 NB6)
        ucidef_set_interfaces_lan_wan "eth0.1" "eth0.2"
        ucidef_add_switch "switch0" "1" "1"
index 2bb79cc..a2c0213 100755 (executable)
@@ -19,6 +19,7 @@ case "$board_name" in
        963281TAN |\
        963281T_TEF |\
        96358-502V |\
+       96369R-1231N |\
        "CPVA502+" |\
        AW4339U |\
        CPVA642 |\
index 679fedd..c6b2d20 100755 (executable)
@@ -28,6 +28,11 @@ brcm63xx_detect() {
                status_led="96328A-1241N:green:power"
                ifname=eth0
                ;;
+       96369R-1231N)
+               brcm63xx_has_reset_button="true"
+               status_led="WAP-5813n:green:power"
+               ifname="eth0"
+               ;;
        RTA770BW)
                brcm63xx_has_reset_button="true"
                status_led="RTA770BW:green:diag"
index 8f661d2..e0c77b6 100755 (executable)
@@ -227,6 +227,8 @@ define Image/Build
        $(call Image/Build/CFE,$(1),CT6373-1,6358,CT6373)
        # Comtrend 536, 5621
        $(call Image/Build/CFEFIXUP,$(1),96348GW-11,CT536_CT5621,6348,CT536_CT5621)
+       # Comtrend WAP-5813n
+       $(call Image/Build/CFE,$(1),96369R-1231N,6368,WAP-5813n,,--pad 4)
        # Davolink DV201AMR
        $(call Image/Build/CFEOLD,$(1),DV201AMR,6348)
        # USR 9108
diff --git a/target/linux/brcm63xx/patches-3.10/561-board_WAP-5813n.patch b/target/linux/brcm63xx/patches-3.10/561-board_WAP-5813n.patch
new file mode 100644 (file)
index 0000000..a89878a
--- /dev/null
@@ -0,0 +1,118 @@
+--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
++++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
+@@ -14,6 +14,7 @@
+ #include <linux/ssb/ssb.h>
+ #include <linux/gpio_keys.h>
+ #include <linux/input.h>
++#include <linux/platform_data/b53.h>
+ #include <linux/spi/spi.h>
+ #include <linux/spi/spi_gpio.h>
+ #include <linux/spi/74x164.h>
+@@ -4469,6 +4470,99 @@ static struct board_info __initdata boar
+       .has_ohci0 = 1,
+       .has_ehci0 = 1,
+ };
++
++static struct b53_platform_data WAP5813n_b53_pdata = {
++      .alias = "eth0",
++};
++
++static struct spi_board_info WAP5813n_spi_devices[] = {
++      {
++              .modalias = "b53-switch",
++              .max_speed_hz = 781000,
++              .bus_num = 0,
++              .chip_select = 0,
++              .platform_data = &WAP5813n_b53_pdata,
++      }
++};
++
++static struct board_info __initdata board_WAP5813n = {
++      .name                           = "96369R-1231N",
++      .expected_cpu_id                = 0x6368,
++
++      .has_uart0                      = 1,
++      .has_pci                        = 1,
++      .has_ohci0                      = 1,
++      .has_ehci0                      = 1,
++
++      .has_enetsw                     = 1,
++      .enetsw = {
++              .used_ports = {
++                      [4] = {
++                              .used = 1,
++                              .phy_id = 0xff,
++                              .bypass_link = 1,
++                              .force_speed = 1000,
++                              .force_duplex_full = 1,
++                              .name = "RGMII",
++                      },
++              },
++      },
++
++      .leds = {
++              {
++                      .name           = "WAP-5813n:green:power",
++                      .gpio           = 22,
++                      .default_trigger = "default-on",
++              },
++              {
++                      .name           = "WAP-5813n:red:power",
++                      .gpio           = 24,
++              },
++              {
++                      .name           = "WAP-5813n:green:inet",
++                      .gpio           = 5,
++              },
++              {
++                      .name           = "WAP-5813n:red:inet",
++                      .gpio           = 31,
++              },
++              {
++                      .name           = "WAP-5813n:green:wps",
++                      .gpio           = 23,
++                      .active_low     = 1,
++              },
++      },
++
++      .buttons = {
++              {
++                      .desc           = "wlan",
++                      .gpio           = 32,
++                      .active_low     = 1,
++                      .type           = EV_KEY,
++                      .code           = KEY_WLAN,
++                      .debounce_interval = BCM963XX_KEYS_DEBOUNCE_INTERVAL,
++              },
++              {
++                      .desc           = "reset",
++                      .gpio           = 34,
++                      .active_low     = 1,
++                      .type           = EV_KEY,
++                      .code           = KEY_RESTART,
++                      .debounce_interval = BCM963XX_KEYS_DEBOUNCE_INTERVAL,
++              },
++              {
++                      .desc           = "wps",
++                      .gpio           = 35,
++                      .active_low     = 1,
++                      .type           = EV_KEY,
++                      .code           = KEY_WPS_BUTTON,
++                      .debounce_interval = BCM963XX_KEYS_DEBOUNCE_INTERVAL,
++              },
++      },
++
++      .spis = WAP5813n_spi_devices,
++      .num_spis = ARRAY_SIZE(WAP5813n_spi_devices),
++};
+ #endif
+ /*
+@@ -4852,6 +4946,7 @@ static const struct board_info __initcon
+ #ifdef CONFIG_BCM63XX_CPU_6368
+       &board_96368mvwg,
+       &board_96368mvngr,
++      &board_WAP5813n,
+ #endif
+ #ifdef CONFIG_BCM63XX_CPU_63268
+       &board_963268bu_p300,
index abbacf4..2b7fd2f 100644 (file)
@@ -5,10 +5,10 @@
  #include <linux/gpio_keys.h>
  #include <linux/input.h>
 +#include <linux/export.h>
+ #include <linux/platform_data/b53.h>
  #include <linux/spi/spi.h>
  #include <linux/spi/spi_gpio.h>
- #include <linux/spi/74x164.h>
-@@ -4865,7 +4866,7 @@ static const struct board_info __initcon
+@@ -4960,7 +4961,7 @@ static const struct board_info __initcon
   * bcm4318 WLAN work
   */
  #ifdef CONFIG_SSB_PCIHOST
@@ -17,7 +17,7 @@
        .revision               = 0x02,
        .board_rev              = 0x17,
        .country_code           = 0x0,
-@@ -4885,6 +4886,7 @@ static struct ssb_sprom bcm63xx_sprom =
+@@ -4980,6 +4981,7 @@ static struct ssb_sprom bcm63xx_sprom =
        .boardflags_lo          = 0x2848,
        .boardflags_hi          = 0x0000,
  };
diff --git a/target/linux/brcm63xx/patches-3.14/561-board_WAP-5813n.patch b/target/linux/brcm63xx/patches-3.14/561-board_WAP-5813n.patch
new file mode 100644 (file)
index 0000000..d70a55a
--- /dev/null
@@ -0,0 +1,118 @@
+--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
++++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
+@@ -13,6 +13,7 @@
+ #include <linux/gpio_keys.h>
+ #include <linux/input.h>
+ #include <linux/pci_ids.h>
++#include <linux/platform_data/b53.h>
+ #include <linux/platform_device.h>
+ #include <linux/spi/spi.h>
+ #include <linux/spi/spi_gpio.h>
+@@ -4466,6 +4467,99 @@ static struct board_info __initdata boar
+       .has_ohci0 = 1,
+       .has_ehci0 = 1,
+ };
++
++static struct b53_platform_data WAP5813n_b53_pdata = {
++      .alias = "eth0",
++};
++
++static struct spi_board_info WAP5813n_spi_devices[] = {
++      {
++              .modalias = "b53-switch",
++              .max_speed_hz = 781000,
++              .bus_num = 0,
++              .chip_select = 0,
++              .platform_data = &WAP5813n_b53_pdata,
++      }
++};
++
++static struct board_info __initdata board_WAP5813n = {
++      .name                           = "96369R-1231N",
++      .expected_cpu_id                = 0x6368,
++
++      .has_uart0                      = 1,
++      .has_pci                        = 1,
++      .has_ohci0                      = 1,
++      .has_ehci0                      = 1,
++
++      .has_enetsw                     = 1,
++      .enetsw = {
++              .used_ports = {
++                      [4] = {
++                              .used = 1,
++                              .phy_id = 0xff,
++                              .bypass_link = 1,
++                              .force_speed = 1000,
++                              .force_duplex_full = 1,
++                              .name = "RGMII",
++                      },
++              },
++      },
++
++      .leds = {
++              {
++                      .name           = "WAP-5813n:green:power",
++                      .gpio           = 22,
++                      .default_trigger = "default-on",
++              },
++              {
++                      .name           = "WAP-5813n:red:power",
++                      .gpio           = 24,
++              },
++              {
++                      .name           = "WAP-5813n:green:inet",
++                      .gpio           = 5,
++              },
++              {
++                      .name           = "WAP-5813n:red:inet",
++                      .gpio           = 31,
++              },
++              {
++                      .name           = "WAP-5813n:green:wps",
++                      .gpio           = 23,
++                      .active_low     = 1,
++              },
++      },
++
++      .buttons = {
++              {
++                      .desc           = "wlan",
++                      .gpio           = 32,
++                      .active_low     = 1,
++                      .type           = EV_KEY,
++                      .code           = KEY_WLAN,
++                      .debounce_interval = BCM963XX_KEYS_DEBOUNCE_INTERVAL,
++              },
++              {
++                      .desc           = "reset",
++                      .gpio           = 34,
++                      .active_low     = 1,
++                      .type           = EV_KEY,
++                      .code           = KEY_RESTART,
++                      .debounce_interval = BCM963XX_KEYS_DEBOUNCE_INTERVAL,
++              },
++              {
++                      .desc           = "wps",
++                      .gpio           = 35,
++                      .active_low     = 1,
++                      .type           = EV_KEY,
++                      .code           = KEY_WPS_BUTTON,
++                      .debounce_interval = BCM963XX_KEYS_DEBOUNCE_INTERVAL,
++              },
++      },
++
++      .spis = WAP5813n_spi_devices,
++      .num_spis = ARRAY_SIZE(WAP5813n_spi_devices),
++};
+ #endif
+ /*
+@@ -4849,6 +4943,7 @@ static const struct board_info __initcon
+ #ifdef CONFIG_BCM63XX_CPU_6368
+       &board_96368mvwg,
+       &board_96368mvngr,
++      &board_WAP5813n,
+ #endif
+ #ifdef CONFIG_BCM63XX_CPU_63268
+       &board_963268bu_p300,