From 74ec41ef59538bc6d21a327fb046a4151952f70d Mon Sep 17 00:00:00 2001
From: Jonas Gorski <jogo@openwrt.org>
Date: Mon, 11 Aug 2014 11:37:21 +0000
Subject: [PATCH] brcm63xx: use dtb board detection for neufbox 4

This splits up neufbox 4 for now into two images, one for each OEM.

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

SVN-Revision: 42128
---
 target/linux/brcm63xx/dts/nb4-fxc-r1.dts      |   8 +
 target/linux/brcm63xx/dts/nb4-ser-r0.dts      |   8 +
 target/linux/brcm63xx/image/Makefile          |   6 +-
 .../brcm63xx/patches-3.14/501-board-NB4.patch | 363 +-----------------
 .../patches-3.14/502-board-96338W2_E7T.patch  |   2 +-
 .../patches-3.14/503-board-CPVA642.patch      |   4 +-
 .../504-board_dsl_274xb_rev_c.patch           |   6 +-
 .../patches-3.14/505-board_spw500v.patch      |   2 +-
 .../506-board_gw6200_gw6000.patch             |   2 +-
 .../patches-3.14/507-board-MAGIC.patch        |   2 +-
 .../patches-3.14/508-board_hw553.patch        |   8 +-
 .../patches-3.14/509-board_rta1320_16m.patch  |   2 +-
 .../patches-3.14/510-board_spw303v.patch      |   6 +-
 .../patches-3.14/511-board_V2500V.patch       |   4 +-
 .../patches-3.14/512-board_BTV2110.patch      |   2 +-
 .../patches-3.14/514-board_ct536_ct5621.patch |   2 +-
 .../patches-3.14/516-board_96348A-122.patch   |   2 +-
 .../patches-3.14/519_board_CPVA502plus.patch  |   2 +-
 ...63xx-add-support-for-96368MVWG-board.patch |   4 +-
 ...3xx-add-support-for-96368MVNgr-board.patch |   4 +-
 ...CM63XX-add-963281TAN-reference-board.patch |   2 +-
 .../524-board_dsl_274xb_rev_f.patch           |   2 +-
 .../patches-3.14/525-board_96348w3.patch      |   2 +-
 .../patches-3.14/526-board_CT6373-1.patch     |   8 +-
 .../527-board_dva-g3810bn-tl-1.patch          |   4 +-
 .../brcm63xx/patches-3.14/528-board_nb6.patch |   4 +-
 .../patches-3.14/529-board_fast2604.patch     |   2 +-
 .../patches-3.14/530-board_A4001N1.patch      |   2 +-
 .../patches-3.14/531-board_AR-5387un.patch    |   2 +-
 .../patches-3.14/532-board_AR-5381u.patch     |   2 +-
 .../patches-3.14/533-board_rta770bw.patch     |   2 +-
 .../patches-3.14/534-board_hw556.patch        |   6 +-
 .../patches-3.14/535-board_rta770w.patch      |   2 +-
 .../patches-3.14/536-board_fast2704.patch     |   2 +-
 .../patches-3.14/537-board_fast2504n.patch    |   4 +-
 .../patches-3.14/555-board_96318ref.patch     |   2 +-
 .../556-board_96318ref_p300.patch             |   2 +-
 .../patches-3.14/557-board_bcm963269bhr.patch |   4 +-
 .../patches-3.14/558-board_AR1004G.patch      |   2 +-
 .../patches-3.14/559-board_vw6339gu.patch     |   4 +-
 .../560-board_963268gu_p300.patch             |   4 +-
 .../patches-3.14/561-board_WAP-5813n.patch    |   4 +-
 .../patches-3.14/562-board_VR-3025u.patch     |   4 +-
 .../patches-3.14/563-board_VR-3025un.patch    |   4 +-
 .../564-board_P870HW-51a_v2.patch             |   4 +-
 .../patches-3.14/565-board_hw520.patch        |   6 +-
 .../patches-3.14/566-board_A4001N.patch       |   2 +-
 .../patches-3.14/567-board_dsl-2751b_e1.patch |   2 +-
 48 files changed, 96 insertions(+), 433 deletions(-)
 create mode 100644 target/linux/brcm63xx/dts/nb4-fxc-r1.dts
 create mode 100644 target/linux/brcm63xx/dts/nb4-ser-r0.dts

diff --git a/target/linux/brcm63xx/dts/nb4-fxc-r1.dts b/target/linux/brcm63xx/dts/nb4-fxc-r1.dts
new file mode 100644
index 0000000000..e04845fa42
--- /dev/null
+++ b/target/linux/brcm63xx/dts/nb4-fxc-r1.dts
@@ -0,0 +1,8 @@
+/dts-v1/;
+
+/include/ "bcm6358.dtsi"
+
+/ {
+	model = "SFR Neuf Box 4 (Foxconn)";
+	compatible = "sfr,nb4-fxc-r1", "brcm,bcm6358";
+};
diff --git a/target/linux/brcm63xx/dts/nb4-ser-r0.dts b/target/linux/brcm63xx/dts/nb4-ser-r0.dts
new file mode 100644
index 0000000000..9b82ccd8ba
--- /dev/null
+++ b/target/linux/brcm63xx/dts/nb4-ser-r0.dts
@@ -0,0 +1,8 @@
+/dts-v1/;
+
+/include/ "bcm6358.dtsi"
+
+/ {
+	model = "SFR Neuf Box 4 (Sercomm)";
+	compatible = "sfr,nb4-ser-r0", "brcm,bcm6358";
+};
diff --git a/target/linux/brcm63xx/image/Makefile b/target/linux/brcm63xx/image/Makefile
index 9f1389680e..096da43527 100755
--- a/target/linux/brcm63xx/image/Makefile
+++ b/target/linux/brcm63xx/image/Makefile
@@ -274,8 +274,6 @@ define Image/Build
 	$(call Image/Build/CFE,$(1),RTA1025W_16,6348,RTA1025W_16,,--layoutver 5)
 	# RTA1320_16M (numerous routers)
 	$(call Image/Build/CFE,$(1),RTA1320_16M,6338,RTA1320_16M,,--layoutver 5)
-	# Neufbox4
-	$(call Image/Build/CFE,$(1),96358VW,6358,NEUFBOX4,OpenWRT-$(REVISION))
 	# Zyxel P870HW-51a v2
 	$(call Image/Build/ZyXEL,$(1),96368VVW,P870HW-51a_v2,6368,P870HW-51a_v2,ZyXEL,--signature "ZyXEL_0001")
 
@@ -388,6 +386,10 @@ $(eval $(call HW556ImageDTB,hg556a-a,HW556-A))
 $(eval $(call HW556ImageDTB,hg556a-b,HW556-B))
 $(eval $(call HW556ImageDTB,hg556a-c,HW556-C))
 
+# SFR Neufbox 4
+$(eval $(call CfeImageDTB,nb4-ser-r0,96358VW,6358,NEUFBOX4-SER,OpenWRT-$(REVISION)))
+$(eval $(call CfeImageDTB,nb4-fxc-r1,96358VW,6358,NEUFBOX4-FXC,OpenWRT-$(REVISION)))
+
 # SFR neufbox 6
 $(call $(call CfeImageDTB,nb6-ser-r0,NB6-SER-r0,6362,NEUFBOX6,OpenWRT-$(REVISION)))
 
diff --git a/target/linux/brcm63xx/patches-3.14/501-board-NB4.patch b/target/linux/brcm63xx/patches-3.14/501-board-NB4.patch
index d2a337be55..fa485d5f4d 100644
--- a/target/linux/brcm63xx/patches-3.14/501-board-NB4.patch
+++ b/target/linux/brcm63xx/patches-3.14/501-board-NB4.patch
@@ -26,7 +26,7 @@
  /*
   * known 3368 boards
   */
-@@ -768,6 +780,605 @@ static struct board_info __initdata boar
+@@ -768,6 +780,270 @@ static struct board_info __initdata boar
  
  	.has_ohci0			= 1,
  };
