[OpenWrt-Devel] [PATCH][brcm63xx] Add support for Comtrend WAP-5813n

Álvaro Fernández Rojas noltari at gmail.com
Fri Jun 27 13:09:23 EDT 2014


This adds support for Comtrend WAP-5813n.

Signed-off-by: Álvaro Fernández Rojas <noltari at gmail.com>
---
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 c3babd8..f091523 100755
--- a/target/linux/brcm63xx/base-files/etc/uci-defaults/02_network
+++ b/target/linux/brcm63xx/base-files/etc/uci-defaults/02_network
@@ -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"
diff --git a/target/linux/brcm63xx/base-files/etc/uci-defaults/09_fix_crc b/target/linux/brcm63xx/base-files/etc/uci-defaults/09_fix_crc
index 2bb79cc..a2c0213 100755
--- a/target/linux/brcm63xx/base-files/etc/uci-defaults/09_fix_crc
+++ b/target/linux/brcm63xx/base-files/etc/uci-defaults/09_fix_crc
@@ -19,6 +19,7 @@ case "$board_name" in
 	963281TAN |\
 	963281T_TEF |\
 	96358-502V |\
+	96369R-1231N |\
 	"CPVA502+" |\
 	AW4339U |\
 	CPVA642 |\
diff --git a/target/linux/brcm63xx/base-files/lib/brcm63xx.sh b/target/linux/brcm63xx/base-files/lib/brcm63xx.sh
index 679fedd..c6b2d20 100755
--- a/target/linux/brcm63xx/base-files/lib/brcm63xx.sh
+++ b/target/linux/brcm63xx/base-files/lib/brcm63xx.sh
@@ -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"
diff --git a/target/linux/brcm63xx/image/Makefile b/target/linux/brcm63xx/image/Makefile
index 8f661d2..e0c77b6 100755
--- a/target/linux/brcm63xx/image/Makefile
+++ b/target/linux/brcm63xx/image/Makefile
@@ -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
index 0000000..d09c084
--- /dev/null
+++ b/target/linux/brcm63xx/patches-3.10/561-board_WAP-5813n.patch
@@ -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>
+@@ -4473,6 +4474,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
+ 
+ /*
+@@ -4856,6 +4950,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,
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 b3ced8d..73d2453 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
@@ -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>
-@@ -4869,7 +4870,7 @@ static const struct board_info __initcon
+@@ -4964,7 +4965,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,
-@@ -4889,6 +4890,7 @@ static struct ssb_sprom bcm63xx_sprom =
+@@ -4984,6 +4985,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
index 0000000..8b81aef
--- /dev/null
+++ b/target/linux/brcm63xx/patches-3.14/561-board_WAP-5813n.patch
@@ -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>
+@@ -4470,6 +4471,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
+ 
+ /*
+@@ -4853,6 +4947,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,
_______________________________________________
openwrt-devel mailing list
openwrt-devel at lists.openwrt.org
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel



More information about the openwrt-devel mailing list