From f6c4b1eb29ab3863ceafb52585884402d3e6020d Mon Sep 17 00:00:00 2001 From: Jonas Gorski Date: Sat, 22 Feb 2014 11:16:46 +0000 Subject: [PATCH] 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 SVN-Revision: 39678 --- .../base-files/etc/uci-defaults/02_network | 7 ++ .../patches-3.10/559-board_vw6339gu.patch | 119 ++++++++++++++++++ .../801-ssb_export_fallback_sprom.patch | 4 +- 3 files changed, 128 insertions(+), 2 deletions(-) create mode 100644 target/linux/brcm63xx/patches-3.10/559-board_vw6339gu.patch diff --git a/target/linux/brcm63xx/base-files/etc/uci-defaults/02_network b/target/linux/brcm63xx/base-files/etc/uci-defaults/02_network index 6233531ffd..93e2cb70f0 100755 --- a/target/linux/brcm63xx/base-files/etc/uci-defaults/02_network +++ b/target/linux/brcm63xx/base-files/etc/uci-defaults/02_network @@ -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" ;; diff --git a/target/linux/brcm63xx/patches-3.10/559-board_vw6339gu.patch b/target/linux/brcm63xx/patches-3.10/559-board_vw6339gu.patch new file mode 100644 index 0000000000..08e404601e --- /dev/null +++ b/target/linux/brcm63xx/patches-3.10/559-board_vw6339gu.patch @@ -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 + }; + diff --git a/target/linux/brcm63xx/patches-3.10/801-ssb_export_fallback_sprom.patch b/target/linux/brcm63xx/patches-3.10/801-ssb_export_fallback_sprom.patch index 178bad706a..9e7c9bbbff 100644 --- a/target/linux/brcm63xx/patches-3.10/801-ssb_export_fallback_sprom.patch +++ b/target/linux/brcm63xx/patches-3.10/801-ssb_export_fallback_sprom.patch @@ -8,7 +8,7 @@ #include #include #include -@@ -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, };