@@ -72,6 +72,7 @@
 +
 +static struct board_info __initdata board_nb4_ser_r0 = {
 +	.name				= "NB4-SER-r0",
++	.of_board_id			= "sfr,nb4-ser-r0",
 +	.expected_cpu_id		= 0x6358,
 +
 +	.has_uart0			= 1,
@@ -184,236 +185,9 @@
 +	.num_spis = ARRAY_SIZE(nb4_spi_devices),
 +};
 +
-+static struct board_info __initdata board_nb4_ser_r1 = {
-+	.name				= "NB4-SER-r1",
-+	.expected_cpu_id		= 0x6358,
-+
-+	.has_uart0			= 1,
-+	.has_enet0			= 1,
-+	.has_enet1			= 1,
-+	.has_pci			= 1,
-+
-+	.enet0 = {
-+		.has_phy		= 1,
-+		.use_internal_phy	= 1,
-+	},
-+
-+	.enet1 = {
-+		.has_phy		= 1,
-+		.phy_id			= 0,
-+		.force_speed_100	= 1,
-+		.force_duplex_full	= 1,
-+	},
-+
-+
-+	.has_ohci0 = 1,
-+	.has_pccard = 1,
-+	.has_ehci0 = 1,
-+	.num_usbh_ports			= 2,
-+
-+	.leds = {
-+		{
-+			.name		= "NB4-SER-r1:white:adsl",
-+			.gpio		= NB4_74HC64_GPIO(4),
-+			.active_low	= 1,
-+		},
-+		{
-+			.name		= "NB4-SER-r1:white:traffic",
-+			.gpio		= 2,
-+			.active_low	= 1,
-+		},
-+		{
-+			.name		= "NB4-SER-r1:white:tel",
-+			.gpio		= NB4_74HC64_GPIO(3),
-+			.active_low	= 1,
-+		},
-+		{
-+			.name		= "NB4-SER-r1:white:tv",
-+			.gpio		= NB4_74HC64_GPIO(2),
-+			.active_low	= 1,
-+		},
-+		{
-+			.name		= "NB4-SER-r1:white:wifi",
-+			.gpio		= 15,
-+			.active_low	= 1,
-+		},
-+		{
-+			.name		= "NB4-SER-r1:white:alarm",
-+			.gpio		= NB4_74HC64_GPIO(0),
-+			.active_low	= 1,
-+		},
-+		{
-+			.name		= "NB4-SER-r1:red:service",
-+			.gpio		= 29,
-+			.active_low	= 1,
-+		},
-+		{
-+			.name		= "NB4-SER-r1:green:service",
-+			.gpio		= 30,
-+			.active_low	= 1,
-+		},
-+		{
-+			.name		= "NB4-SER-r1:blue:service",
-+			.gpio		= 4,
-+			.active_low	= 1,
-+		},
-+	},
-+	.buttons = {
-+		{
-+			.desc		= "reset",
-+			.gpio		= 34,
-+			.type		= EV_KEY,
-+			.code		= KEY_RESTART,
-+			.active_low	= 1,
-+			.debounce_interval = BCM963XX_KEYS_DEBOUNCE_INTERVAL,
-+		},
-+		{
-+			.desc		= "wps",
-+			.gpio		= 37,
-+			.type		= EV_KEY,
-+			.code		= KEY_WPS_BUTTON,
-+			.active_low	= 1,
-+			.debounce_interval = BCM963XX_KEYS_DEBOUNCE_INTERVAL,
-+		},
-+		{
-+			.desc		= "service",
-+			.gpio		= 27,
-+			.type		= EV_KEY,
-+			.code		= BTN_0,
-+			.active_low	= 1,
-+			.debounce_interval = BCM963XX_KEYS_DEBOUNCE_INTERVAL,
-+		},
-+		{
-+			.desc		= "clip",
-+			.gpio		= 31,
-+			.type		= EV_KEY,
-+			.code		= BTN_1,
-+			.active_low	= 1,
-+			.debounce_interval = BCM963XX_KEYS_DEBOUNCE_INTERVAL,
-+		},
-+	},
-+	.devs = nb4_devices,
-+	.num_devs = ARRAY_SIZE(nb4_devices),
-+	.spis = nb4_spi_devices,
-+	.num_spis = ARRAY_SIZE(nb4_spi_devices),
-+};
-+
-+static struct board_info __initdata board_nb4_ser_r2 = {
-+	.name				= "NB4-SER-r2",
-+	.expected_cpu_id		= 0x6358,
-+
-+	.has_uart0			= 1,
-+	.has_enet0			= 1,
-+	.has_enet1			= 1,
-+	.has_pci			= 1,
-+
-+	.enet0 = {
-+		.has_phy		= 1,
-+		.use_internal_phy	= 1,
-+	},
-+
-+	.enet1 = {
-+		.has_phy		= 1,
-+		.phy_id			= 0,
-+		.force_speed_100	= 1,
-+		.force_duplex_full	= 1,
-+	},
-+
-+
-+	.has_ohci0 = 1,
-+	.has_pccard = 1,
-+	.has_ehci0 = 1,
-+	.num_usbh_ports			= 2,
-+
-+	.leds = {
-+		{
-+			.name		= "NB4-SER-r2:white:adsl",
-+			.gpio		= NB4_74HC64_GPIO(4),
-+			.active_low	= 1,
-+		},
-+		{
-+			.name		= "NB4-SER-r2:white:traffic",
-+			.gpio		= 2,
-+			.active_low	= 1,
-+		},
-+		{
-+			.name		= "NB4-SER-r2:white:tel",
-+			.gpio		= NB4_74HC64_GPIO(3),
-+			.active_low	= 1,
-+		},
-+		{
-+			.name		= "NB4-SER-r2:white:tv",
-+			.gpio		= NB4_74HC64_GPIO(2),
-+			.active_low	= 1,
-+		},
-+		{
-+			.name		= "NB4-SER-r2:white:wifi",
-+			.gpio		= 15,
-+			.active_low	= 1,
-+		},
-+		{
-+			.name		= "NB4-SER-r2:white:alarm",
-+			.gpio		= NB4_74HC64_GPIO(0),
-+			.active_low	= 1,
-+		},
-+		{
-+			.name		= "NB4-SER-r2:red:service",
-+			.gpio		= 29,
-+			.active_low	= 1,
-+		},
-+		{
-+			.name		= "NB4-SER-r2:green:service",
-+			.gpio		= 30,
-+			.active_low	= 1,
-+		},
-+		{
-+			.name		= "NB4-SER-r2:blue:service",
-+			.gpio		= 4,
-+			.active_low	= 1,
-+		},
-+	},
-+	.buttons = {
-+		{
-+			.desc		= "reset",
-+			.gpio		= 34,
-+			.type		= EV_KEY,
-+			.code		= KEY_RESTART,
-+			.active_low	= 1,
-+			.debounce_interval = BCM963XX_KEYS_DEBOUNCE_INTERVAL,
-+		},
-+		{
-+			.desc		= "wps",
-+			.gpio		= 37,
-+			.type		= EV_KEY,
-+			.code		= KEY_WPS_BUTTON,
-+			.active_low	= 1,
-+			.debounce_interval = BCM963XX_KEYS_DEBOUNCE_INTERVAL,
-+		},
-+		{
-+			.desc		= "service",
-+			.gpio		= 27,
-+			.type		= EV_KEY,
-+			.code		= BTN_0,
-+			.active_low	= 1,
-+			.debounce_interval = BCM963XX_KEYS_DEBOUNCE_INTERVAL,
-+		},
-+		{
-+			.desc		= "clip",
-+			.gpio		= 31,
-+			.type		= EV_KEY,
-+			.code		= BTN_1,
-+			.active_low	= 1,
-+			.debounce_interval = BCM963XX_KEYS_DEBOUNCE_INTERVAL,
-+		},
-+	},
-+	.devs = nb4_devices,
-+	.num_devs = ARRAY_SIZE(nb4_devices),
-+	.spis = nb4_spi_devices,
-+	.num_spis = ARRAY_SIZE(nb4_spi_devices),
-+};
-+
 +static struct board_info __initdata board_nb4_fxc_r1 = {
 +	.name				= "NB4-FXC-r1",
++	.of_board_id			= "sfr,nb4-fxc-r1",
 +	.expected_cpu_id		= 0x6358,
 +
 +	.has_uart0			= 1,
@@ -519,145 +293,16 @@
 +	.num_devs = ARRAY_SIZE(nb4_devices),
 +	.spis = nb4_spi_devices,
 +	.num_spis = ARRAY_SIZE(nb4_spi_devices),
-+};
-+
-+static struct board_info __initdata board_nb4_fxc_r2 = {
-+	.name				= "NB4-FXC-r2",
-+	.expected_cpu_id		= 0x6358,
-+
-+	.has_uart0			= 1,
-+	.has_enet0			= 1,
-+	.has_enet1			= 1,
-+	.has_pci			= 1,
-+
-+	.enet0 = {
-+		.has_phy		= 1,
-+		.use_internal_phy	= 1,
-+	},
-+
-+	.enet1 = {
-+		.has_phy		= 1,
-+		.phy_id			= 0,
-+		.force_speed_100	= 1,
-+		.force_duplex_full	= 1,
-+	},
-+
-+
-+	.has_ohci0 = 1,
-+	.has_pccard = 1,
-+	.has_ehci0 = 1,
-+	.num_usbh_ports			= 2,
-+
-+	.leds = {
-+		{
-+			.name		= "NB4-FXC-r2:white:adsl",
-+			.gpio		= NB4_74HC64_GPIO(4),
-+			.active_low	= 1,
-+		},
-+		{
-+			.name		= "NB4-FXC-r2:white:traffic",
-+			.gpio		= 2,
-+		},
-+		{
-+			.name		= "NB4-FXC-r2:white:tel",
-+			.gpio		= NB4_74HC64_GPIO(3),
-+			.active_low	= 1,
-+		},
-+		{
-+			.name		= "NB4-FXC-r2:white:tv",
-+			.gpio		= NB4_74HC64_GPIO(2),
-+			.active_low	= 1,
-+		},
-+		{
-+			.name		= "NB4-FXC-r2:white:wifi",
-+			.gpio		= 15,
-+		},
-+		{
-+			.name		= "NB4-FXC-r2:white:alarm",
-+			.gpio		= NB4_74HC64_GPIO(0),
-+			.active_low	= 1,
-+		},
-+		{
-+			.name		= "NB4-FXC-r2:red:service",
-+			.gpio		= 29,
-+		},
-+		{
-+			.name		= "NB4-FXC-r2:green:service",
-+			.gpio		= 30,
-+		},
-+		{
-+			.name		= "NB4-FXC-r2:blue:service",
-+			.gpio		= 4,
-+		},
-+	},
-+	.buttons = {
-+		{
-+			.desc		= "reset",
-+			.gpio		= 34,
-+			.type		= EV_KEY,
-+			.code		= KEY_RESTART,
-+			.active_low	= 1,
-+			.debounce_interval = BCM963XX_KEYS_DEBOUNCE_INTERVAL,
-+		},
-+		{
-+			.desc		= "wps",
-+			.gpio		= 37,
-+			.type		= EV_KEY,
-+			.code		= KEY_WPS_BUTTON,
-+			.active_low	= 1,
-+			.debounce_interval = BCM963XX_KEYS_DEBOUNCE_INTERVAL,
-+		},
-+		{
-+			.desc		= "service",
-+			.gpio		= 27,
-+			.type		= EV_KEY,
-+			.code		= BTN_0,
-+			.active_low	= 1,
-+			.debounce_interval = BCM963XX_KEYS_DEBOUNCE_INTERVAL,
-+		},
-+		{
-+			.desc		= "clip",
-+			.gpio		= 31,
-+			.type		= EV_KEY,
-+			.code		= BTN_1,
-+			.active_low	= 1,
-+			.debounce_interval = BCM963XX_KEYS_DEBOUNCE_INTERVAL,
-+		},
-+	},
-+	.devs = nb4_devices,
-+	.num_devs = ARRAY_SIZE(nb4_devices),
-+	.spis = nb4_spi_devices,
-+	.num_spis = ARRAY_SIZE(nb4_spi_devices),
 +};
  #endif /* CONFIG_BCM63XX_CPU_6358 */
  
  /*
-@@ -804,6 +1415,11 @@ static const struct board_info __initcon
+@@ -804,6 +1080,8 @@ static const struct board_info __initcon
  	&board_96358vw2,
  	&board_AGPFS0,
  	&board_DWVS0,
 +	&board_nb4_ser_r0,
-+	&board_nb4_ser_r1,
-+	&board_nb4_ser_r2,
 +	&board_nb4_fxc_r1,
-+	&board_nb4_fxc_r2,
  #endif
  };
  
-@@ -812,6 +1428,16 @@ static void __init boardid_fixup(u8 *boo
- 	struct bcm_tag *tag = (struct bcm_tag *)(boot_addr + CFE_OFFSET_64K);
- 	char *board_name = (char *)bcm63xx_nvram_get_name();
- 
-+	if (BCMCPU_IS_6358() && (!strcmp(board_name, "96358VW"))) {
-+		u8 *p = boot_addr + NB4_PID_OFFSET;
-+
-+		/* Extract nb4 PID */
-+		if (!memcmp(p, "NB4-", 4)) {
-+			memcpy(board_name, p, sizeof("NB4-XXX-rX"));
-+			return;
-+		}
-+	}
-+
- 	/* check if bcm_tag is at 64k offset */
- 	if (strncmp(board_name, tag->board_id, BOARDID_LEN) != 0) {
- 		/* else try 128k */
diff --git a/target/linux/brcm63xx/patches-3.14/502-board-96338W2_E7T.patch b/target/linux/brcm63xx/patches-3.14/502-board-96338W2_E7T.patch
index 834c649001..26b3642d35 100644
--- a/target/linux/brcm63xx/patches-3.14/502-board-96338W2_E7T.patch
+++ b/target/linux/brcm63xx/patches-3.14/502-board-96338W2_E7T.patch
@@ -41,7 +41,7 @@
  #endif /* CONFIG_BCM63XX_CPU_6338 */
  
  /*
-@@ -1394,6 +1428,7 @@ static const struct board_info __initcon
+@@ -1059,6 +1093,7 @@ static const struct board_info __initcon
  #ifdef CONFIG_BCM63XX_CPU_6338
  	&board_96338gw,
  	&board_96338w,
diff --git a/target/linux/brcm63xx/patches-3.14/503-board-CPVA642.patch b/target/linux/brcm63xx/patches-3.14/503-board-CPVA642.patch
index 79f603c89a..1e664f506c 100644
--- a/target/linux/brcm63xx/patches-3.14/503-board-CPVA642.patch
+++ b/target/linux/brcm63xx/patches-3.14/503-board-CPVA642.patch
@@ -99,11 +99,11 @@
  static struct board_info __initdata board_AGPFS0 = {
  	.name				= "AGPF-S0",
  	.of_board_id			= "pirelli,agpf-s0",
-@@ -1449,6 +1541,7 @@ static const struct board_info __initcon
+@@ -1114,6 +1206,7 @@ static const struct board_info __initcon
  	&board_96358vw,
  	&board_96358vw2,
  	&board_AGPFS0,
 +	&board_CPVA642,
  	&board_DWVS0,
  	&board_nb4_ser_r0,
- 	&board_nb4_ser_r1,
+ 	&board_nb4_fxc_r1,
diff --git a/target/linux/brcm63xx/patches-3.14/504-board_dsl_274xb_rev_c.patch b/target/linux/brcm63xx/patches-3.14/504-board_dsl_274xb_rev_c.patch
index 3c823e9508..7602fe496f 100644
--- a/target/linux/brcm63xx/patches-3.14/504-board_dsl_274xb_rev_c.patch
+++ b/target/linux/brcm63xx/patches-3.14/504-board_dsl_274xb_rev_c.patch
@@ -63,11 +63,11 @@
  struct spi_gpio_platform_data nb4_spi_gpio_data = {
  	.sck		= NB4_SPI_GPIO_CLK,
  	.mosi		= NB4_SPI_GPIO_MOSI,
-@@ -1543,6 +1599,7 @@ static const struct board_info __initcon
+@@ -1208,6 +1264,7 @@ static const struct board_info __initcon
  	&board_AGPFS0,
  	&board_CPVA642,
  	&board_DWVS0,
 +	&board_dsl_274xb_rev_c,
  	&board_nb4_ser_r0,
- 	&board_nb4_ser_r1,
- 	&board_nb4_ser_r2,
+ 	&board_nb4_fxc_r1,
+ #endif
diff --git a/target/linux/brcm63xx/patches-3.14/505-board_spw500v.patch b/target/linux/brcm63xx/patches-3.14/505-board_spw500v.patch
index 25ae9cfd96..066ba30cb8 100644
--- a/target/linux/brcm63xx/patches-3.14/505-board_spw500v.patch
+++ b/target/linux/brcm63xx/patches-3.14/505-board_spw500v.patch
@@ -69,7 +69,7 @@
  #endif /* CONFIG_BCM63XX_CPU_6348 */
  
  /*
-@@ -1591,6 +1653,7 @@ static const struct board_info __initcon
+@@ -1256,6 +1318,7 @@ static const struct board_info __initcon
  	&board_96348gw_a,
  	&board_rta1025w_16,
  	&board_96348_D4PW,
diff --git a/target/linux/brcm63xx/patches-3.14/506-board_gw6200_gw6000.patch b/target/linux/brcm63xx/patches-3.14/506-board_gw6200_gw6000.patch
index dbc3da7cb3..cd10750e61 100644
--- a/target/linux/brcm63xx/patches-3.14/506-board_gw6200_gw6000.patch
+++ b/target/linux/brcm63xx/patches-3.14/506-board_gw6200_gw6000.patch
@@ -115,7 +115,7 @@
  static struct board_info __initdata board_FAST2404 = {
  	.name				= "F@ST2404",
  	.of_board_id			= "sagem,f@st2404",
-@@ -1646,6 +1754,8 @@ static const struct board_info __initcon
+@@ -1311,6 +1419,8 @@ static const struct board_info __initcon
  #ifdef CONFIG_BCM63XX_CPU_6348
  	&board_96348r,
  	&board_96348gw,
diff --git a/target/linux/brcm63xx/patches-3.14/507-board-MAGIC.patch b/target/linux/brcm63xx/patches-3.14/507-board-MAGIC.patch
index fde98c40f4..76470b9da1 100644
--- a/target/linux/brcm63xx/patches-3.14/507-board-MAGIC.patch
+++ b/target/linux/brcm63xx/patches-3.14/507-board-MAGIC.patch
@@ -79,7 +79,7 @@
  #endif /* CONFIG_BCM63XX_CPU_6348 */
  
  /*
-@@ -1764,6 +1836,7 @@ static const struct board_info __initcon
+@@ -1429,6 +1501,7 @@ static const struct board_info __initcon
  	&board_rta1025w_16,
  	&board_96348_D4PW,
  	&board_spw500v,
diff --git a/target/linux/brcm63xx/patches-3.14/508-board_hw553.patch b/target/linux/brcm63xx/patches-3.14/508-board_hw553.patch
index 8429ddaf27..825a3c4dc0 100644
--- a/target/linux/brcm63xx/patches-3.14/508-board_hw553.patch
+++ b/target/linux/brcm63xx/patches-3.14/508-board_hw553.patch
@@ -1,6 +1,6 @@
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -1803,6 +1803,83 @@ static struct board_info __initdata boar
+@@ -1468,6 +1468,83 @@ static struct board_info __initdata boar
  	.spis = nb4_spi_devices,
  	.num_spis = ARRAY_SIZE(nb4_spi_devices),
  };
@@ -84,10 +84,10 @@
  #endif /* CONFIG_BCM63XX_CPU_6358 */
  
  /*
-@@ -1851,6 +1928,7 @@ static const struct board_info __initcon
- 	&board_nb4_ser_r2,
+@@ -1513,6 +1590,7 @@ static const struct board_info __initcon
+ 	&board_dsl_274xb_rev_c,
+ 	&board_nb4_ser_r0,
  	&board_nb4_fxc_r1,
- 	&board_nb4_fxc_r2,
 +	&board_HW553,
  #endif
  };
diff --git a/target/linux/brcm63xx/patches-3.14/509-board_rta1320_16m.patch b/target/linux/brcm63xx/patches-3.14/509-board_rta1320_16m.patch
index eea9e61254..b93138ee72 100644
--- a/target/linux/brcm63xx/patches-3.14/509-board_rta1320_16m.patch
+++ b/target/linux/brcm63xx/patches-3.14/509-board_rta1320_16m.patch
@@ -46,7 +46,7 @@
  #endif /* CONFIG_BCM63XX_CPU_6338 */
  
  /*
-@@ -1896,6 +1935,7 @@ static const struct board_info __initcon
+@@ -1561,6 +1600,7 @@ static const struct board_info __initcon
  	&board_96338gw,
  	&board_96338w,
  	&board_96338w2_e7t,
diff --git a/target/linux/brcm63xx/patches-3.14/510-board_spw303v.patch b/target/linux/brcm63xx/patches-3.14/510-board_spw303v.patch
index 70c0626c8a..36e07ded02 100644
--- a/target/linux/brcm63xx/patches-3.14/510-board_spw303v.patch
+++ b/target/linux/brcm63xx/patches-3.14/510-board_spw303v.patch
@@ -1,6 +1,6 @@
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -1919,6 +1919,72 @@ static struct board_info __initdata boar
+@@ -1584,6 +1584,72 @@ static struct board_info __initdata boar
  		.pci_dev			= 1,
  	},
  };
@@ -73,9 +73,9 @@
  #endif /* CONFIG_BCM63XX_CPU_6358 */
  
  /*
-@@ -1969,6 +2035,7 @@ static const struct board_info __initcon
+@@ -1631,6 +1697,7 @@ static const struct board_info __initcon
+ 	&board_nb4_ser_r0,
  	&board_nb4_fxc_r1,
- 	&board_nb4_fxc_r2,
  	&board_HW553,
 +	&board_spw303v,
  #endif
diff --git a/target/linux/brcm63xx/patches-3.14/511-board_V2500V.patch b/target/linux/brcm63xx/patches-3.14/511-board_V2500V.patch
index 97cf046fd9..df285c5cbf 100644
--- a/target/linux/brcm63xx/patches-3.14/511-board_V2500V.patch
+++ b/target/linux/brcm63xx/patches-3.14/511-board_V2500V.patch
@@ -66,7 +66,7 @@
  #endif /* CONFIG_BCM63XX_CPU_6348 */
  
  /*
-@@ -2020,6 +2079,7 @@ static const struct board_info __initcon
+@@ -1685,6 +1744,7 @@ static const struct board_info __initcon
  	&board_96348_D4PW,
  	&board_spw500v,
  	&board_96348sv,
@@ -74,7 +74,7 @@
  #endif
  
  #ifdef CONFIG_BCM63XX_CPU_6358
-@@ -2095,6 +2155,22 @@ void __init board_bcm963xx_init(void)
+@@ -1747,6 +1807,22 @@ void __init board_bcm963xx_init(void)
  		val &= MPI_CSBASE_BASE_MASK;
  	}
  	boot_addr = (u8 *)KSEG1ADDR(val);
diff --git a/target/linux/brcm63xx/patches-3.14/512-board_BTV2110.patch b/target/linux/brcm63xx/patches-3.14/512-board_BTV2110.patch
index 3a7afc8bdb..d7aa71faad 100644
--- a/target/linux/brcm63xx/patches-3.14/512-board_BTV2110.patch
+++ b/target/linux/brcm63xx/patches-3.14/512-board_BTV2110.patch
@@ -65,7 +65,7 @@
  static struct board_info __initdata board_96348gw = {
  	.name				= "96348GW",
  	.of_board_id			= "brcm,bcm96348gw",
-@@ -2080,6 +2138,7 @@ static const struct board_info __initcon
+@@ -1745,6 +1803,7 @@ static const struct board_info __initcon
  	&board_spw500v,
  	&board_96348sv,
  	&board_V2500V_BB,
diff --git a/target/linux/brcm63xx/patches-3.14/514-board_ct536_ct5621.patch b/target/linux/brcm63xx/patches-3.14/514-board_ct536_ct5621.patch
index c4c84472ef..95d7b6d125 100644
--- a/target/linux/brcm63xx/patches-3.14/514-board_ct536_ct5621.patch
+++ b/target/linux/brcm63xx/patches-3.14/514-board_ct536_ct5621.patch
@@ -60,7 +60,7 @@
  static struct board_info __initdata board_96348gw = {
  	.name				= "96348GW",
  	.of_board_id			= "brcm,bcm96348gw",
-@@ -2139,6 +2192,7 @@ static const struct board_info __initcon
+@@ -1804,6 +1857,7 @@ static const struct board_info __initcon
  	&board_96348sv,
  	&board_V2500V_BB,
  	&board_V2110,
diff --git a/target/linux/brcm63xx/patches-3.14/516-board_96348A-122.patch b/target/linux/brcm63xx/patches-3.14/516-board_96348A-122.patch
index 5225ebb237..7473b53e48 100644
--- a/target/linux/brcm63xx/patches-3.14/516-board_96348A-122.patch
+++ b/target/linux/brcm63xx/patches-3.14/516-board_96348A-122.patch
@@ -77,7 +77,7 @@
  static struct board_info __initdata board_96348gw = {
  	.name				= "96348GW",
  	.of_board_id			= "brcm,bcm96348gw",
-@@ -2196,6 +2266,7 @@ static const struct board_info __initcon
+@@ -1861,6 +1931,7 @@ static const struct board_info __initcon
  	&board_V2500V_BB,
  	&board_V2110,
  	&board_ct536_ct5621,
diff --git a/target/linux/brcm63xx/patches-3.14/519_board_CPVA502plus.patch b/target/linux/brcm63xx/patches-3.14/519_board_CPVA502plus.patch
index 53ed712f68..0713fbceca 100644
--- a/target/linux/brcm63xx/patches-3.14/519_board_CPVA502plus.patch
+++ b/target/linux/brcm63xx/patches-3.14/519_board_CPVA502plus.patch
@@ -41,7 +41,7 @@
  
  static struct board_info __initdata board_ct536_ct5621 = {
  	.name				= "CT536_CT5621",
-@@ -2268,6 +2302,7 @@ static const struct board_info __initcon
+@@ -1933,6 +1967,7 @@ static const struct board_info __initcon
  	&board_V2110,
  	&board_ct536_ct5621,
  	&board_96348A_122,
diff --git a/target/linux/brcm63xx/patches-3.14/520-bcm63xx-add-support-for-96368MVWG-board.patch b/target/linux/brcm63xx/patches-3.14/520-bcm63xx-add-support-for-96368MVWG-board.patch
index 7f5318f7ed..8d1b53e8c6 100644
--- a/target/linux/brcm63xx/patches-3.14/520-bcm63xx-add-support-for-96368MVWG-board.patch
+++ b/target/linux/brcm63xx/patches-3.14/520-bcm63xx-add-support-for-96368MVWG-board.patch
@@ -10,7 +10,7 @@ Subject: [PATCH 32/63] bcm63xx: add support for 96368MVWG board.
 
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -2266,6 +2266,85 @@ static struct board_info __initdata boar
+@@ -1931,6 +1931,85 @@ static struct board_info __initdata boar
  #endif /* CONFIG_BCM63XX_CPU_6358 */
  
  /*
@@ -96,7 +96,7 @@ Subject: [PATCH 32/63] bcm63xx: add support for 96368MVWG board.
   * all boards
   */
  static const struct board_info __initconst *bcm963xx_boards[] = {
-@@ -2320,6 +2399,10 @@ static const struct board_info __initcon
+@@ -1982,6 +2061,10 @@ static const struct board_info __initcon
  	&board_HW553,
  	&board_spw303v,
  #endif
diff --git a/target/linux/brcm63xx/patches-3.14/521-bcm63xx-add-support-for-96368MVNgr-board.patch b/target/linux/brcm63xx/patches-3.14/521-bcm63xx-add-support-for-96368MVNgr-board.patch
index ae83fba443..6342a76a80 100644
--- a/target/linux/brcm63xx/patches-3.14/521-bcm63xx-add-support-for-96368MVNgr-board.patch
+++ b/target/linux/brcm63xx/patches-3.14/521-bcm63xx-add-support-for-96368MVNgr-board.patch
@@ -9,7 +9,7 @@ Subject: [PATCH 33/63] bcm63xx: add support for 96368MVNgr board.
 
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -2342,6 +2342,72 @@ static struct board_info __initdata boar
+@@ -2007,6 +2007,72 @@ static struct board_info __initdata boar
  	.has_ohci0 = 1,
  	.has_ehci0 = 1,
  };
@@ -82,7 +82,7 @@ Subject: [PATCH 33/63] bcm63xx: add support for 96368MVNgr board.
  #endif /* CONFIG_BCM63XX_CPU_6368 */
  
  /*
-@@ -2402,6 +2468,7 @@ static const struct board_info __initcon
+@@ -2064,6 +2130,7 @@ static const struct board_info __initcon
  
  #ifdef CONFIG_BCM63XX_CPU_6368
  	&board_96368mvwg,
diff --git a/target/linux/brcm63xx/patches-3.14/523-MIPS-BCM63XX-add-963281TAN-reference-board.patch b/target/linux/brcm63xx/patches-3.14/523-MIPS-BCM63XX-add-963281TAN-reference-board.patch
index 09e25f7060..71a0c01b67 100644
--- a/target/linux/brcm63xx/patches-3.14/523-MIPS-BCM63XX-add-963281TAN-reference-board.patch
+++ b/target/linux/brcm63xx/patches-3.14/523-MIPS-BCM63XX-add-963281TAN-reference-board.patch
@@ -86,7 +86,7 @@ Subject: [PATCH] MIPS: BCM63XX: add 963281TAN reference board
  #endif /* CONFIG_BCM63XX_CPU_6328 */
  
  /*
-@@ -2451,6 +2521,7 @@ static const struct board_info __initcon
+@@ -2116,6 +2186,7 @@ static const struct board_info __initcon
  #endif
  #ifdef CONFIG_BCM63XX_CPU_6328
  	&board_96328avng,
diff --git a/target/linux/brcm63xx/patches-3.14/524-board_dsl_274xb_rev_f.patch b/target/linux/brcm63xx/patches-3.14/524-board_dsl_274xb_rev_f.patch
index 33ff4c0fad..ea803bf63b 100644
--- a/target/linux/brcm63xx/patches-3.14/524-board_dsl_274xb_rev_f.patch
+++ b/target/linux/brcm63xx/patches-3.14/524-board_dsl_274xb_rev_f.patch
@@ -122,7 +122,7 @@ Subject: [PATCH 70/79] MIPS: BCM63XX: Add board definition for D-Link
  #endif /* CONFIG_BCM63XX_CPU_6328 */
  
  /*
-@@ -2522,6 +2627,7 @@ static const struct board_info __initcon
+@@ -2187,6 +2292,7 @@ static const struct board_info __initcon
  #ifdef CONFIG_BCM63XX_CPU_6328
  	&board_96328avng,
  	&board_963281TAN,
diff --git a/target/linux/brcm63xx/patches-3.14/525-board_96348w3.patch b/target/linux/brcm63xx/patches-3.14/525-board_96348w3.patch
index 03f84603b6..d1e3229b79 100644
--- a/target/linux/brcm63xx/patches-3.14/525-board_96348w3.patch
+++ b/target/linux/brcm63xx/patches-3.14/525-board_96348w3.patch
@@ -60,7 +60,7 @@
  static struct board_info __initdata board_96348_D4PW = {
  	.name				= "D-4P-W",
  	.expected_cpu_id		= 0x6348,
-@@ -2657,6 +2710,7 @@ static const struct board_info __initcon
+@@ -2322,6 +2375,7 @@ static const struct board_info __initcon
  	&board_ct536_ct5621,
  	&board_96348A_122,
  	&board_CPVA502plus,
diff --git a/target/linux/brcm63xx/patches-3.14/526-board_CT6373-1.patch b/target/linux/brcm63xx/patches-3.14/526-board_CT6373-1.patch
index 9bd8d1fb01..cf0e149e12 100644
--- a/target/linux/brcm63xx/patches-3.14/526-board_CT6373-1.patch
+++ b/target/linux/brcm63xx/patches-3.14/526-board_CT6373-1.patch
@@ -13,7 +13,7 @@
  /*
   * known 3368 boards
   */
-@@ -2381,6 +2387,124 @@ static struct board_info __initdata boar
+@@ -2046,6 +2052,124 @@ static struct board_info __initdata boar
  	.num_spis = ARRAY_SIZE(nb4_spi_devices),
  };
  
