brcm63xx: add VW6339GU support

Completely untested except for booting from network; wan port
only works in 10/HD, lan1 only in 100/FD.

Signed-off-by: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 39678
This commit is contained in:
Jonas Gorski 2014-02-22 11:16:46 +00:00
parent 60edb75e47
commit f6c4b1eb29
3 changed files with 128 additions and 2 deletions

View file

@ -102,6 +102,13 @@ NB6)
ucidef_add_switch_vlan "switch0" "2" "0 9t"
;;
VW6339GU)
ucidef_set_interfaces_lan_wan "eth0.1" "eth0.2"
ucidef_add_switch "switch0" "1" "1"
ucidef_add_switch_vlan "switch0" "1" "0 1 2 3 8t"
ucidef_add_switch_vlan "switch0" "2" "4 8t"
;;
*)
ucidef_set_interfaces_lan_wan "eth1" "eth0"
;;

View file

@ -0,0 +1,119 @@
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
@@ -4538,6 +4538,108 @@ static struct board_info __initdata boar
},
},
};
+
+static struct board_info __initdata board_vw6339gu = {
+ .name = "VW6339GU",
+ .expected_cpu_id = 0x63268,
+
+ .has_uart0 = 1,
+
+ .has_ehci0 = 1,
+ .has_ohci0 = 1,
+ .num_usbh_ports = 1,
+
+ .has_enetsw = 1,
+
+ .enetsw = {
+ .used_ports = {
+ [0] = {
+ .used = 1,
+ .phy_id = 1,
+ .name = "LAN2",
+ },
+
+ [1] = {
+ .used = 1,
+ .phy_id = 2,
+ .name = "LAN3",
+ },
+
+ [2] = {
+ .used = 1,
+ .phy_id = 3,
+ .name = "LAN4",
+ },
+
+ [3] = {
+ .used = 1,
+ .phy_id = 4,
+ .name = "LAN1",
+ },
+
+ [4] = {
+ .used = 1,
+ .phy_id = 7,
+ .name = "WAN",
+ },
+ },
+ },
+
+ .leds = {
+ {
+ .name = "VW6339GU:green:power",
+ .gpio = 1,
+ .active_low = 1,
+ },
+ {
+ .name = "VW6339GU:red:power",
+ .gpio = 0,
+ .active_low = 1,
+ },
+ {
+ .name = "VW6339GU:green:internet",
+ .gpio = 8,
+ .active_low = 1,
+ },
+ {
+ .name = "VW6339GU:red:internet",
+ .gpio = 2,
+ .active_low = 1,
+ },
+ {
+ .name = "VW6339GU:green:dsl",
+ .gpio = 3,
+ .active_low = 1,
+ },
+ {
+ .name = "VW6339GU:green:wps",
+ .gpio = 7,
+ .active_low = 1,
+ },
+ {
+ .name = "VW6339GU:green:usb",
+ .gpio = 15,
+ .active_low = 1,
+ },
+ },
+
+ .buttons = {
+ {
+ .desc = "reset",
+ .gpio = 32,
+ .type = EV_KEY,
+ .code = KEY_RESTART,
+ .debounce_interval = BCM963XX_KEYS_DEBOUNCE_INTERVAL,
+ },
+ {
+ .desc = "wps",
+ .gpio = 34,
+ .type = EV_KEY,
+ .code = KEY_WPS_BUTTON,
+ .debounce_interval = BCM963XX_KEYS_DEBOUNCE_INTERVAL,
+ },
+ },
+};
#endif
/*
@@ -4628,6 +4730,7 @@ static const struct board_info __initcon
#endif
#ifdef CONFIG_BCM63XX_CPU_63268
&board_963269bhr,
+ &board_vw6339gu,
#endif
};

View file

@ -8,7 +8,7 @@
#include <linux/spi/spi.h>
#include <linux/spi/spi_gpio.h>
#include <linux/spi/74x164.h>
@@ -4636,7 +4637,7 @@ static const struct board_info __initcon
@@ -4739,7 +4740,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,
@@ -4656,6 +4657,7 @@ static struct ssb_sprom bcm63xx_sprom =
@@ -4759,6 +4760,7 @@ static struct ssb_sprom bcm63xx_sprom =
.boardflags_lo = 0x2848,
.boardflags_hi = 0x0000,
};