@@ -138,10 +138,10 @@
  static struct board_info __initdata board_HW553 = {
  	.name                           = "HW553",
  	.expected_cpu_id                = 0x6358,
-@@ -2725,6 +2849,7 @@ static const struct board_info __initcon
- 	&board_nb4_ser_r2,
+@@ -2387,6 +2511,7 @@ static const struct board_info __initcon
+ 	&board_dsl_274xb_rev_c,
+ 	&board_nb4_ser_r0,
  	&board_nb4_fxc_r1,
- 	&board_nb4_fxc_r2,
 +	&board_ct6373_1,
  	&board_HW553,
  	&board_spw303v,
diff --git a/target/linux/brcm63xx/patches-3.14/527-board_dva-g3810bn-tl-1.patch b/target/linux/brcm63xx/patches-3.14/527-board_dva-g3810bn-tl-1.patch
index 95caac8a6e..fbec0e8212 100644
--- a/target/linux/brcm63xx/patches-3.14/527-board_dva-g3810bn-tl-1.patch
+++ b/target/linux/brcm63xx/patches-3.14/527-board_dva-g3810bn-tl-1.patch
@@ -1,6 +1,6 @@
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -2647,6 +2647,74 @@ static struct board_info __initdata boar
+@@ -2312,6 +2312,74 @@ static struct board_info __initdata boar
  		},
  	}
  };
@@ -75,7 +75,7 @@
  #endif /* CONFIG_BCM63XX_CPU_6358 */
  
  /*
-@@ -2852,6 +2920,7 @@ static const struct board_info __initcon
+@@ -2514,6 +2582,7 @@ static const struct board_info __initcon
  	&board_ct6373_1,
  	&board_HW553,
  	&board_spw303v,
diff --git a/target/linux/brcm63xx/patches-3.14/528-board_nb6.patch b/target/linux/brcm63xx/patches-3.14/528-board_nb6.patch
index 9754c00fdf..e4c8f55d0d 100644
--- a/target/linux/brcm63xx/patches-3.14/528-board_nb6.patch
+++ b/target/linux/brcm63xx/patches-3.14/528-board_nb6.patch
@@ -17,7 +17,7 @@
  
  #define CT6373_PID_OFFSET		0xff80
  #define CT6373_74X164_GPIO_BASE	64
-@@ -2717,6 +2720,105 @@ static struct board_info __initdata boar
+@@ -2382,6 +2385,105 @@ static struct board_info __initdata boar
  };
  #endif /* CONFIG_BCM63XX_CPU_6358 */
  
@@ -123,7 +123,7 @@
  /*
   * known 6368 boards
   */
-@@ -2923,6 +3025,10 @@ static const struct board_info __initcon
+@@ -2585,6 +2687,10 @@ static const struct board_info __initcon
  	&board_DVAG3810BN,
  #endif
  
diff --git a/target/linux/brcm63xx/patches-3.14/529-board_fast2604.patch b/target/linux/brcm63xx/patches-3.14/529-board_fast2604.patch
index dbbe383bee..4f5881934e 100644
--- a/target/linux/brcm63xx/patches-3.14/529-board_fast2604.patch
+++ b/target/linux/brcm63xx/patches-3.14/529-board_fast2604.patch
@@ -58,7 +58,7 @@
  static struct board_info __initdata board_rta1025w_16 = {
  	.name				= "RTA1025W_16",
  	.of_board_id			= "dynalink,rta1025w",
-@@ -2993,6 +3044,7 @@ static const struct board_info __initcon
+@@ -2658,6 +2709,7 @@ static const struct board_info __initcon
  	&board_96348gw_10,
  	&board_96348gw_11,
  	&board_FAST2404,
diff --git a/target/linux/brcm63xx/patches-3.14/530-board_A4001N1.patch b/target/linux/brcm63xx/patches-3.14/530-board_A4001N1.patch
index 318c2bc9b4..e00a4e2859 100644
--- a/target/linux/brcm63xx/patches-3.14/530-board_A4001N1.patch
+++ b/target/linux/brcm63xx/patches-3.14/530-board_A4001N1.patch
@@ -134,7 +134,7 @@
  static struct board_info __initdata board_dsl_274xb_f1 = {
  	.name				= "AW4339U",
  	.expected_cpu_id		= 0x6328,
-@@ -3025,6 +3152,7 @@ static const struct board_info __initcon
+@@ -2690,6 +2817,7 @@ static const struct board_info __initcon
  #ifdef CONFIG_BCM63XX_CPU_6328
  	&board_96328avng,
  	&board_963281TAN,
diff --git a/target/linux/brcm63xx/patches-3.14/531-board_AR-5387un.patch b/target/linux/brcm63xx/patches-3.14/531-board_AR-5387un.patch
index 14b5791f27..ae3108fb26 100644
--- a/target/linux/brcm63xx/patches-3.14/531-board_AR-5387un.patch
+++ b/target/linux/brcm63xx/patches-3.14/531-board_AR-5387un.patch
@@ -116,7 +116,7 @@
  static struct board_info __initdata board_963281TAN = {
  	.name				= "963281TAN",
  	.expected_cpu_id		= 0x6328,
-@@ -3151,6 +3260,7 @@ static const struct board_info __initcon
+@@ -2816,6 +2925,7 @@ static const struct board_info __initcon
  #endif
  #ifdef CONFIG_BCM63XX_CPU_6328
  	&board_96328avng,
diff --git a/target/linux/brcm63xx/patches-3.14/532-board_AR-5381u.patch b/target/linux/brcm63xx/patches-3.14/532-board_AR-5381u.patch
index a095d371e7..b26a8430f6 100644
--- a/target/linux/brcm63xx/patches-3.14/532-board_AR-5381u.patch
+++ b/target/linux/brcm63xx/patches-3.14/532-board_AR-5381u.patch
@@ -92,7 +92,7 @@
  static struct sprom_fixup __initdata ar5387un_fixups[] = {
  	{ .offset = 2, .value = 0x05bb },
  	{ .offset = 65, .value = 0x1204 },
-@@ -3260,6 +3345,7 @@ static const struct board_info __initcon
+@@ -2925,6 +3010,7 @@ static const struct board_info __initcon
  #endif
  #ifdef CONFIG_BCM63XX_CPU_6328
  	&board_96328avng,
diff --git a/target/linux/brcm63xx/patches-3.14/533-board_rta770bw.patch b/target/linux/brcm63xx/patches-3.14/533-board_rta770bw.patch
index a1c13366c2..9a8d673151 100644
--- a/target/linux/brcm63xx/patches-3.14/533-board_rta770bw.patch
+++ b/target/linux/brcm63xx/patches-3.14/533-board_rta770bw.patch
@@ -56,7 +56,7 @@
  #endif /* CONFIG_BCM63XX_CPU_6345 */
  
  /*
-@@ -3359,6 +3408,7 @@ static const struct board_info __initcon
+@@ -3024,6 +3073,7 @@ static const struct board_info __initcon
  #endif
  #ifdef CONFIG_BCM63XX_CPU_6345
  	&board_96345gw2,
diff --git a/target/linux/brcm63xx/patches-3.14/534-board_hw556.patch b/target/linux/brcm63xx/patches-3.14/534-board_hw556.patch
index 5f16956033..64e1b4898a 100644
--- a/target/linux/brcm63xx/patches-3.14/534-board_hw556.patch
+++ b/target/linux/brcm63xx/patches-3.14/534-board_hw556.patch
@@ -8,7 +8,7 @@
  #include <linux/platform_device.h>
  #include <linux/spi/spi.h>
  #include <linux/spi/spi_gpio.h>
-@@ -3006,6 +3007,495 @@ static struct board_info __initdata boar
+@@ -2671,6 +2672,495 @@ static struct board_info __initdata boar
  	},
  };
  
@@ -504,8 +504,8 @@
   /* T-Home Speedport W 303V Typ B */
  static struct board_info __initdata board_spw303v = {
  	.name			= "96358-502V",
-@@ -3447,6 +3937,10 @@ static const struct board_info __initcon
- 	&board_nb4_fxc_r2,
+@@ -3109,6 +3599,10 @@ static const struct board_info __initcon
+ 	&board_nb4_fxc_r1,
  	&board_ct6373_1,
  	&board_HW553,
 +	&board_HW556,
diff --git a/target/linux/brcm63xx/patches-3.14/535-board_rta770w.patch b/target/linux/brcm63xx/patches-3.14/535-board_rta770w.patch
index dd7ac06645..732becf19d 100644
--- a/target/linux/brcm63xx/patches-3.14/535-board_rta770w.patch
+++ b/target/linux/brcm63xx/patches-3.14/535-board_rta770w.patch
@@ -61,7 +61,7 @@
  #endif /* CONFIG_BCM63XX_CPU_6345 */
  
  /*
-@@ -3899,6 +3953,7 @@ static const struct board_info __initcon
+@@ -3564,6 +3618,7 @@ static const struct board_info __initcon
  #ifdef CONFIG_BCM63XX_CPU_6345
  	&board_96345gw2,
  	&board_rta770bw,
diff --git a/target/linux/brcm63xx/patches-3.14/536-board_fast2704.patch b/target/linux/brcm63xx/patches-3.14/536-board_fast2704.patch
index 928bcb32ac..50af2c6100 100644
--- a/target/linux/brcm63xx/patches-3.14/536-board_fast2704.patch
+++ b/target/linux/brcm63xx/patches-3.14/536-board_fast2704.patch
@@ -135,7 +135,7 @@ Signed-off-by: Marcin Jurkowski <marcin1j@gmail.com>
  #endif /* CONFIG_BCM63XX_CPU_6328 */
  
  /*
-@@ -3943,6 +4059,7 @@ static const struct board_info __initcon
+@@ -3608,6 +3724,7 @@ static const struct board_info __initcon
  	&board_963281TAN,
  	&board_A4001N1,
  	&board_dsl_274xb_f1,
diff --git a/target/linux/brcm63xx/patches-3.14/537-board_fast2504n.patch b/target/linux/brcm63xx/patches-3.14/537-board_fast2504n.patch
index 8328aeb240..2dea10f25e 100644
--- a/target/linux/brcm63xx/patches-3.14/537-board_fast2504n.patch
+++ b/target/linux/brcm63xx/patches-3.14/537-board_fast2504n.patch
@@ -6,7 +6,7 @@ Signed-off-by: Max Staudt <openwrt.max@enpas.org>
 ---
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -3898,6 +3898,96 @@ static struct board_info __initdata boar
+@@ -3563,6 +3563,96 @@ static struct board_info __initdata boar
  	.devs = nb6_devices,
  	.num_devs = ARRAY_SIZE(nb6_devices),
  };
@@ -103,7 +103,7 @@ Signed-off-by: Max Staudt <openwrt.max@enpas.org>
  #endif /* CONFIG_BCM63XX_CPU_6362 */
  
  /*
-@@ -4119,6 +4209,7 @@ static const struct board_info __initcon
+@@ -3781,6 +3871,7 @@ static const struct board_info __initcon
  
  #ifdef CONFIG_BCM63XX_CPU_6362
  	&board_nb6,
diff --git a/target/linux/brcm63xx/patches-3.14/555-board_96318ref.patch b/target/linux/brcm63xx/patches-3.14/555-board_96318ref.patch
index 85e2e83c5f..ff90a31ce5 100644
--- a/target/linux/brcm63xx/patches-3.14/555-board_96318ref.patch
+++ b/target/linux/brcm63xx/patches-3.14/555-board_96318ref.patch
@@ -94,7 +94,7 @@
   * known 6328 boards
   */
  #ifdef CONFIG_BCM63XX_CPU_6328
-@@ -4373,6 +4460,9 @@ static const struct board_info __initcon
+@@ -4038,6 +4125,9 @@ static const struct board_info __initcon
  #ifdef CONFIG_BCM63XX_CPU_3368
  	&board_cvg834g,
  #endif
diff --git a/target/linux/brcm63xx/patches-3.14/556-board_96318ref_p300.patch b/target/linux/brcm63xx/patches-3.14/556-board_96318ref_p300.patch
index db6138d291..926c37e0b6 100644
--- a/target/linux/brcm63xx/patches-3.14/556-board_96318ref_p300.patch
+++ b/target/linux/brcm63xx/patches-3.14/556-board_96318ref_p300.patch
@@ -95,7 +95,7 @@
  #endif /* CONFIG_BCM63XX_CPU_6318 */
  
  /*
-@@ -4462,6 +4550,7 @@ static const struct board_info __initcon
+@@ -4127,6 +4215,7 @@ static const struct board_info __initcon
  #endif
  #ifdef CONFIG_BCM63XX_CPU_6318
  	&board_96318ref,
diff --git a/target/linux/brcm63xx/patches-3.14/557-board_bcm963269bhr.patch b/target/linux/brcm63xx/patches-3.14/557-board_bcm963269bhr.patch
index 1a9c6bcdaf..f983d18f9b 100644
--- a/target/linux/brcm63xx/patches-3.14/557-board_bcm963269bhr.patch
+++ b/target/linux/brcm63xx/patches-3.14/557-board_bcm963269bhr.patch
@@ -1,6 +1,6 @@
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -4542,6 +4542,75 @@ static struct board_info __initdata boar
+@@ -4207,6 +4207,75 @@ static struct board_info __initdata boar
  #endif /* CONFIG_BCM63XX_CPU_6368 */
  
  /*
@@ -76,7 +76,7 @@
   * all boards
   */
  static const struct board_info __initconst *bcm963xx_boards[] = {
-@@ -4626,6 +4695,9 @@ static const struct board_info __initcon
+@@ -4288,6 +4357,9 @@ static const struct board_info __initcon
  	&board_96368mvwg,
  	&board_96368mvngr,
  #endif
diff --git a/target/linux/brcm63xx/patches-3.14/558-board_AR1004G.patch b/target/linux/brcm63xx/patches-3.14/558-board_AR1004G.patch
index 0e326180fb..cd7cd12773 100644
--- a/target/linux/brcm63xx/patches-3.14/558-board_AR1004G.patch
+++ b/target/linux/brcm63xx/patches-3.14/558-board_AR1004G.patch
@@ -61,7 +61,7 @@ Signed-off-by: Adrian Feliks <mexit@o2.pl>
  
  /* BT Voyager 2110 */
  static struct board_info __initdata board_V2110 = {
-@@ -4662,6 +4708,7 @@ static const struct board_info __initcon
+@@ -4327,6 +4373,7 @@ static const struct board_info __initcon
  	&board_96348A_122,
  	&board_CPVA502plus,
  	&board_96348W3,
diff --git a/target/linux/brcm63xx/patches-3.14/559-board_vw6339gu.patch b/target/linux/brcm63xx/patches-3.14/559-board_vw6339gu.patch
index c18d354913..083b59fd11 100644
--- a/target/linux/brcm63xx/patches-3.14/559-board_vw6339gu.patch
+++ b/target/linux/brcm63xx/patches-3.14/559-board_vw6339gu.patch
@@ -1,6 +1,6 @@
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -4654,6 +4654,108 @@ static struct board_info __initdata boar
+@@ -4319,6 +4319,108 @@ static struct board_info __initdata boar
  		},
  	},
  };
@@ -109,7 +109,7 @@
  #endif /* CONFIG_BCM63XX_CPU_63268 */
  
  /*
-@@ -4744,6 +4846,7 @@ static const struct board_info __initcon
+@@ -4406,6 +4508,7 @@ static const struct board_info __initcon
  #endif
  #ifdef CONFIG_BCM63XX_CPU_63268
  	&board_963269bhr,
diff --git a/target/linux/brcm63xx/patches-3.14/560-board_963268gu_p300.patch b/target/linux/brcm63xx/patches-3.14/560-board_963268gu_p300.patch
index 2b750f4de0..c9042d308c 100644
--- a/target/linux/brcm63xx/patches-3.14/560-board_963268gu_p300.patch
+++ b/target/linux/brcm63xx/patches-3.14/560-board_963268gu_p300.patch
@@ -1,6 +1,6 @@
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -4591,6 +4591,131 @@ static struct board_info __initdata boar
+@@ -4256,6 +4256,131 @@ static struct board_info __initdata boar
   * known 63268/63269 boards
   */
  #ifdef CONFIG_BCM63XX_CPU_63268
@@ -132,7 +132,7 @@
  static struct board_info __initdata board_963269bhr = {
  	.name				= "963269BHR",
  	.expected_cpu_id		= 0x63268,
-@@ -4845,6 +4970,7 @@ static const struct board_info __initcon
+@@ -4507,6 +4632,7 @@ static const struct board_info __initcon
  	&board_96368mvngr,
  #endif
  #ifdef CONFIG_BCM63XX_CPU_63268
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
index 77c0b06cc8..d7e44e431a 100644
--- a/target/linux/brcm63xx/patches-3.14/561-board_WAP-5813n.patch
+++ b/target/linux/brcm63xx/patches-3.14/561-board_WAP-5813n.patch
@@ -8,7 +8,7 @@
  #include <linux/platform_device.h>
  #include <linux/spi/spi.h>
  #include <linux/spi/spi_gpio.h>
-@@ -4585,6 +4586,117 @@ static struct board_info __initdata boar
+@@ -4250,6 +4251,117 @@ static struct board_info __initdata boar
  	.has_ohci0 = 1,
  	.has_ehci0 = 1,
  };
@@ -126,7 +126,7 @@
  #endif /* CONFIG_BCM63XX_CPU_6368 */
  
  /*
-@@ -4968,6 +5080,7 @@ static const struct board_info __initcon
+@@ -4630,6 +4742,7 @@ static const struct board_info __initcon
  #ifdef CONFIG_BCM63XX_CPU_6368
  	&board_96368mvwg,
  	&board_96368mvngr,
diff --git a/target/linux/brcm63xx/patches-3.14/562-board_VR-3025u.patch b/target/linux/brcm63xx/patches-3.14/562-board_VR-3025u.patch
index d3166848d3..78ef286824 100644
--- a/target/linux/brcm63xx/patches-3.14/562-board_VR-3025u.patch
+++ b/target/linux/brcm63xx/patches-3.14/562-board_VR-3025u.patch
@@ -1,6 +1,6 @@
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -4587,6 +4587,116 @@ static struct board_info __initdata boar
+@@ -4252,6 +4252,116 @@ static struct board_info __initdata boar
  	.has_ehci0 = 1,
  };
  
@@ -117,7 +117,7 @@
  static struct b53_platform_data WAP5813n_b53_pdata = {
  	.alias = "eth0",
  };
-@@ -5080,6 +5190,7 @@ static const struct board_info __initcon
+@@ -4742,6 +4852,7 @@ static const struct board_info __initcon
  #ifdef CONFIG_BCM63XX_CPU_6368
  	&board_96368mvwg,
  	&board_96368mvngr,
diff --git a/target/linux/brcm63xx/patches-3.14/563-board_VR-3025un.patch b/target/linux/brcm63xx/patches-3.14/563-board_VR-3025un.patch
index 0b1c36d777..68381d5248 100644
--- a/target/linux/brcm63xx/patches-3.14/563-board_VR-3025un.patch
+++ b/target/linux/brcm63xx/patches-3.14/563-board_VR-3025un.patch
@@ -1,6 +1,6 @@
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -4697,6 +4697,116 @@ static struct board_info __initdata boar
+@@ -4362,6 +4362,116 @@ static struct board_info __initdata boar
  	},
  };
  
@@ -117,7 +117,7 @@
  static struct b53_platform_data WAP5813n_b53_pdata = {
  	.alias = "eth0",
  };
-@@ -5191,6 +5301,7 @@ static const struct board_info __initcon
+@@ -4853,6 +4963,7 @@ static const struct board_info __initcon
  	&board_96368mvwg,
  	&board_96368mvngr,
  	&board_VR3025u,
diff --git a/target/linux/brcm63xx/patches-3.14/564-board_P870HW-51a_v2.patch b/target/linux/brcm63xx/patches-3.14/564-board_P870HW-51a_v2.patch
index 4e2ec75a8f..950ea553e9 100644
--- a/target/linux/brcm63xx/patches-3.14/564-board_P870HW-51a_v2.patch
+++ b/target/linux/brcm63xx/patches-3.14/564-board_P870HW-51a_v2.patch
@@ -1,6 +1,6 @@
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -4596,6 +4596,96 @@ static struct sprom_fixup __initdata vr3
+@@ -4261,6 +4261,96 @@ static struct sprom_fixup __initdata vr3
  	{ .offset = 115, .value = 0xfad9 },
  };
  
@@ -97,7 +97,7 @@
  static struct board_info __initdata board_VR3025u = {
  	.name					= "96368M-1541N",
  	.expected_cpu_id		= 0x6368,
-@@ -5300,6 +5390,7 @@ static const struct board_info __initcon
+@@ -4962,6 +5052,7 @@ static const struct board_info __initcon
  #ifdef CONFIG_BCM63XX_CPU_6368
  	&board_96368mvwg,
  	&board_96368mvngr,
diff --git a/target/linux/brcm63xx/patches-3.14/565-board_hw520.patch b/target/linux/brcm63xx/patches-3.14/565-board_hw520.patch
index fc229e4df8..03a0dc45db 100644
--- a/target/linux/brcm63xx/patches-3.14/565-board_hw520.patch
+++ b/target/linux/brcm63xx/patches-3.14/565-board_hw520.patch
@@ -1,6 +1,6 @@
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -3553,6 +3553,56 @@ static struct board_info __initdata boar
+@@ -3218,6 +3218,56 @@ static struct board_info __initdata boar
  	.num_spis = ARRAY_SIZE(ct6373_spi_devices),
  };
  
@@ -57,9 +57,9 @@
  static struct board_info __initdata board_HW553 = {
  	.name                           = "HW553",
  	.expected_cpu_id                = 0x6358,
-@@ -5373,6 +5423,7 @@ static const struct board_info __initcon
+@@ -5035,6 +5085,7 @@ static const struct board_info __initcon
+ 	&board_nb4_ser_r0,
  	&board_nb4_fxc_r1,
- 	&board_nb4_fxc_r2,
  	&board_ct6373_1,
 +	&board_HW520,
  	&board_HW553,
diff --git a/target/linux/brcm63xx/patches-3.14/566-board_A4001N.patch b/target/linux/brcm63xx/patches-3.14/566-board_A4001N.patch
index 60f3e451bb..4c36da501e 100644
--- a/target/linux/brcm63xx/patches-3.14/566-board_A4001N.patch
+++ b/target/linux/brcm63xx/patches-3.14/566-board_A4001N.patch
@@ -96,7 +96,7 @@
  static struct board_info __initdata board_A4001N1 = {
  	.name					= "963281T_TEF",
  	.expected_cpu_id			= 0x6328,
-@@ -5371,6 +5460,7 @@ static const struct board_info __initcon
+@@ -5036,6 +5125,7 @@ static const struct board_info __initcon
  	&board_AR5381u,
  	&board_AR5387un,
  	&board_963281TAN,
diff --git a/target/linux/brcm63xx/patches-3.14/567-board_dsl-2751b_e1.patch b/target/linux/brcm63xx/patches-3.14/567-board_dsl-2751b_e1.patch
index a4df990e40..d8a2881779 100644
--- a/target/linux/brcm63xx/patches-3.14/567-board_dsl-2751b_e1.patch
+++ b/target/linux/brcm63xx/patches-3.14/567-board_dsl-2751b_e1.patch
@@ -142,7 +142,7 @@
  #endif /* CONFIG_BCM63XX_CPU_6318 */
  
  /*
-@@ -5454,6 +5589,7 @@ static const struct board_info __initcon
+@@ -5119,6 +5254,7 @@ static const struct board_info __initcon
  #ifdef CONFIG_BCM63XX_CPU_6318
  	&board_96318ref,
  	&board_96318ref_p300,
-- 
GitLab