From 0e4c1ba284d3b387b007d53f6ec2aeec3363b8df Mon Sep 17 00:00:00 2001
From: Jonas Gorski <jogo@openwrt.org>
Date: Wed, 25 Mar 2015 15:36:05 +0000
Subject: [PATCH] brcm63xx: move MAGIC to dts

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

SVN-Revision: 44991
---
 .../linux/brcm63xx/base-files/lib/brcm63xx.sh |  6 +-
 target/linux/brcm63xx/dts/magic.dts           | 70 +++++++++++++++++++
 target/linux/brcm63xx/image/Makefile          |  2 +
 .../patches-3.14/507-board-MAGIC.patch        | 50 +++----------
 .../patches-3.14/508-board_hw553.patch        |  6 +-
 .../patches-3.14/509-board_rta1320_16m.patch  |  4 +-
 .../patches-3.14/510-board_spw303v.patch      |  6 +-
 .../patches-3.14/511-board_V2500V.patch       | 10 +--
 .../patches-3.14/512-board_BTV2110.patch      |  2 +-
 .../patches-3.14/514-board_ct536_ct5621.patch |  4 +-
 .../patches-3.14/515-board_DWV-S0_fixes.patch |  4 +-
 .../patches-3.14/516-board_96348A-122.patch   |  4 +-
 .../patches-3.14/519_board_CPVA502plus.patch  |  6 +-
 ...63xx-add-support-for-96368MVWG-board.patch |  6 +-
 ...3xx-add-support-for-96368MVNgr-board.patch |  6 +-
 ...CM63XX-add-963281TAN-reference-board.patch |  4 +-
 .../524-board_dsl_274xb_rev_f.patch           |  4 +-
 .../patches-3.14/525-board_96348w3.patch      |  4 +-
 .../patches-3.14/526-board_CT6373-1.patch     |  6 +-
 .../527-board_dva-g3810bn-tl-1.patch          |  6 +-
 .../brcm63xx/patches-3.14/528-board_nb6.patch |  6 +-
 .../patches-3.14/529-board_fast2604.patch     |  4 +-
 .../patches-3.14/530-board_A4001N1.patch      |  4 +-
 .../patches-3.14/531-board_AR-5387un.patch    |  4 +-
 .../patches-3.14/532-board_AR-5381u.patch     |  4 +-
 .../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     |  4 +-
 .../patches-3.14/537-board_fast2504n.patch    |  6 +-
 ...MIPS-BCM63XX-remove-leds-and-buttons.patch |  4 +-
 .../553-boards_probe_switch.patch             | 11 +--
 .../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      |  4 +-
 .../patches-3.14/559-board_vw6339gu.patch     |  4 +-
 .../560-board_963268gu_p300.patch             |  6 +-
 .../patches-3.14/561-board_WAP-5813n.patch    |  6 +-
 .../patches-3.14/562-board_VR-3025u.patch     |  6 +-
 .../patches-3.14/563-board_VR-3025un.patch    |  6 +-
 .../564-board_P870HW-51a_v2.patch             |  6 +-
 .../patches-3.14/565-board_hw520.patch        |  6 +-
 .../patches-3.14/566-board_A4001N.patch       |  4 +-
 .../patches-3.14/567-board_dsl-2751b_e1.patch |  2 +-
 .../568-board_DGND3700v1_3800B.patch          |  6 +-
 .../patches-3.18/507-board-MAGIC.patch        | 50 +++----------
 .../patches-3.18/508-board_hw553.patch        |  6 +-
 .../patches-3.18/509-board_rta1320_16m.patch  |  4 +-
 .../patches-3.18/510-board_spw303v.patch      |  6 +-
 .../patches-3.18/511-board_V2500V.patch       | 10 +--
 .../patches-3.18/512-board_BTV2110.patch      |  2 +-
 .../patches-3.18/514-board_ct536_ct5621.patch |  4 +-
 .../patches-3.18/515-board_DWV-S0_fixes.patch |  4 +-
 .../patches-3.18/516-board_96348A-122.patch   |  4 +-
 .../patches-3.18/519_board_CPVA502plus.patch  |  6 +-
 ...63xx-add-support-for-96368MVWG-board.patch |  6 +-
 ...3xx-add-support-for-96368MVNgr-board.patch |  6 +-
 ...CM63XX-add-963281TAN-reference-board.patch |  4 +-
 .../524-board_dsl_274xb_rev_f.patch           |  4 +-
 .../patches-3.18/525-board_96348w3.patch      |  4 +-
 .../patches-3.18/526-board_CT6373-1.patch     |  6 +-
 .../527-board_dva-g3810bn-tl-1.patch          |  6 +-
 .../brcm63xx/patches-3.18/528-board_nb6.patch |  6 +-
 .../patches-3.18/529-board_fast2604.patch     |  4 +-
 .../patches-3.18/530-board_A4001N1.patch      |  4 +-
 .../patches-3.18/531-board_AR-5387un.patch    |  4 +-
 .../patches-3.18/532-board_AR-5381u.patch     |  4 +-
 .../patches-3.18/533-board_rta770bw.patch     |  2 +-
 .../patches-3.18/534-board_hw556.patch        |  6 +-
 .../patches-3.18/535-board_rta770w.patch      |  2 +-
 .../patches-3.18/536-board_fast2704.patch     |  4 +-
 .../patches-3.18/537-board_fast2504n.patch    |  6 +-
 ...MIPS-BCM63XX-remove-leds-and-buttons.patch |  4 +-
 .../553-boards_probe_switch.patch             |  4 +-
 .../patches-3.18/555-board_96318ref.patch     |  2 +-
 .../556-board_96318ref_p300.patch             |  2 +-
 .../patches-3.18/557-board_bcm963269bhr.patch |  4 +-
 .../patches-3.18/558-board_AR1004G.patch      |  4 +-
 .../patches-3.18/559-board_vw6339gu.patch     |  4 +-
 .../560-board_963268gu_p300.patch             |  6 +-
 .../patches-3.18/561-board_WAP-5813n.patch    |  6 +-
 .../patches-3.18/562-board_VR-3025u.patch     |  6 +-
 .../patches-3.18/563-board_VR-3025un.patch    |  6 +-
 .../564-board_P870HW-51a_v2.patch             |  6 +-
 .../patches-3.18/565-board_hw520.patch        |  6 +-
 .../patches-3.18/566-board_A4001N.patch       |  4 +-
 .../patches-3.18/567-board_dsl-2751b_e1.patch |  2 +-
 .../568-board_DGND3700v1_3800B.patch          |  6 +-
 .../patches-3.18/569-board_homehub2a.patch    |  6 +-
 target/linux/brcm63xx/profiles/telsey.mk      |  9 +++
 91 files changed, 303 insertions(+), 289 deletions(-)
 create mode 100644 target/linux/brcm63xx/dts/magic.dts

diff --git a/target/linux/brcm63xx/base-files/lib/brcm63xx.sh b/target/linux/brcm63xx/base-files/lib/brcm63xx.sh
index d9ec3ed719..10664b64b6 100755
--- a/target/linux/brcm63xx/base-files/lib/brcm63xx.sh
+++ b/target/linux/brcm63xx/base-files/lib/brcm63xx.sh
@@ -198,6 +198,9 @@ brcm63xx_dt_detect() {
 	"Telsey CPVA642-type (CPA-ZNTE60T)")
 		board_name="cpva642"
 		;;
+	"Telsey MAGIC")
+		board_name="magic"
+		;;
 	"TP-Link TD-W8900GB")
 		board_name="td-w8900gb"
 		;;
@@ -219,9 +222,6 @@ brcm63xx_legacy_detect() {
 	local board_name
 
 	case "$1" in
-	MAGIC)
-		board_name="magic"
-		;;
 	RTA770BW)
 		board_name="rta770bw"
 		;;
diff --git a/target/linux/brcm63xx/dts/magic.dts b/target/linux/brcm63xx/dts/magic.dts
new file mode 100644
index 0000000000..bdefbee647
--- /dev/null
+++ b/target/linux/brcm63xx/dts/magic.dts
@@ -0,0 +1,70 @@
+/dts-v1/;
+
+/include/ "bcm6348.dtsi"
+
+/ {
+	model = "Alice W-Gate";
+	compatible = "telsey,magic", "brcm,bcm6348";
+
+	gpio-leds {
+		compatible = "gpio-leds";
+
+		power {
+			label = "MAGIC:green:power";
+			gpios = <&gpio0 0 1>;
+			default-state = "on";
+		};
+
+		stop {
+			label = "MAGIC:green:stop";
+			gpios = <&gpio0 1 1>;
+		};
+
+		hpna {
+			label = "MAGIC:green:hpna";
+			gpios = <&gpio0 4 1>;
+		};
+
+		status {
+			label = "MAGIC:green:adsl";
+			gpios = <&gpio0 5 1>;
+		};
+
+		voip {
+			label = "MAGIC:green:voip";
+			gpios = <&gpio0 22 1>;
+		};
+
+		wifi {
+			label = "MAGIC:green:wifi";
+			gpios = <&gpio0 28 0>;
+		};
+
+		usb {
+			label = "MAGIC:green:usb";
+			gpios = <&gpio1 3 1>;
+		};
+	};
+};
+
+&pflash {
+	status = "ok";
+
+	linux,part-probe = "bcm63xxpart";
+
+	cfe@0 {
+		label = "CFE";
+		reg = <0x000000 0x010000>;
+		read-only;
+	};
+
+	linux@10000 {
+		label = "linux";
+		reg = <0x010000 0x3e0000>;
+	};
+
+	nvram@3f0000 {
+		label = "nvram";
+		reg = <0x3f0000 0x010000>;
+	};
+};
diff --git a/target/linux/brcm63xx/image/Makefile b/target/linux/brcm63xx/image/Makefile
index d38ffe975f..260c6d1499 100755
--- a/target/linux/brcm63xx/image/Makefile
+++ b/target/linux/brcm63xx/image/Makefile
@@ -372,6 +372,8 @@ $(eval $(call ImageDTB,CFEDTB,GW6200,GW6200,gw6200,96348GW,6348,--rsa-signature
 $(eval $(call ImageDTB,Dummy,CPVA502PLUS,CVPA502PLUS,cpva502plus,CPVA502+,6348,--signature "Telsey Tlc" --signature2 "99.99.999" --second-image-flag "0"))
 # Telsey CPVA642-type (e.g. CPA-ZNTE60T)
 $(eval $(call ImageDTB,CFEDTB,CPVA642,CPA-ZNTE60T,cpva642,CPVA642,6358,--signature "Telsey Tlc" --signature2 "99.99.999" --second-image-flag "0" --pad 4))
+# Telsey MAGIC (Alice W-Gate)
+$(eval $(call ImageDTB,Dummy,MAGIC,MAGIC,magic,MAGIC,6348))
 # TP-Link TD-W8900GB
 $(eval $(call ImageDTB,CFEDTB,TDW8900GB,TD-W8900GB,td-w8900gb,96348GW-11,6348,--rsa-signature "$(shell printf 'PRID\x89\x10\x00\x02')" --image-offset 0x20000))
 # USRobotics 9108
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 627ffc92e2..1d513ab3e4 100644
--- a/target/linux/brcm63xx/patches-3.14/507-board-MAGIC.patch
+++ b/target/linux/brcm63xx/patches-3.14/507-board-MAGIC.patch
@@ -1,6 +1,6 @@
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -653,6 +653,78 @@ static struct board_info __initdata boar
+@@ -653,6 +653,40 @@ static struct board_info __initdata boar
  		.num_board_fixups	= ARRAY_SIZE(spw500v_fixups),
  	},
  };
@@ -37,49 +37,11 @@
 +		.cs			= 2,
 +		.ext_irq		= 2,
 +	},
-+
-+	.leds = {
-+		{
-+			.name		= "MAGIC:green:voip",
-+			.gpio		= 22,
-+			.active_low	= 1,
-+		},
-+		{
-+			.name		= "MAGIC:green:adsl",
-+			.gpio		= 5,
-+			.active_low	= 1,
-+		},
-+		{
-+			.name		= "MAGIC:green:wifi",
-+			.gpio		= 28,
-+		},
-+		{
-+			.name		= "MAGIC:green:usb",
-+			.gpio		= 35,
-+			.active_low	= 1,
-+		},
-+		{
-+			.name		= "MAGIC:green:hpna",
-+			.gpio		= 4,
-+			.active_low	= 1,
-+		},
-+		{
-+			.name		= "MAGIC:green:power",
-+			.gpio		= 0,
-+			.active_low	= 1,
-+			.default_trigger = "default-on",
-+		},
-+		{
-+			.name		= "MAGIC:green:stop",
-+			.gpio		= 1,
-+			.active_low	= 1,
-+		},
-+	},
 +};
  #endif /* CONFIG_BCM63XX_CPU_6348 */
  
  /*
-@@ -932,6 +1004,7 @@ static const struct board_info __initcon
+@@ -932,6 +966,7 @@ static const struct board_info __initcon
  	&board_rta1025w_16,
  	&board_96348_D4PW,
  	&board_spw500v,
@@ -87,3 +49,11 @@
  #endif
  
  #ifdef CONFIG_BCM63XX_CPU_6358
+@@ -976,6 +1011,7 @@ static struct of_device_id const bcm963x
+ 	{ .compatible = "t-com,spw500v", .data = &board_spw500v, },
+ 	{ .compatible = "tecom,gw6000", .data = &board_gw6000, },
+ 	{ .compatible = "tecom,gw6200", .data = &board_gw6200, },
++	{ .compatible = "telsey,magic", .data = &board_96348sv, },
+ 	{ .compatible = "tp-link,td-w8900gb", .data = &board_96348gw_11, },
+ 	{ .compatible = "usr,9108", .data = &board_96348gw_a, },
+ #endif
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 d24c5f1c7d..db0e7413fa 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
-@@ -971,6 +971,34 @@ static struct board_info __initdata boar
+@@ -933,6 +933,34 @@ static struct board_info __initdata boar
  	.has_ehci0 = 1,
  	.num_usbh_ports			= 2,
  };
@@ -35,7 +35,7 @@
  #endif /* CONFIG_BCM63XX_CPU_6358 */
  
  /*
-@@ -1016,6 +1044,7 @@ static const struct board_info __initcon
+@@ -978,6 +1006,7 @@ static const struct board_info __initcon
  	&board_dsl_274xb_rev_c,
  	&board_nb4_ser_r0,
  	&board_nb4_fxc_r1,
@@ -43,7 +43,7 @@
  #endif
  };
  
-@@ -1058,6 +1087,7 @@ static struct of_device_id const bcm963x
+@@ -1021,6 +1050,7 @@ static struct of_device_id const bcm963x
  	{ .compatible = "brcm,bcm96358vw2", .data = &board_96358vw2, },
  	{ .compatible = "d-link,dsl-274xb-c2", .data = &board_dsl_274xb_rev_c, },
  	{ .compatible = "d-link,dsl-2650u", .data = &board_96358vw2, },
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 5d33349031..9ca684477b 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
@@ -22,7 +22,7 @@
  #endif /* CONFIG_BCM63XX_CPU_6338 */
  
  /*
-@@ -1015,6 +1030,7 @@ static const struct board_info __initcon
+@@ -977,6 +992,7 @@ static const struct board_info __initcon
  	&board_96338gw,
  	&board_96338w,
  	&board_96338w2_e7t,
@@ -30,7 +30,7 @@
  #endif
  #ifdef CONFIG_BCM63XX_CPU_6345
  	&board_96345gw2,
-@@ -1059,6 +1075,7 @@ static struct of_device_id const bcm963x
+@@ -1021,6 +1037,7 @@ static struct of_device_id const bcm963x
  #ifdef CONFIG_BCM63XX_CPU_6338
  	{ .compatible = "brcm,bcm96338gw", .data = &board_96338gw, },
  	{ .compatible = "brcm,bcm96338w", .data = &board_96338w, },
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 24c1fbd7eb..1e6da541e5 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
-@@ -1014,6 +1014,21 @@ static struct board_info __initdata boar
+@@ -976,6 +976,21 @@ static struct board_info __initdata boar
  		.pci_dev			= 1,
  	},
  };
@@ -22,7 +22,7 @@
  #endif /* CONFIG_BCM63XX_CPU_6358 */
  
  /*
-@@ -1061,6 +1076,7 @@ static const struct board_info __initcon
+@@ -1023,6 +1038,7 @@ static const struct board_info __initcon
  	&board_nb4_ser_r0,
  	&board_nb4_fxc_r1,
  	&board_HW553,
@@ -30,7 +30,7 @@
  #endif
  };
  
-@@ -1111,6 +1127,7 @@ static struct of_device_id const bcm963x
+@@ -1074,6 +1090,7 @@ static struct of_device_id const bcm963x
  	{ .compatible = "pirelli,agpf-s0", .data = &board_AGPFS0, },
  	{ .compatible = "sfr,nb4-ser-r0", .data = &board_nb4_ser_r0, },
  	{ .compatible = "sfr,nb4-fxc-r1", .data = &board_nb4_fxc_r1, },
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 9f61cc932f..60fe53cb19 100644
--- a/target/linux/brcm63xx/patches-3.14/511-board_V2500V.patch
+++ b/target/linux/brcm63xx/patches-3.14/511-board_V2500V.patch
@@ -1,7 +1,7 @@
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -740,6 +740,27 @@ static struct board_info __initdata boar
- 		},
+@@ -702,6 +702,27 @@ static struct board_info __initdata boar
+ 		.ext_irq		= 2,
  	},
  };
 +
@@ -28,7 +28,7 @@
  #endif /* CONFIG_BCM63XX_CPU_6348 */
  
  /*
-@@ -1064,6 +1085,7 @@ static const struct board_info __initcon
+@@ -1026,6 +1047,7 @@ static const struct board_info __initcon
  	&board_96348_D4PW,
  	&board_spw500v,
  	&board_96348sv,
@@ -36,7 +36,7 @@
  #endif
  
  #ifdef CONFIG_BCM63XX_CPU_6358
-@@ -1103,6 +1125,7 @@ static struct of_device_id const bcm963x
+@@ -1065,6 +1087,7 @@ static struct of_device_id const bcm963x
  	{ .compatible = "brcm,bcm96348gw-10", .data = &board_96348gw_10, },
  	{ .compatible = "brcm,bcm96348gw-11", .data = &board_96348gw_11, },
  	{ .compatible = "brcm,bcm96348gw-a", .data = &board_96348gw_a, },
@@ -44,7 +44,7 @@
  	{ .compatible = "d-link,dsl-2640b-b", .data = &board_96348_D4PW, },
  	{ .compatible = "davolink,dv-201amr", .data = &board_DV201AMR, },
  	{ .compatible = "dynalink,rta1025w", .data = &board_rta1025w_16, },
-@@ -1161,6 +1184,22 @@ void __init board_bcm963xx_init(void)
+@@ -1124,6 +1147,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 97901aa108..8283174775 100644
--- a/target/linux/brcm63xx/patches-3.14/512-board_BTV2110.patch
+++ b/target/linux/brcm63xx/patches-3.14/512-board_BTV2110.patch
@@ -26,7 +26,7 @@
  static struct board_info __initdata board_96348gw = {
  	.name				= "96348GW",
  	.expected_cpu_id		= 0x6348,
-@@ -1086,6 +1105,7 @@ static const struct board_info __initcon
+@@ -1048,6 +1067,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 0cf686bc02..41e9620f19 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
@@ -35,7 +35,7 @@
  static struct board_info __initdata board_96348gw = {
  	.name				= "96348GW",
  	.expected_cpu_id		= 0x6348,
-@@ -1106,6 +1134,7 @@ static const struct board_info __initcon
+@@ -1068,6 +1096,7 @@ static const struct board_info __initcon
  	&board_96348sv,
  	&board_V2500V_BB,
  	&board_V2110,
@@ -43,7 +43,7 @@
  #endif
  
  #ifdef CONFIG_BCM63XX_CPU_6358
-@@ -1146,6 +1175,8 @@ static struct of_device_id const bcm963x
+@@ -1108,6 +1137,8 @@ static struct of_device_id const bcm963x
  	{ .compatible = "brcm,bcm96348gw-11", .data = &board_96348gw_11, },
  	{ .compatible = "brcm,bcm96348gw-a", .data = &board_96348gw_a, },
  	{ .compatible = "bt,v2500v-bb", .data = &board_V2500V_BB, },
diff --git a/target/linux/brcm63xx/patches-3.14/515-board_DWV-S0_fixes.patch b/target/linux/brcm63xx/patches-3.14/515-board_DWV-S0_fixes.patch
index a855f79771..820a1e495b 100644
--- a/target/linux/brcm63xx/patches-3.14/515-board_DWV-S0_fixes.patch
+++ b/target/linux/brcm63xx/patches-3.14/515-board_DWV-S0_fixes.patch
@@ -1,6 +1,6 @@
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -964,6 +964,8 @@ static struct board_info __initdata boar
+@@ -926,6 +926,8 @@ static struct board_info __initdata boar
  	.name				= "DWV-S0",
  	.expected_cpu_id		= 0x6358,
  
@@ -9,7 +9,7 @@
  	.has_enet0			= 1,
  	.has_enet1			= 1,
  	.has_pci			= 1,
-@@ -980,6 +982,7 @@ static struct board_info __initdata boar
+@@ -942,6 +944,7 @@ static struct board_info __initdata boar
  	},
  
  	.has_ohci0			= 1,
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 0e96dd143a..b90c6086bb 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
@@ -32,7 +32,7 @@
  static struct board_info __initdata board_96348gw = {
  	.name				= "96348GW",
  	.expected_cpu_id		= 0x6348,
-@@ -1138,6 +1163,7 @@ static const struct board_info __initcon
+@@ -1100,6 +1125,7 @@ static const struct board_info __initcon
  	&board_V2500V_BB,
  	&board_V2110,
  	&board_ct536_ct5621,
@@ -40,7 +40,7 @@
  #endif
  
  #ifdef CONFIG_BCM63XX_CPU_6358
-@@ -1179,6 +1205,7 @@ static struct of_device_id const bcm963x
+@@ -1141,6 +1167,7 @@ static struct of_device_id const bcm963x
  	{ .compatible = "brcm,bcm96348gw-a", .data = &board_96348gw_a, },
  	{ .compatible = "bt,v2500v-bb", .data = &board_V2500V_BB, },
  	{ .compatible = "comtrend,ct-536+", .data = &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 756b6437de..1eed2c15c0 100644
--- a/target/linux/brcm63xx/patches-3.14/519_board_CPVA502plus.patch
+++ b/target/linux/brcm63xx/patches-3.14/519_board_CPVA502plus.patch
@@ -28,7 +28,7 @@
  
  static struct board_info __initdata board_ct536_ct5621 = {
  	.name				= "CT536_CT5621",
-@@ -1165,6 +1186,7 @@ static const struct board_info __initcon
+@@ -1127,6 +1148,7 @@ static const struct board_info __initcon
  	&board_V2110,
  	&board_ct536_ct5621,
  	&board_96348A_122,
@@ -36,11 +36,11 @@
  #endif
  
  #ifdef CONFIG_BCM63XX_CPU_6358
-@@ -1216,6 +1238,7 @@ static struct of_device_id const bcm963x
+@@ -1178,6 +1200,7 @@ static struct of_device_id const bcm963x
  	{ .compatible = "t-com,spw500v", .data = &board_spw500v, },
  	{ .compatible = "tecom,gw6000", .data = &board_gw6000, },
  	{ .compatible = "tecom,gw6200", .data = &board_gw6200, },
 +	{ .compatible = "telsey,cpva502+", .data = &board_CPVA502plus, },
+ 	{ .compatible = "telsey,magic", .data = &board_96348sv, },
  	{ .compatible = "tp-link,td-w8900gb", .data = &board_96348gw_11, },
  	{ .compatible = "usr,9108", .data = &board_96348gw_a, },
- #endif
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 48cfd23019..86d29cbda0 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
-@@ -1150,6 +1150,59 @@ static struct board_info __initdata boar
+@@ -1112,6 +1112,59 @@ static struct board_info __initdata boar
  #endif /* CONFIG_BCM63XX_CPU_6358 */
  
  /*
@@ -70,7 +70,7 @@ Subject: [PATCH 32/63] bcm63xx: add support for 96368MVWG board.
   * all boards
   */
  static const struct board_info __initconst *bcm963xx_boards[] = {
-@@ -1201,6 +1254,10 @@ static const struct board_info __initcon
+@@ -1163,6 +1216,10 @@ static const struct board_info __initcon
  	&board_HW553,
  	&board_spw303v,
  #endif
@@ -81,7 +81,7 @@ Subject: [PATCH 32/63] bcm63xx: add support for 96368MVWG board.
  };
  
  static struct of_device_id const bcm963xx_boards_dt[] = {
-@@ -1259,6 +1316,7 @@ static struct of_device_id const bcm963x
+@@ -1222,6 +1279,7 @@ static struct of_device_id const bcm963x
  	{ .compatible = "telsey,cpva642", .data = &board_CPVA642, },
  #endif
  #ifdef CONFIG_BCM63XX_CPU_6368
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 66490312a9..433fdb63fe 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
-@@ -1200,6 +1200,46 @@ static struct board_info __initdata boar
+@@ -1162,6 +1162,46 @@ static struct board_info __initdata boar
  	.has_ohci0 = 1,
  	.has_ehci0 = 1,
  };
@@ -56,7 +56,7 @@ Subject: [PATCH 33/63] bcm63xx: add support for 96368MVNgr board.
  #endif /* CONFIG_BCM63XX_CPU_6368 */
  
  /*
-@@ -1257,6 +1297,7 @@ static const struct board_info __initcon
+@@ -1219,6 +1259,7 @@ static const struct board_info __initcon
  
  #ifdef CONFIG_BCM63XX_CPU_6368
  	&board_96368mvwg,
@@ -64,7 +64,7 @@ Subject: [PATCH 33/63] bcm63xx: add support for 96368MVNgr board.
  #endif
  };
  
-@@ -1316,6 +1357,7 @@ static struct of_device_id const bcm963x
+@@ -1279,6 +1320,7 @@ static struct of_device_id const bcm963x
  	{ .compatible = "telsey,cpva642", .data = &board_CPVA642, },
  #endif
  #ifdef CONFIG_BCM63XX_CPU_6368
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 a4f55fbcab..9cc376229a 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
@@ -51,7 +51,7 @@ Subject: [PATCH] MIPS: BCM63XX: add 963281TAN reference board
  #endif /* CONFIG_BCM63XX_CPU_6328 */
  
  /*
-@@ -1278,6 +1313,7 @@ static const struct board_info __initcon
+@@ -1240,6 +1275,7 @@ static const struct board_info __initcon
  #endif
  #ifdef CONFIG_BCM63XX_CPU_6328
  	&board_96328avng,
@@ -59,7 +59,7 @@ Subject: [PATCH] MIPS: BCM63XX: add 963281TAN reference board
  #endif
  #ifdef CONFIG_BCM63XX_CPU_6338
  	&board_96338gw,
-@@ -1334,6 +1370,7 @@ static struct of_device_id const bcm963x
+@@ -1296,6 +1332,7 @@ static struct of_device_id const bcm963x
  	{ .compatible = "netgear,cvg834g", .data = &board_cvg834g, },
  #endif
  #ifdef CONFIG_BCM63XX_CPU_6328
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 1b2e236452..0428abe879 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
@@ -62,7 +62,7 @@ Subject: [PATCH 70/79] MIPS: BCM63XX: Add board definition for D-Link
  #endif /* CONFIG_BCM63XX_CPU_6328 */
  
  /*
-@@ -1314,6 +1359,7 @@ static const struct board_info __initcon
+@@ -1276,6 +1321,7 @@ static const struct board_info __initcon
  #ifdef CONFIG_BCM63XX_CPU_6328
  	&board_96328avng,
  	&board_963281TAN,
@@ -70,7 +70,7 @@ Subject: [PATCH 70/79] MIPS: BCM63XX: Add board definition for D-Link
  #endif
  #ifdef CONFIG_BCM63XX_CPU_6338
  	&board_96338gw,
-@@ -1372,6 +1418,7 @@ static struct of_device_id const bcm963x
+@@ -1334,6 +1380,7 @@ static struct of_device_id const bcm963x
  #ifdef CONFIG_BCM63XX_CPU_6328
  	{ .compatible = "brcm,bcm963281TAN", .data = &board_963281TAN, },
  	{ .compatible = "brcm,bcm96328avng", .data = &board_96328avng, },
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 c0b14572c1..fade962bfb 100644
--- a/target/linux/brcm63xx/patches-3.14/525-board_96348w3.patch
+++ b/target/linux/brcm63xx/patches-3.14/525-board_96348w3.patch
@@ -26,7 +26,7 @@
  static struct board_info __initdata board_96348_D4PW = {
  	.name				= "D-4P-W",
  	.expected_cpu_id		= 0x6348,
-@@ -1389,6 +1408,7 @@ static const struct board_info __initcon
+@@ -1351,6 +1370,7 @@ static const struct board_info __initcon
  	&board_ct536_ct5621,
  	&board_96348A_122,
  	&board_CPVA502plus,
@@ -34,7 +34,7 @@
  #endif
  
  #ifdef CONFIG_BCM63XX_CPU_6358
-@@ -1443,6 +1463,7 @@ static struct of_device_id const bcm963x
+@@ -1405,6 +1425,7 @@ static struct of_device_id const bcm963x
  	{ .compatible = "davolink,dv-201amr", .data = &board_DV201AMR, },
  	{ .compatible = "dynalink,rta1025w", .data = &board_rta1025w_16, },
  	{ .compatible = "netgear,dg834gtpn", .data = &board_96348gw_10, },
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 0ce7e0a262..5c2dabe5b1 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
@@ -1,6 +1,6 @@
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -1231,6 +1231,31 @@ static struct board_info __initdata boar
+@@ -1193,6 +1193,31 @@ static struct board_info __initdata boar
  	.num_usbh_ports			= 2,
  };
  
@@ -32,7 +32,7 @@
  static struct board_info __initdata board_HW553 = {
  	.name                           = "HW553",
  	.expected_cpu_id                = 0x6358,
-@@ -1420,6 +1445,7 @@ static const struct board_info __initcon
+@@ -1382,6 +1407,7 @@ static const struct board_info __initcon
  	&board_dsl_274xb_rev_c,
  	&board_nb4_ser_r0,
  	&board_nb4_fxc_r1,
@@ -40,7 +40,7 @@
  	&board_HW553,
  	&board_spw303v,
  #endif
-@@ -1476,6 +1502,7 @@ static struct of_device_id const bcm963x
+@@ -1439,6 +1465,7 @@ static struct of_device_id const bcm963x
  	{ .compatible = "alcatel,rg100a", .data = &board_96358vw2, },
  	{ .compatible = "brcm,bcm96358vw", .data = &board_96358vw, },
  	{ .compatible = "brcm,bcm96358vw2", .data = &board_96358vw2, },
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 80d5d49c0b..8e3a6eb2da 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
-@@ -1298,6 +1298,36 @@ static struct board_info __initdata boar
+@@ -1260,6 +1260,36 @@ static struct board_info __initdata boar
  		.use_internal_phy 	= 1,
  	},
  };
@@ -37,7 +37,7 @@
  #endif /* CONFIG_BCM63XX_CPU_6358 */
  
  /*
-@@ -1448,6 +1478,7 @@ static const struct board_info __initcon
+@@ -1410,6 +1440,7 @@ static const struct board_info __initcon
  	&board_ct6373_1,
  	&board_HW553,
  	&board_spw303v,
@@ -45,7 +45,7 @@
  #endif
  
  #ifdef CONFIG_BCM63XX_CPU_6368
-@@ -1505,6 +1536,7 @@ static struct of_device_id const bcm963x
+@@ -1468,6 +1499,7 @@ static struct of_device_id const bcm963x
  	{ .compatible = "comtrend,ct-6373", .data = &board_ct6373_1, },
  	{ .compatible = "d-link,dsl-274xb-c2", .data = &board_dsl_274xb_rev_c, },
  	{ .compatible = "d-link,dsl-2650u", .data = &board_96358vw2, },
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 e4d8f4b282..c77b018368 100644
--- a/target/linux/brcm63xx/patches-3.14/528-board_nb6.patch
+++ b/target/linux/brcm63xx/patches-3.14/528-board_nb6.patch
@@ -19,7 +19,7 @@
  /*
   * known 3368 boards
   */
-@@ -1330,6 +1335,69 @@ static struct board_info __initdata boar
+@@ -1292,6 +1297,69 @@ static struct board_info __initdata boar
  };
  #endif /* CONFIG_BCM63XX_CPU_6358 */
  
@@ -89,7 +89,7 @@
  /*
   * known 6368 boards
   */
-@@ -1481,6 +1549,10 @@ static const struct board_info __initcon
+@@ -1443,6 +1511,10 @@ static const struct board_info __initcon
  	&board_DVAG3810BN,
  #endif
  
@@ -100,7 +100,7 @@
  #ifdef CONFIG_BCM63XX_CPU_6368
  	&board_96368mvwg,
  	&board_96368mvngr,
-@@ -1547,6 +1619,9 @@ static struct of_device_id const bcm963x
+@@ -1510,6 +1582,9 @@ static struct of_device_id const bcm963x
  	{ .compatible = "t-com,spw303v", .data = &board_spw303v, },
  	{ .compatible = "telsey,cpva642", .data = &board_CPVA642, },
  #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 11a4f6aaf8..0cfe941af5 100644
--- a/target/linux/brcm63xx/patches-3.14/529-board_fast2604.patch
+++ b/target/linux/brcm63xx/patches-3.14/529-board_fast2604.patch
@@ -24,7 +24,7 @@
  static struct board_info __initdata board_rta1025w_16 = {
  	.name				= "RTA1025W_16",
  	.expected_cpu_id		= 0x6348,
-@@ -1520,6 +1537,7 @@ static const struct board_info __initcon
+@@ -1482,6 +1499,7 @@ static const struct board_info __initcon
  	&board_96348gw_10,
  	&board_96348gw_11,
  	&board_FAST2404,
@@ -32,7 +32,7 @@
  	&board_DV201AMR,
  	&board_96348gw_a,
  	&board_rta1025w_16,
-@@ -1594,6 +1612,7 @@ static struct of_device_id const bcm963x
+@@ -1556,6 +1574,7 @@ static struct of_device_id const bcm963x
  	{ .compatible = "netgear,dg834gtpn", .data = &board_96348gw_10, },
   	{ .compatible = "netgear,dg834g-v4", .data = &board_96348W3, },
  	{ .compatible = "sagem,f@st2404", .data = &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 623df6bdba..95d259516a 100644
--- a/target/linux/brcm63xx/patches-3.14/530-board_A4001N1.patch
+++ b/target/linux/brcm63xx/patches-3.14/530-board_A4001N1.patch
@@ -51,7 +51,7 @@
  static struct board_info __initdata board_dsl_274xb_f1 = {
  	.name				= "AW4339U",
  	.expected_cpu_id		= 0x6328,
-@@ -1518,6 +1562,7 @@ static const struct board_info __initcon
+@@ -1480,6 +1524,7 @@ static const struct board_info __initcon
  #ifdef CONFIG_BCM63XX_CPU_6328
  	&board_96328avng,
  	&board_963281TAN,
@@ -59,7 +59,7 @@
  	&board_dsl_274xb_f1,
  #endif
  #ifdef CONFIG_BCM63XX_CPU_6338
-@@ -1583,6 +1628,7 @@ static struct of_device_id const bcm963x
+@@ -1545,6 +1590,7 @@ static struct of_device_id const bcm963x
  	{ .compatible = "netgear,cvg834g", .data = &board_cvg834g, },
  #endif
  #ifdef CONFIG_BCM63XX_CPU_6328
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 d26acd826d..4b516574fa 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
@@ -80,7 +80,7 @@
  static struct board_info __initdata board_963281TAN = {
  	.name				= "963281TAN",
  	.expected_cpu_id		= 0x6328,
-@@ -1561,6 +1634,7 @@ static const struct board_info __initcon
+@@ -1523,6 +1596,7 @@ static const struct board_info __initcon
  #endif
  #ifdef CONFIG_BCM63XX_CPU_6328
  	&board_96328avng,
@@ -88,7 +88,7 @@
  	&board_963281TAN,
  	&board_A4001N1,
  	&board_dsl_274xb_f1,
-@@ -1631,6 +1705,7 @@ static struct of_device_id const bcm963x
+@@ -1593,6 +1667,7 @@ static struct of_device_id const bcm963x
  	{ .compatible = "adb,a4001n1", .data = &board_A4001N1, },
  	{ .compatible = "brcm,bcm963281TAN", .data = &board_963281TAN, },
  	{ .compatible = "brcm,bcm96328avng", .data = &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 959bbdf8bc..7ad4e56e44 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
@@ -62,7 +62,7 @@
  static struct sprom_fixup __initdata ar5387un_fixups[] = {
  	{ .offset = 2, .value = 0x05bb },
  	{ .offset = 65, .value = 0x1204 },
-@@ -1634,6 +1689,7 @@ static const struct board_info __initcon
+@@ -1596,6 +1651,7 @@ static const struct board_info __initcon
  #endif
  #ifdef CONFIG_BCM63XX_CPU_6328
  	&board_96328avng,
@@ -70,7 +70,7 @@
  	&board_AR5387un,
  	&board_963281TAN,
  	&board_A4001N1,
-@@ -1705,6 +1761,7 @@ static struct of_device_id const bcm963x
+@@ -1667,6 +1723,7 @@ static struct of_device_id const bcm963x
  	{ .compatible = "adb,a4001n1", .data = &board_A4001N1, },
  	{ .compatible = "brcm,bcm963281TAN", .data = &board_963281TAN, },
  	{ .compatible = "brcm,bcm96328avng", .data = &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 15b1e984d2..d998733731 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 */
  
  /*
-@@ -1703,6 +1752,7 @@ static const struct board_info __initcon
+@@ -1665,6 +1714,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 5bc7c792f1..72b62b882a 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/rtl8367.h>
  #include <asm/addrspace.h>
-@@ -1527,6 +1528,93 @@ static struct board_info __initdata boar
+@@ -1489,6 +1490,93 @@ static struct board_info __initdata boar
  	},
  };
  
@@ -102,7 +102,7 @@
   /* T-Home Speedport W 303V Typ B */
  static struct board_info __initdata board_spw303v = {
  	.name			= "96358-502V",
-@@ -1788,6 +1876,9 @@ static const struct board_info __initcon
+@@ -1750,6 +1838,9 @@ static const struct board_info __initcon
  	&board_nb4_fxc_r1,
  	&board_ct6373_1,
  	&board_HW553,
@@ -112,7 +112,7 @@
  	&board_spw303v,
  	&board_DVAG3810BN,
  #endif
-@@ -1857,6 +1948,9 @@ static struct of_device_id const bcm963x
+@@ -1820,6 +1911,9 @@ static struct of_device_id const bcm963x
  	{ .compatible = "d-link,dsl-2650u", .data = &board_96358vw2, },
  	{ .compatible = "d-link,dva-g3810bn/tl", .data = &board_DVAG3810BN, },
  	{ .compatible = "huawei,hg553", .data = &board_HW553, },
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 510ee05271..5f853bba48 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 */
  
  /*
-@@ -1841,6 +1895,7 @@ static const struct board_info __initcon
+@@ -1803,6 +1857,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 765dbc48bb..d48f38e1a8 100644
--- a/target/linux/brcm63xx/patches-3.14/536-board_fast2704.patch
+++ b/target/linux/brcm63xx/patches-3.14/536-board_fast2704.patch
@@ -57,7 +57,7 @@ Signed-off-by: Marcin Jurkowski <marcin1j@gmail.com>
  #endif /* CONFIG_BCM63XX_CPU_6328 */
  
  /*
-@@ -1885,6 +1923,7 @@ static const struct board_info __initcon
+@@ -1847,6 +1885,7 @@ static const struct board_info __initcon
  	&board_963281TAN,
  	&board_A4001N1,
  	&board_dsl_274xb_f1,
@@ -65,7 +65,7 @@ Signed-off-by: Marcin Jurkowski <marcin1j@gmail.com>
  #endif
  #ifdef CONFIG_BCM63XX_CPU_6338
  	&board_96338gw,
-@@ -1960,6 +1999,7 @@ static struct of_device_id const bcm963x
+@@ -1922,6 +1961,7 @@ static struct of_device_id const bcm963x
  	{ .compatible = "comtrend,ar-5381u", .data = &board_AR5381u, },
  	{ .compatible = "comtrend,ar-5387un", .data = &board_AR5387un, },
  	{ .compatible = "d-link,dsl-274xb-f", .data = &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 e33c7232a1..fd5b3244ad 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
-@@ -1814,6 +1814,43 @@ static struct board_info __initdata boar
+@@ -1776,6 +1776,43 @@ static struct board_info __initdata boar
  	.devs = nb6_devices,
  	.num_devs = ARRAY_SIZE(nb6_devices),
  };
@@ -50,7 +50,7 @@ Signed-off-by: Max Staudt <openwrt.max@enpas.org>
  #endif /* CONFIG_BCM63XX_CPU_6362 */
  
  /*
-@@ -1979,6 +2016,7 @@ static const struct board_info __initcon
+@@ -1941,6 +1978,7 @@ static const struct board_info __initcon
  
  #ifdef CONFIG_BCM63XX_CPU_6362
  	&board_nb6,
@@ -58,7 +58,7 @@ Signed-off-by: Max Staudt <openwrt.max@enpas.org>
  #endif
  
  #ifdef CONFIG_BCM63XX_CPU_6368
-@@ -2056,6 +2094,7 @@ static struct of_device_id const bcm963x
+@@ -2019,6 +2057,7 @@ static struct of_device_id const bcm963x
  	{ .compatible = "telsey,cpva642", .data = &board_CPVA642, },
  #endif
  #ifdef CONFIG_BCM63XX_CPU_6362
diff --git a/target/linux/brcm63xx/patches-3.14/550-MIPS-BCM63XX-remove-leds-and-buttons.patch b/target/linux/brcm63xx/patches-3.14/550-MIPS-BCM63XX-remove-leds-and-buttons.patch
index 4ab0033fe7..45aca0900a 100644
--- a/target/linux/brcm63xx/patches-3.14/550-MIPS-BCM63XX-remove-leds-and-buttons.patch
+++ b/target/linux/brcm63xx/patches-3.14/550-MIPS-BCM63XX-remove-leds-and-buttons.patch
@@ -277,7 +277,7 @@ Subject: [PATCH] MIPS: BCM63XX: remove leds and buttons
  };
  
  static struct board_info __initdata board_gw6200 = {
-@@ -1347,33 +1135,6 @@ static struct board_info __initdata boar
+@@ -1309,33 +1097,6 @@ static struct board_info __initdata boar
  	.has_ohci0 = 1,
  	.has_pccard = 1,
  	.has_ehci0 = 1,
@@ -311,7 +311,7 @@ Subject: [PATCH] MIPS: BCM63XX: remove leds and buttons
  };
  
  static struct board_info __initdata board_96358vw2 = {
-@@ -1401,29 +1162,6 @@ static struct board_info __initdata boar
+@@ -1363,29 +1124,6 @@ static struct board_info __initdata boar
  	.has_pccard = 1,
  	.has_ehci0 = 1,
  	.num_usbh_ports			= 2,
diff --git a/target/linux/brcm63xx/patches-3.14/553-boards_probe_switch.patch b/target/linux/brcm63xx/patches-3.14/553-boards_probe_switch.patch
index 9c68988362..03cda5cee7 100644
--- a/target/linux/brcm63xx/patches-3.14/553-boards_probe_switch.patch
+++ b/target/linux/brcm63xx/patches-3.14/553-boards_probe_switch.patch
@@ -74,7 +74,7 @@
  		.force_speed_100	= 1,
  		.force_duplex_full	= 1,
  	},
-@@ -1127,6 +1145,8 @@ static struct board_info __initdata boar
+@@ -1115,6 +1133,8 @@ static struct board_info __initdata boar
  	},
  
  	.enet1 = {
@@ -83,19 +83,12 @@
  		.force_speed_100	= 1,
  		.force_duplex_full	= 1,
  	},
-@@ -1199,6 +1219,8 @@ static struct board_info __initdata boar
+@@ -1186,6 +1206,12 @@ static struct board_info __initdata boar
  	},
  
  	.enet1 = {
 +		.has_phy		= 1,
 +		.phy_id			= 0,
- 		.force_speed_100	= 1,
- 		.force_duplex_full	= 1,
- 	},
-@@ -1224,6 +1246,10 @@ static struct board_info __initdata boar
- 	},
- 
- 	.enet1 = {
 +		.has_phy		= 1,
 +		.phy_id			= 0,
 +		.has_phy		= 1,
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 9aff64386a..674770c9fc 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
-@@ -1717,6 +1804,9 @@ static const struct board_info __initcon
+@@ -1679,6 +1766,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 75543053c1..024497f9ab 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 */
  
  /*
-@@ -1806,6 +1894,7 @@ static const struct board_info __initcon
+@@ -1768,6 +1856,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 9cb5cd6937..933cd44ed7 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
-@@ -1886,6 +1886,75 @@ static struct board_info __initdata boar
+@@ -1848,6 +1848,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[] = {
-@@ -1966,6 +2035,9 @@ static const struct board_info __initcon
+@@ -1928,6 +1997,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 0f66d0c48b..daa01768b2 100644
--- a/target/linux/brcm63xx/patches-3.14/558-board_AR1004G.patch
+++ b/target/linux/brcm63xx/patches-3.14/558-board_AR1004G.patch
@@ -31,7 +31,7 @@ Signed-off-by: Adrian Feliks <mexit@o2.pl>
  
  /* BT Voyager 2110 */
  static struct board_info __initdata board_V2110 = {
-@@ -2006,6 +2022,7 @@ static const struct board_info __initcon
+@@ -1968,6 +1984,7 @@ static const struct board_info __initcon
  	&board_96348A_122,
  	&board_CPVA502plus,
  	&board_96348W3,
@@ -39,7 +39,7 @@ Signed-off-by: Adrian Feliks <mexit@o2.pl>
  #endif
  
  #ifdef CONFIG_BCM63XX_CPU_6358
-@@ -2064,6 +2081,7 @@ static struct of_device_id const bcm963x
+@@ -2026,6 +2043,7 @@ static struct of_device_id const bcm963x
  	{ .compatible = "brcm,bcm96345gw2", .data = &board_96345gw2, },
  #endif
  #ifdef CONFIG_BCM63XX_CPU_6348
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 f3274a85f4..bbbbebae94 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
-@@ -1968,6 +1968,108 @@ static struct board_info __initdata boar
+@@ -1930,6 +1930,108 @@ static struct board_info __initdata boar
  		},
  	},
  };
@@ -109,7 +109,7 @@
  #endif /* CONFIG_BCM63XX_CPU_63268 */
  
  /*
-@@ -2054,6 +2156,7 @@ static const struct board_info __initcon
+@@ -2016,6 +2118,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 289e5ded18..c25d8ca93e 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
-@@ -1905,6 +1905,66 @@ static struct board_info __initdata boar
+@@ -1867,6 +1867,66 @@ static struct board_info __initdata boar
   * known 63268/63269 boards
   */
  #ifdef CONFIG_BCM63XX_CPU_63268
@@ -67,7 +67,7 @@
  static struct board_info __initdata board_963269bhr = {
  	.name				= "963269BHR",
  	.expected_cpu_id		= 0x63268,
-@@ -2155,6 +2215,7 @@ static const struct board_info __initcon
+@@ -2117,6 +2177,7 @@ static const struct board_info __initcon
  	&board_96368mvngr,
  #endif
  #ifdef CONFIG_BCM63XX_CPU_63268
@@ -75,7 +75,7 @@
  	&board_963269bhr,
  	&board_vw6339gu,
  #endif
-@@ -2238,6 +2299,7 @@ static struct of_device_id const bcm963x
+@@ -2201,6 +2262,7 @@ static struct of_device_id const bcm963x
  	{ .compatible = "brcm,bcm96368mvwg", .data = &board_96368mvwg, },
  #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 6412188036..7d40b8c19b 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
@@ -10,7 +10,7 @@
  #include <asm/addrspace.h>
  #include <bcm63xx_board.h>
  #include <bcm63xx_cpu.h>
-@@ -1899,6 +1901,65 @@ static struct board_info __initdata boar
+@@ -1861,6 +1863,65 @@ static struct board_info __initdata boar
  	.has_ohci0 = 1,
  	.has_ehci0 = 1,
  };
@@ -76,7 +76,7 @@
  #endif /* CONFIG_BCM63XX_CPU_6368 */
  
  /*
-@@ -2213,6 +2274,7 @@ static const struct board_info __initcon
+@@ -2175,6 +2236,7 @@ static const struct board_info __initcon
  #ifdef CONFIG_BCM63XX_CPU_6368
  	&board_96368mvwg,
  	&board_96368mvngr,
@@ -84,7 +84,7 @@
  #endif
  #ifdef CONFIG_BCM63XX_CPU_63268
  	&board_963268bu_p300,
-@@ -2297,6 +2359,7 @@ static struct of_device_id const bcm963x
+@@ -2260,6 +2322,7 @@ static struct of_device_id const bcm963x
  #ifdef CONFIG_BCM63XX_CPU_6368
  	{ .compatible = "brcm,bcm96368mvngr", .data = &board_96368mvngr, },
  	{ .compatible = "brcm,bcm96368mvwg", .data = &board_96368mvwg, },
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 71e9532abf..2c7d4e1395 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
-@@ -1902,6 +1902,60 @@ static struct board_info __initdata boar
+@@ -1864,6 +1864,60 @@ static struct board_info __initdata boar
  	.has_ehci0 = 1,
  };
  
@@ -61,7 +61,7 @@
  static struct b53_platform_data WAP5813n_b53_pdata = {
  	.alias = "eth0",
  };
-@@ -2274,6 +2328,7 @@ static const struct board_info __initcon
+@@ -2236,6 +2290,7 @@ static const struct board_info __initcon
  #ifdef CONFIG_BCM63XX_CPU_6368
  	&board_96368mvwg,
  	&board_96368mvngr,
@@ -69,7 +69,7 @@
  	&board_WAP5813n,
  #endif
  #ifdef CONFIG_BCM63XX_CPU_63268
-@@ -2359,6 +2414,7 @@ static struct of_device_id const bcm963x
+@@ -2322,6 +2377,7 @@ static struct of_device_id const bcm963x
  #ifdef CONFIG_BCM63XX_CPU_6368
  	{ .compatible = "brcm,bcm96368mvngr", .data = &board_96368mvngr, },
  	{ .compatible = "brcm,bcm96368mvwg", .data = &board_96368mvwg, },
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 3f3f0b0631..038c0e8758 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
-@@ -1956,6 +1956,60 @@ static struct board_info __initdata boar
+@@ -1918,6 +1918,60 @@ static struct board_info __initdata boar
  	},
  };
  
@@ -61,7 +61,7 @@
  static struct b53_platform_data WAP5813n_b53_pdata = {
  	.alias = "eth0",
  };
-@@ -2329,6 +2383,7 @@ static const struct board_info __initcon
+@@ -2291,6 +2345,7 @@ static const struct board_info __initcon
  	&board_96368mvwg,
  	&board_96368mvngr,
  	&board_VR3025u,
@@ -69,7 +69,7 @@
  	&board_WAP5813n,
  #endif
  #ifdef CONFIG_BCM63XX_CPU_63268
-@@ -2415,6 +2470,7 @@ static struct of_device_id const bcm963x
+@@ -2378,6 +2433,7 @@ static struct of_device_id const bcm963x
  	{ .compatible = "brcm,bcm96368mvngr", .data = &board_96368mvngr, },
  	{ .compatible = "brcm,bcm96368mvwg", .data = &board_96368mvwg, },
  	{ .compatible = "comtrend,vr-3025u", .data = &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 1a61b59125..433fa173d0 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
-@@ -1911,6 +1911,49 @@ static struct sprom_fixup __initdata vr3
+@@ -1873,6 +1873,49 @@ static struct sprom_fixup __initdata vr3
  	{ .offset = 115, .value = 0xfad9 },
  };
  
@@ -50,7 +50,7 @@
  static struct board_info __initdata board_VR3025u = {
  	.name					= "96368M-1541N",
  	.expected_cpu_id		= 0x6368,
-@@ -2382,6 +2425,7 @@ static const struct board_info __initcon
+@@ -2344,6 +2387,7 @@ static const struct board_info __initcon
  #ifdef CONFIG_BCM63XX_CPU_6368
  	&board_96368mvwg,
  	&board_96368mvngr,
@@ -58,7 +58,7 @@
  	&board_VR3025u,
  	&board_VR3025un,
  	&board_WAP5813n,
-@@ -2472,6 +2516,7 @@ static struct of_device_id const bcm963x
+@@ -2435,6 +2479,7 @@ static struct of_device_id const bcm963x
  	{ .compatible = "comtrend,vr-3025u", .data = &board_VR3025u, },
  	{ .compatible = "comtrend,vr-3025un", .data = &board_VR3025un, },
  	{ .compatible = "comtrend,wap-5813n", .data = &board_WAP5813n, },
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 1a83b0eed0..70eeaf91f5 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
-@@ -1549,6 +1549,37 @@ static struct board_info __initdata boar
+@@ -1511,6 +1511,37 @@ static struct board_info __initdata boar
  	},
  };
  
@@ -38,7 +38,7 @@
  static struct board_info __initdata board_HW553 = {
  	.name                           = "HW553",
  	.expected_cpu_id                = 0x6358,
-@@ -2409,6 +2440,7 @@ static const struct board_info __initcon
+@@ -2371,6 +2402,7 @@ static const struct board_info __initcon
  	&board_nb4_ser_r0,
  	&board_nb4_fxc_r1,
  	&board_ct6373_1,
@@ -46,7 +46,7 @@
  	&board_HW553,
  	&board_HW556_A,
  	&board_HW556_B,
-@@ -2493,6 +2525,7 @@ static struct of_device_id const bcm963x
+@@ -2456,6 +2488,7 @@ static struct of_device_id const bcm963x
  	{ .compatible = "d-link,dsl-274xb-c2", .data = &board_dsl_274xb_rev_c, },
  	{ .compatible = "d-link,dsl-2650u", .data = &board_96358vw2, },
  	{ .compatible = "d-link,dva-g3810bn/tl", .data = &board_DVAG3810BN, },
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 91c140a918..4c4227a3c1 100644
--- a/target/linux/brcm63xx/patches-3.14/566-board_A4001N.patch
+++ b/target/linux/brcm63xx/patches-3.14/566-board_A4001N.patch
@@ -51,7 +51,7 @@
  static struct board_info __initdata board_A4001N1 = {
  	.name					= "963281T_TEF",
  	.expected_cpu_id			= 0x6328,
-@@ -2391,6 +2435,7 @@ static const struct board_info __initcon
+@@ -2353,6 +2397,7 @@ static const struct board_info __initcon
  	&board_AR5381u,
  	&board_AR5387un,
  	&board_963281TAN,
@@ -59,7 +59,7 @@
  	&board_A4001N1,
  	&board_dsl_274xb_f1,
  	&board_FAST2704V2,
-@@ -2475,6 +2520,7 @@ static struct of_device_id const bcm963x
+@@ -2437,6 +2482,7 @@ static struct of_device_id const bcm963x
  	{ .compatible = "netgear,cvg834g", .data = &board_cvg834g, },
  #endif
  #ifdef CONFIG_BCM63XX_CPU_6328
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 37c9713c64..96f8bdd4dd 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 */
  
  /*
-@@ -2429,6 +2564,7 @@ static const struct board_info __initcon
+@@ -2391,6 +2526,7 @@ static const struct board_info __initcon
  #ifdef CONFIG_BCM63XX_CPU_6318
  	&board_96318ref,
  	&board_96318ref_p300,
diff --git a/target/linux/brcm63xx/patches-3.14/568-board_DGND3700v1_3800B.patch b/target/linux/brcm63xx/patches-3.14/568-board_DGND3700v1_3800B.patch
index 896ec8b115..c25c62d0a6 100644
--- a/target/linux/brcm63xx/patches-3.14/568-board_DGND3700v1_3800B.patch
+++ b/target/linux/brcm63xx/patches-3.14/568-board_DGND3700v1_3800B.patch
@@ -1,6 +1,6 @@
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -2112,6 +2112,48 @@ static struct board_info __initdata boar
+@@ -2074,6 +2074,48 @@ static struct board_info __initdata boar
  	.has_ehci0 = 1,
  };
  
@@ -49,7 +49,7 @@
  static struct sprom_fixup __initdata vr3025u_fixups[] = {
  	{ .offset = 97, .value = 0xfeb3 },
  	{ .offset = 98, .value = 0x1618 },
-@@ -2638,6 +2680,7 @@ static const struct board_info __initcon
+@@ -2600,6 +2642,7 @@ static const struct board_info __initcon
  #ifdef CONFIG_BCM63XX_CPU_6368
  	&board_96368mvwg,
  	&board_96368mvngr,
@@ -57,7 +57,7 @@
  	&board_P870HW51A_V2,
  	&board_VR3025u,
  	&board_VR3025un,
-@@ -2731,6 +2774,7 @@ static struct of_device_id const bcm963x
+@@ -2694,6 +2737,7 @@ static struct of_device_id const bcm963x
  	{ .compatible = "comtrend,vr-3025u", .data = &board_VR3025u, },
  	{ .compatible = "comtrend,vr-3025un", .data = &board_VR3025un, },
  	{ .compatible = "comtrend,wap-5813n", .data = &board_WAP5813n, },
diff --git a/target/linux/brcm63xx/patches-3.18/507-board-MAGIC.patch b/target/linux/brcm63xx/patches-3.18/507-board-MAGIC.patch
index 627ffc92e2..1d513ab3e4 100644
--- a/target/linux/brcm63xx/patches-3.18/507-board-MAGIC.patch
+++ b/target/linux/brcm63xx/patches-3.18/507-board-MAGIC.patch
@@ -1,6 +1,6 @@
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -653,6 +653,78 @@ static struct board_info __initdata boar
+@@ -653,6 +653,40 @@ static struct board_info __initdata boar
  		.num_board_fixups	= ARRAY_SIZE(spw500v_fixups),
  	},
  };
@@ -37,49 +37,11 @@
 +		.cs			= 2,
 +		.ext_irq		= 2,
 +	},
-+
-+	.leds = {
-+		{
-+			.name		= "MAGIC:green:voip",
-+			.gpio		= 22,
-+			.active_low	= 1,
-+		},
-+		{
-+			.name		= "MAGIC:green:adsl",
-+			.gpio		= 5,
-+			.active_low	= 1,
-+		},
-+		{
-+			.name		= "MAGIC:green:wifi",
-+			.gpio		= 28,
-+		},
-+		{
-+			.name		= "MAGIC:green:usb",
-+			.gpio		= 35,
-+			.active_low	= 1,
-+		},
-+		{
-+			.name		= "MAGIC:green:hpna",
-+			.gpio		= 4,
-+			.active_low	= 1,
-+		},
-+		{
-+			.name		= "MAGIC:green:power",
-+			.gpio		= 0,
-+			.active_low	= 1,
-+			.default_trigger = "default-on",
-+		},
-+		{
-+			.name		= "MAGIC:green:stop",
-+			.gpio		= 1,
-+			.active_low	= 1,
-+		},
-+	},
 +};
  #endif /* CONFIG_BCM63XX_CPU_6348 */
  
  /*
-@@ -932,6 +1004,7 @@ static const struct board_info __initcon
+@@ -932,6 +966,7 @@ static const struct board_info __initcon
  	&board_rta1025w_16,
  	&board_96348_D4PW,
  	&board_spw500v,
@@ -87,3 +49,11 @@
  #endif
  
  #ifdef CONFIG_BCM63XX_CPU_6358
+@@ -976,6 +1011,7 @@ static struct of_device_id const bcm963x
+ 	{ .compatible = "t-com,spw500v", .data = &board_spw500v, },
+ 	{ .compatible = "tecom,gw6000", .data = &board_gw6000, },
+ 	{ .compatible = "tecom,gw6200", .data = &board_gw6200, },
++	{ .compatible = "telsey,magic", .data = &board_96348sv, },
+ 	{ .compatible = "tp-link,td-w8900gb", .data = &board_96348gw_11, },
+ 	{ .compatible = "usr,9108", .data = &board_96348gw_a, },
+ #endif
diff --git a/target/linux/brcm63xx/patches-3.18/508-board_hw553.patch b/target/linux/brcm63xx/patches-3.18/508-board_hw553.patch
index d24c5f1c7d..db0e7413fa 100644
--- a/target/linux/brcm63xx/patches-3.18/508-board_hw553.patch
+++ b/target/linux/brcm63xx/patches-3.18/508-board_hw553.patch
@@ -1,6 +1,6 @@
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -971,6 +971,34 @@ static struct board_info __initdata boar
+@@ -933,6 +933,34 @@ static struct board_info __initdata boar
  	.has_ehci0 = 1,
  	.num_usbh_ports			= 2,
  };
@@ -35,7 +35,7 @@
  #endif /* CONFIG_BCM63XX_CPU_6358 */
  
  /*
-@@ -1016,6 +1044,7 @@ static const struct board_info __initcon
+@@ -978,6 +1006,7 @@ static const struct board_info __initcon
  	&board_dsl_274xb_rev_c,
  	&board_nb4_ser_r0,
  	&board_nb4_fxc_r1,
@@ -43,7 +43,7 @@
  #endif
  };
  
-@@ -1058,6 +1087,7 @@ static struct of_device_id const bcm963x
+@@ -1021,6 +1050,7 @@ static struct of_device_id const bcm963x
  	{ .compatible = "brcm,bcm96358vw2", .data = &board_96358vw2, },
  	{ .compatible = "d-link,dsl-274xb-c2", .data = &board_dsl_274xb_rev_c, },
  	{ .compatible = "d-link,dsl-2650u", .data = &board_96358vw2, },
diff --git a/target/linux/brcm63xx/patches-3.18/509-board_rta1320_16m.patch b/target/linux/brcm63xx/patches-3.18/509-board_rta1320_16m.patch
index 5d33349031..9ca684477b 100644
--- a/target/linux/brcm63xx/patches-3.18/509-board_rta1320_16m.patch
+++ b/target/linux/brcm63xx/patches-3.18/509-board_rta1320_16m.patch
@@ -22,7 +22,7 @@
  #endif /* CONFIG_BCM63XX_CPU_6338 */
  
  /*
-@@ -1015,6 +1030,7 @@ static const struct board_info __initcon
+@@ -977,6 +992,7 @@ static const struct board_info __initcon
  	&board_96338gw,
  	&board_96338w,
  	&board_96338w2_e7t,
@@ -30,7 +30,7 @@
  #endif
  #ifdef CONFIG_BCM63XX_CPU_6345
  	&board_96345gw2,
-@@ -1059,6 +1075,7 @@ static struct of_device_id const bcm963x
+@@ -1021,6 +1037,7 @@ static struct of_device_id const bcm963x
  #ifdef CONFIG_BCM63XX_CPU_6338
  	{ .compatible = "brcm,bcm96338gw", .data = &board_96338gw, },
  	{ .compatible = "brcm,bcm96338w", .data = &board_96338w, },
diff --git a/target/linux/brcm63xx/patches-3.18/510-board_spw303v.patch b/target/linux/brcm63xx/patches-3.18/510-board_spw303v.patch
index 24c1fbd7eb..1e6da541e5 100644
--- a/target/linux/brcm63xx/patches-3.18/510-board_spw303v.patch
+++ b/target/linux/brcm63xx/patches-3.18/510-board_spw303v.patch
@@ -1,6 +1,6 @@
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -1014,6 +1014,21 @@ static struct board_info __initdata boar
+@@ -976,6 +976,21 @@ static struct board_info __initdata boar
  		.pci_dev			= 1,
  	},
  };
@@ -22,7 +22,7 @@
  #endif /* CONFIG_BCM63XX_CPU_6358 */
  
  /*
-@@ -1061,6 +1076,7 @@ static const struct board_info __initcon
+@@ -1023,6 +1038,7 @@ static const struct board_info __initcon
  	&board_nb4_ser_r0,
  	&board_nb4_fxc_r1,
  	&board_HW553,
@@ -30,7 +30,7 @@
  #endif
  };
  
-@@ -1111,6 +1127,7 @@ static struct of_device_id const bcm963x
+@@ -1074,6 +1090,7 @@ static struct of_device_id const bcm963x
  	{ .compatible = "pirelli,agpf-s0", .data = &board_AGPFS0, },
  	{ .compatible = "sfr,nb4-ser-r0", .data = &board_nb4_ser_r0, },
  	{ .compatible = "sfr,nb4-fxc-r1", .data = &board_nb4_fxc_r1, },
diff --git a/target/linux/brcm63xx/patches-3.18/511-board_V2500V.patch b/target/linux/brcm63xx/patches-3.18/511-board_V2500V.patch
index 9f61cc932f..60fe53cb19 100644
--- a/target/linux/brcm63xx/patches-3.18/511-board_V2500V.patch
+++ b/target/linux/brcm63xx/patches-3.18/511-board_V2500V.patch
@@ -1,7 +1,7 @@
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -740,6 +740,27 @@ static struct board_info __initdata boar
- 		},
+@@ -702,6 +702,27 @@ static struct board_info __initdata boar
+ 		.ext_irq		= 2,
  	},
  };
 +
@@ -28,7 +28,7 @@
  #endif /* CONFIG_BCM63XX_CPU_6348 */
  
  /*
-@@ -1064,6 +1085,7 @@ static const struct board_info __initcon
+@@ -1026,6 +1047,7 @@ static const struct board_info __initcon
  	&board_96348_D4PW,
  	&board_spw500v,
  	&board_96348sv,
@@ -36,7 +36,7 @@
  #endif
  
  #ifdef CONFIG_BCM63XX_CPU_6358
-@@ -1103,6 +1125,7 @@ static struct of_device_id const bcm963x
+@@ -1065,6 +1087,7 @@ static struct of_device_id const bcm963x
  	{ .compatible = "brcm,bcm96348gw-10", .data = &board_96348gw_10, },
  	{ .compatible = "brcm,bcm96348gw-11", .data = &board_96348gw_11, },
  	{ .compatible = "brcm,bcm96348gw-a", .data = &board_96348gw_a, },
@@ -44,7 +44,7 @@
  	{ .compatible = "d-link,dsl-2640b-b", .data = &board_96348_D4PW, },
  	{ .compatible = "davolink,dv-201amr", .data = &board_DV201AMR, },
  	{ .compatible = "dynalink,rta1025w", .data = &board_rta1025w_16, },
-@@ -1161,6 +1184,22 @@ void __init board_bcm963xx_init(void)
+@@ -1124,6 +1147,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.18/512-board_BTV2110.patch b/target/linux/brcm63xx/patches-3.18/512-board_BTV2110.patch
index 97901aa108..8283174775 100644
--- a/target/linux/brcm63xx/patches-3.18/512-board_BTV2110.patch
+++ b/target/linux/brcm63xx/patches-3.18/512-board_BTV2110.patch
@@ -26,7 +26,7 @@
  static struct board_info __initdata board_96348gw = {
  	.name				= "96348GW",
  	.expected_cpu_id		= 0x6348,
-@@ -1086,6 +1105,7 @@ static const struct board_info __initcon
+@@ -1048,6 +1067,7 @@ static const struct board_info __initcon
  	&board_spw500v,
  	&board_96348sv,
  	&board_V2500V_BB,
diff --git a/target/linux/brcm63xx/patches-3.18/514-board_ct536_ct5621.patch b/target/linux/brcm63xx/patches-3.18/514-board_ct536_ct5621.patch
index 0cf686bc02..41e9620f19 100644
--- a/target/linux/brcm63xx/patches-3.18/514-board_ct536_ct5621.patch
+++ b/target/linux/brcm63xx/patches-3.18/514-board_ct536_ct5621.patch
@@ -35,7 +35,7 @@
  static struct board_info __initdata board_96348gw = {
  	.name				= "96348GW",
  	.expected_cpu_id		= 0x6348,
-@@ -1106,6 +1134,7 @@ static const struct board_info __initcon
+@@ -1068,6 +1096,7 @@ static const struct board_info __initcon
  	&board_96348sv,
  	&board_V2500V_BB,
  	&board_V2110,
@@ -43,7 +43,7 @@
  #endif
  
  #ifdef CONFIG_BCM63XX_CPU_6358
-@@ -1146,6 +1175,8 @@ static struct of_device_id const bcm963x
+@@ -1108,6 +1137,8 @@ static struct of_device_id const bcm963x
  	{ .compatible = "brcm,bcm96348gw-11", .data = &board_96348gw_11, },
  	{ .compatible = "brcm,bcm96348gw-a", .data = &board_96348gw_a, },
  	{ .compatible = "bt,v2500v-bb", .data = &board_V2500V_BB, },
diff --git a/target/linux/brcm63xx/patches-3.18/515-board_DWV-S0_fixes.patch b/target/linux/brcm63xx/patches-3.18/515-board_DWV-S0_fixes.patch
index a855f79771..820a1e495b 100644
--- a/target/linux/brcm63xx/patches-3.18/515-board_DWV-S0_fixes.patch
+++ b/target/linux/brcm63xx/patches-3.18/515-board_DWV-S0_fixes.patch
@@ -1,6 +1,6 @@
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -964,6 +964,8 @@ static struct board_info __initdata boar
+@@ -926,6 +926,8 @@ static struct board_info __initdata boar
  	.name				= "DWV-S0",
  	.expected_cpu_id		= 0x6358,
  
@@ -9,7 +9,7 @@
  	.has_enet0			= 1,
  	.has_enet1			= 1,
  	.has_pci			= 1,
-@@ -980,6 +982,7 @@ static struct board_info __initdata boar
+@@ -942,6 +944,7 @@ static struct board_info __initdata boar
  	},
  
  	.has_ohci0			= 1,
diff --git a/target/linux/brcm63xx/patches-3.18/516-board_96348A-122.patch b/target/linux/brcm63xx/patches-3.18/516-board_96348A-122.patch
index 0e96dd143a..b90c6086bb 100644
--- a/target/linux/brcm63xx/patches-3.18/516-board_96348A-122.patch
+++ b/target/linux/brcm63xx/patches-3.18/516-board_96348A-122.patch
@@ -32,7 +32,7 @@
  static struct board_info __initdata board_96348gw = {
  	.name				= "96348GW",
  	.expected_cpu_id		= 0x6348,
-@@ -1138,6 +1163,7 @@ static const struct board_info __initcon
+@@ -1100,6 +1125,7 @@ static const struct board_info __initcon
  	&board_V2500V_BB,
  	&board_V2110,
  	&board_ct536_ct5621,
@@ -40,7 +40,7 @@
  #endif
  
  #ifdef CONFIG_BCM63XX_CPU_6358
-@@ -1179,6 +1205,7 @@ static struct of_device_id const bcm963x
+@@ -1141,6 +1167,7 @@ static struct of_device_id const bcm963x
  	{ .compatible = "brcm,bcm96348gw-a", .data = &board_96348gw_a, },
  	{ .compatible = "bt,v2500v-bb", .data = &board_V2500V_BB, },
  	{ .compatible = "comtrend,ct-536+", .data = &board_ct536_ct5621, },
diff --git a/target/linux/brcm63xx/patches-3.18/519_board_CPVA502plus.patch b/target/linux/brcm63xx/patches-3.18/519_board_CPVA502plus.patch
index 756b6437de..1eed2c15c0 100644
--- a/target/linux/brcm63xx/patches-3.18/519_board_CPVA502plus.patch
+++ b/target/linux/brcm63xx/patches-3.18/519_board_CPVA502plus.patch
@@ -28,7 +28,7 @@
  
  static struct board_info __initdata board_ct536_ct5621 = {
  	.name				= "CT536_CT5621",
-@@ -1165,6 +1186,7 @@ static const struct board_info __initcon
+@@ -1127,6 +1148,7 @@ static const struct board_info __initcon
  	&board_V2110,
  	&board_ct536_ct5621,
  	&board_96348A_122,
@@ -36,11 +36,11 @@
  #endif
  
  #ifdef CONFIG_BCM63XX_CPU_6358
-@@ -1216,6 +1238,7 @@ static struct of_device_id const bcm963x
+@@ -1178,6 +1200,7 @@ static struct of_device_id const bcm963x
  	{ .compatible = "t-com,spw500v", .data = &board_spw500v, },
  	{ .compatible = "tecom,gw6000", .data = &board_gw6000, },
  	{ .compatible = "tecom,gw6200", .data = &board_gw6200, },
 +	{ .compatible = "telsey,cpva502+", .data = &board_CPVA502plus, },
+ 	{ .compatible = "telsey,magic", .data = &board_96348sv, },
  	{ .compatible = "tp-link,td-w8900gb", .data = &board_96348gw_11, },
  	{ .compatible = "usr,9108", .data = &board_96348gw_a, },
- #endif
diff --git a/target/linux/brcm63xx/patches-3.18/520-bcm63xx-add-support-for-96368MVWG-board.patch b/target/linux/brcm63xx/patches-3.18/520-bcm63xx-add-support-for-96368MVWG-board.patch
index 48cfd23019..86d29cbda0 100644
--- a/target/linux/brcm63xx/patches-3.18/520-bcm63xx-add-support-for-96368MVWG-board.patch
+++ b/target/linux/brcm63xx/patches-3.18/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
-@@ -1150,6 +1150,59 @@ static struct board_info __initdata boar
+@@ -1112,6 +1112,59 @@ static struct board_info __initdata boar
  #endif /* CONFIG_BCM63XX_CPU_6358 */
  
  /*
@@ -70,7 +70,7 @@ Subject: [PATCH 32/63] bcm63xx: add support for 96368MVWG board.
   * all boards
   */
  static const struct board_info __initconst *bcm963xx_boards[] = {
-@@ -1201,6 +1254,10 @@ static const struct board_info __initcon
+@@ -1163,6 +1216,10 @@ static const struct board_info __initcon
  	&board_HW553,
  	&board_spw303v,
  #endif
@@ -81,7 +81,7 @@ Subject: [PATCH 32/63] bcm63xx: add support for 96368MVWG board.
  };
  
  static struct of_device_id const bcm963xx_boards_dt[] = {
-@@ -1259,6 +1316,7 @@ static struct of_device_id const bcm963x
+@@ -1222,6 +1279,7 @@ static struct of_device_id const bcm963x
  	{ .compatible = "telsey,cpva642", .data = &board_CPVA642, },
  #endif
  #ifdef CONFIG_BCM63XX_CPU_6368
diff --git a/target/linux/brcm63xx/patches-3.18/521-bcm63xx-add-support-for-96368MVNgr-board.patch b/target/linux/brcm63xx/patches-3.18/521-bcm63xx-add-support-for-96368MVNgr-board.patch
index 66490312a9..433fdb63fe 100644
--- a/target/linux/brcm63xx/patches-3.18/521-bcm63xx-add-support-for-96368MVNgr-board.patch
+++ b/target/linux/brcm63xx/patches-3.18/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
-@@ -1200,6 +1200,46 @@ static struct board_info __initdata boar
+@@ -1162,6 +1162,46 @@ static struct board_info __initdata boar
  	.has_ohci0 = 1,
  	.has_ehci0 = 1,
  };
@@ -56,7 +56,7 @@ Subject: [PATCH 33/63] bcm63xx: add support for 96368MVNgr board.
  #endif /* CONFIG_BCM63XX_CPU_6368 */
  
  /*
-@@ -1257,6 +1297,7 @@ static const struct board_info __initcon
+@@ -1219,6 +1259,7 @@ static const struct board_info __initcon
  
  #ifdef CONFIG_BCM63XX_CPU_6368
  	&board_96368mvwg,
@@ -64,7 +64,7 @@ Subject: [PATCH 33/63] bcm63xx: add support for 96368MVNgr board.
  #endif
  };
  
-@@ -1316,6 +1357,7 @@ static struct of_device_id const bcm963x
+@@ -1279,6 +1320,7 @@ static struct of_device_id const bcm963x
  	{ .compatible = "telsey,cpva642", .data = &board_CPVA642, },
  #endif
  #ifdef CONFIG_BCM63XX_CPU_6368
diff --git a/target/linux/brcm63xx/patches-3.18/523-MIPS-BCM63XX-add-963281TAN-reference-board.patch b/target/linux/brcm63xx/patches-3.18/523-MIPS-BCM63XX-add-963281TAN-reference-board.patch
index a4f55fbcab..9cc376229a 100644
--- a/target/linux/brcm63xx/patches-3.18/523-MIPS-BCM63XX-add-963281TAN-reference-board.patch
+++ b/target/linux/brcm63xx/patches-3.18/523-MIPS-BCM63XX-add-963281TAN-reference-board.patch
@@ -51,7 +51,7 @@ Subject: [PATCH] MIPS: BCM63XX: add 963281TAN reference board
  #endif /* CONFIG_BCM63XX_CPU_6328 */
  
  /*
-@@ -1278,6 +1313,7 @@ static const struct board_info __initcon
+@@ -1240,6 +1275,7 @@ static const struct board_info __initcon
  #endif
  #ifdef CONFIG_BCM63XX_CPU_6328
  	&board_96328avng,
@@ -59,7 +59,7 @@ Subject: [PATCH] MIPS: BCM63XX: add 963281TAN reference board
  #endif
  #ifdef CONFIG_BCM63XX_CPU_6338
  	&board_96338gw,
-@@ -1334,6 +1370,7 @@ static struct of_device_id const bcm963x
+@@ -1296,6 +1332,7 @@ static struct of_device_id const bcm963x
  	{ .compatible = "netgear,cvg834g", .data = &board_cvg834g, },
  #endif
  #ifdef CONFIG_BCM63XX_CPU_6328
diff --git a/target/linux/brcm63xx/patches-3.18/524-board_dsl_274xb_rev_f.patch b/target/linux/brcm63xx/patches-3.18/524-board_dsl_274xb_rev_f.patch
index 1b2e236452..0428abe879 100644
--- a/target/linux/brcm63xx/patches-3.18/524-board_dsl_274xb_rev_f.patch
+++ b/target/linux/brcm63xx/patches-3.18/524-board_dsl_274xb_rev_f.patch
@@ -62,7 +62,7 @@ Subject: [PATCH 70/79] MIPS: BCM63XX: Add board definition for D-Link
  #endif /* CONFIG_BCM63XX_CPU_6328 */
  
  /*
-@@ -1314,6 +1359,7 @@ static const struct board_info __initcon
+@@ -1276,6 +1321,7 @@ static const struct board_info __initcon
  #ifdef CONFIG_BCM63XX_CPU_6328
  	&board_96328avng,
  	&board_963281TAN,
@@ -70,7 +70,7 @@ Subject: [PATCH 70/79] MIPS: BCM63XX: Add board definition for D-Link
  #endif
  #ifdef CONFIG_BCM63XX_CPU_6338
  	&board_96338gw,
-@@ -1372,6 +1418,7 @@ static struct of_device_id const bcm963x
+@@ -1334,6 +1380,7 @@ static struct of_device_id const bcm963x
  #ifdef CONFIG_BCM63XX_CPU_6328
  	{ .compatible = "brcm,bcm963281TAN", .data = &board_963281TAN, },
  	{ .compatible = "brcm,bcm96328avng", .data = &board_96328avng, },
diff --git a/target/linux/brcm63xx/patches-3.18/525-board_96348w3.patch b/target/linux/brcm63xx/patches-3.18/525-board_96348w3.patch
index c0b14572c1..fade962bfb 100644
--- a/target/linux/brcm63xx/patches-3.18/525-board_96348w3.patch
+++ b/target/linux/brcm63xx/patches-3.18/525-board_96348w3.patch
@@ -26,7 +26,7 @@
  static struct board_info __initdata board_96348_D4PW = {
  	.name				= "D-4P-W",
  	.expected_cpu_id		= 0x6348,
-@@ -1389,6 +1408,7 @@ static const struct board_info __initcon
+@@ -1351,6 +1370,7 @@ static const struct board_info __initcon
  	&board_ct536_ct5621,
  	&board_96348A_122,
  	&board_CPVA502plus,
@@ -34,7 +34,7 @@
  #endif
  
  #ifdef CONFIG_BCM63XX_CPU_6358
-@@ -1443,6 +1463,7 @@ static struct of_device_id const bcm963x
+@@ -1405,6 +1425,7 @@ static struct of_device_id const bcm963x
  	{ .compatible = "davolink,dv-201amr", .data = &board_DV201AMR, },
  	{ .compatible = "dynalink,rta1025w", .data = &board_rta1025w_16, },
  	{ .compatible = "netgear,dg834gtpn", .data = &board_96348gw_10, },
diff --git a/target/linux/brcm63xx/patches-3.18/526-board_CT6373-1.patch b/target/linux/brcm63xx/patches-3.18/526-board_CT6373-1.patch
index 0ce7e0a262..5c2dabe5b1 100644
--- a/target/linux/brcm63xx/patches-3.18/526-board_CT6373-1.patch
+++ b/target/linux/brcm63xx/patches-3.18/526-board_CT6373-1.patch
@@ -1,6 +1,6 @@
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -1231,6 +1231,31 @@ static struct board_info __initdata boar
+@@ -1193,6 +1193,31 @@ static struct board_info __initdata boar
  	.num_usbh_ports			= 2,
  };
  
@@ -32,7 +32,7 @@
  static struct board_info __initdata board_HW553 = {
  	.name                           = "HW553",
  	.expected_cpu_id                = 0x6358,
-@@ -1420,6 +1445,7 @@ static const struct board_info __initcon
+@@ -1382,6 +1407,7 @@ static const struct board_info __initcon
  	&board_dsl_274xb_rev_c,
  	&board_nb4_ser_r0,
  	&board_nb4_fxc_r1,
@@ -40,7 +40,7 @@
  	&board_HW553,
  	&board_spw303v,
  #endif
-@@ -1476,6 +1502,7 @@ static struct of_device_id const bcm963x
+@@ -1439,6 +1465,7 @@ static struct of_device_id const bcm963x
  	{ .compatible = "alcatel,rg100a", .data = &board_96358vw2, },
  	{ .compatible = "brcm,bcm96358vw", .data = &board_96358vw, },
  	{ .compatible = "brcm,bcm96358vw2", .data = &board_96358vw2, },
diff --git a/target/linux/brcm63xx/patches-3.18/527-board_dva-g3810bn-tl-1.patch b/target/linux/brcm63xx/patches-3.18/527-board_dva-g3810bn-tl-1.patch
index 80d5d49c0b..8e3a6eb2da 100644
--- a/target/linux/brcm63xx/patches-3.18/527-board_dva-g3810bn-tl-1.patch
+++ b/target/linux/brcm63xx/patches-3.18/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
-@@ -1298,6 +1298,36 @@ static struct board_info __initdata boar
+@@ -1260,6 +1260,36 @@ static struct board_info __initdata boar
  		.use_internal_phy 	= 1,
  	},
  };
@@ -37,7 +37,7 @@
  #endif /* CONFIG_BCM63XX_CPU_6358 */
  
  /*
-@@ -1448,6 +1478,7 @@ static const struct board_info __initcon
+@@ -1410,6 +1440,7 @@ static const struct board_info __initcon
  	&board_ct6373_1,
  	&board_HW553,
  	&board_spw303v,
@@ -45,7 +45,7 @@
  #endif
  
  #ifdef CONFIG_BCM63XX_CPU_6368
-@@ -1505,6 +1536,7 @@ static struct of_device_id const bcm963x
+@@ -1468,6 +1499,7 @@ static struct of_device_id const bcm963x
  	{ .compatible = "comtrend,ct-6373", .data = &board_ct6373_1, },
  	{ .compatible = "d-link,dsl-274xb-c2", .data = &board_dsl_274xb_rev_c, },
  	{ .compatible = "d-link,dsl-2650u", .data = &board_96358vw2, },
diff --git a/target/linux/brcm63xx/patches-3.18/528-board_nb6.patch b/target/linux/brcm63xx/patches-3.18/528-board_nb6.patch
index e4d8f4b282..c77b018368 100644
--- a/target/linux/brcm63xx/patches-3.18/528-board_nb6.patch
+++ b/target/linux/brcm63xx/patches-3.18/528-board_nb6.patch
@@ -19,7 +19,7 @@
  /*
   * known 3368 boards
   */
-@@ -1330,6 +1335,69 @@ static struct board_info __initdata boar
+@@ -1292,6 +1297,69 @@ static struct board_info __initdata boar
  };
  #endif /* CONFIG_BCM63XX_CPU_6358 */
  
@@ -89,7 +89,7 @@
  /*
   * known 6368 boards
   */
-@@ -1481,6 +1549,10 @@ static const struct board_info __initcon
+@@ -1443,6 +1511,10 @@ static const struct board_info __initcon
  	&board_DVAG3810BN,
  #endif
  
@@ -100,7 +100,7 @@
  #ifdef CONFIG_BCM63XX_CPU_6368
  	&board_96368mvwg,
  	&board_96368mvngr,
-@@ -1547,6 +1619,9 @@ static struct of_device_id const bcm963x
+@@ -1510,6 +1582,9 @@ static struct of_device_id const bcm963x
  	{ .compatible = "t-com,spw303v", .data = &board_spw303v, },
  	{ .compatible = "telsey,cpva642", .data = &board_CPVA642, },
  #endif
diff --git a/target/linux/brcm63xx/patches-3.18/529-board_fast2604.patch b/target/linux/brcm63xx/patches-3.18/529-board_fast2604.patch
index 11a4f6aaf8..0cfe941af5 100644
--- a/target/linux/brcm63xx/patches-3.18/529-board_fast2604.patch
+++ b/target/linux/brcm63xx/patches-3.18/529-board_fast2604.patch
@@ -24,7 +24,7 @@
  static struct board_info __initdata board_rta1025w_16 = {
  	.name				= "RTA1025W_16",
  	.expected_cpu_id		= 0x6348,
-@@ -1520,6 +1537,7 @@ static const struct board_info __initcon
+@@ -1482,6 +1499,7 @@ static const struct board_info __initcon
  	&board_96348gw_10,
  	&board_96348gw_11,
  	&board_FAST2404,
@@ -32,7 +32,7 @@
  	&board_DV201AMR,
  	&board_96348gw_a,
  	&board_rta1025w_16,
-@@ -1594,6 +1612,7 @@ static struct of_device_id const bcm963x
+@@ -1556,6 +1574,7 @@ static struct of_device_id const bcm963x
  	{ .compatible = "netgear,dg834gtpn", .data = &board_96348gw_10, },
   	{ .compatible = "netgear,dg834g-v4", .data = &board_96348W3, },
  	{ .compatible = "sagem,f@st2404", .data = &board_FAST2404, },
diff --git a/target/linux/brcm63xx/patches-3.18/530-board_A4001N1.patch b/target/linux/brcm63xx/patches-3.18/530-board_A4001N1.patch
index 623df6bdba..95d259516a 100644
--- a/target/linux/brcm63xx/patches-3.18/530-board_A4001N1.patch
+++ b/target/linux/brcm63xx/patches-3.18/530-board_A4001N1.patch
@@ -51,7 +51,7 @@
  static struct board_info __initdata board_dsl_274xb_f1 = {
  	.name				= "AW4339U",
  	.expected_cpu_id		= 0x6328,
-@@ -1518,6 +1562,7 @@ static const struct board_info __initcon
+@@ -1480,6 +1524,7 @@ static const struct board_info __initcon
  #ifdef CONFIG_BCM63XX_CPU_6328
  	&board_96328avng,
  	&board_963281TAN,
@@ -59,7 +59,7 @@
  	&board_dsl_274xb_f1,
  #endif
  #ifdef CONFIG_BCM63XX_CPU_6338
-@@ -1583,6 +1628,7 @@ static struct of_device_id const bcm963x
+@@ -1545,6 +1590,7 @@ static struct of_device_id const bcm963x
  	{ .compatible = "netgear,cvg834g", .data = &board_cvg834g, },
  #endif
  #ifdef CONFIG_BCM63XX_CPU_6328
diff --git a/target/linux/brcm63xx/patches-3.18/531-board_AR-5387un.patch b/target/linux/brcm63xx/patches-3.18/531-board_AR-5387un.patch
index d26acd826d..4b516574fa 100644
--- a/target/linux/brcm63xx/patches-3.18/531-board_AR-5387un.patch
+++ b/target/linux/brcm63xx/patches-3.18/531-board_AR-5387un.patch
@@ -80,7 +80,7 @@
  static struct board_info __initdata board_963281TAN = {
  	.name				= "963281TAN",
  	.expected_cpu_id		= 0x6328,
-@@ -1561,6 +1634,7 @@ static const struct board_info __initcon
+@@ -1523,6 +1596,7 @@ static const struct board_info __initcon
  #endif
  #ifdef CONFIG_BCM63XX_CPU_6328
  	&board_96328avng,
@@ -88,7 +88,7 @@
  	&board_963281TAN,
  	&board_A4001N1,
  	&board_dsl_274xb_f1,
-@@ -1631,6 +1705,7 @@ static struct of_device_id const bcm963x
+@@ -1593,6 +1667,7 @@ static struct of_device_id const bcm963x
  	{ .compatible = "adb,a4001n1", .data = &board_A4001N1, },
  	{ .compatible = "brcm,bcm963281TAN", .data = &board_963281TAN, },
  	{ .compatible = "brcm,bcm96328avng", .data = &board_96328avng, },
diff --git a/target/linux/brcm63xx/patches-3.18/532-board_AR-5381u.patch b/target/linux/brcm63xx/patches-3.18/532-board_AR-5381u.patch
index 959bbdf8bc..7ad4e56e44 100644
--- a/target/linux/brcm63xx/patches-3.18/532-board_AR-5381u.patch
+++ b/target/linux/brcm63xx/patches-3.18/532-board_AR-5381u.patch
@@ -62,7 +62,7 @@
  static struct sprom_fixup __initdata ar5387un_fixups[] = {
  	{ .offset = 2, .value = 0x05bb },
  	{ .offset = 65, .value = 0x1204 },
-@@ -1634,6 +1689,7 @@ static const struct board_info __initcon
+@@ -1596,6 +1651,7 @@ static const struct board_info __initcon
  #endif
  #ifdef CONFIG_BCM63XX_CPU_6328
  	&board_96328avng,
@@ -70,7 +70,7 @@
  	&board_AR5387un,
  	&board_963281TAN,
  	&board_A4001N1,
-@@ -1705,6 +1761,7 @@ static struct of_device_id const bcm963x
+@@ -1667,6 +1723,7 @@ static struct of_device_id const bcm963x
  	{ .compatible = "adb,a4001n1", .data = &board_A4001N1, },
  	{ .compatible = "brcm,bcm963281TAN", .data = &board_963281TAN, },
  	{ .compatible = "brcm,bcm96328avng", .data = &board_96328avng, },
diff --git a/target/linux/brcm63xx/patches-3.18/533-board_rta770bw.patch b/target/linux/brcm63xx/patches-3.18/533-board_rta770bw.patch
index 15b1e984d2..d998733731 100644
--- a/target/linux/brcm63xx/patches-3.18/533-board_rta770bw.patch
+++ b/target/linux/brcm63xx/patches-3.18/533-board_rta770bw.patch
@@ -56,7 +56,7 @@
  #endif /* CONFIG_BCM63XX_CPU_6345 */
  
  /*
-@@ -1703,6 +1752,7 @@ static const struct board_info __initcon
+@@ -1665,6 +1714,7 @@ static const struct board_info __initcon
  #endif
  #ifdef CONFIG_BCM63XX_CPU_6345
  	&board_96345gw2,
diff --git a/target/linux/brcm63xx/patches-3.18/534-board_hw556.patch b/target/linux/brcm63xx/patches-3.18/534-board_hw556.patch
index 5bc7c792f1..72b62b882a 100644
--- a/target/linux/brcm63xx/patches-3.18/534-board_hw556.patch
+++ b/target/linux/brcm63xx/patches-3.18/534-board_hw556.patch
@@ -8,7 +8,7 @@
  #include <linux/platform_device.h>
  #include <linux/rtl8367.h>
  #include <asm/addrspace.h>
-@@ -1527,6 +1528,93 @@ static struct board_info __initdata boar
+@@ -1489,6 +1490,93 @@ static struct board_info __initdata boar
  	},
  };
  
@@ -102,7 +102,7 @@
   /* T-Home Speedport W 303V Typ B */
  static struct board_info __initdata board_spw303v = {
  	.name			= "96358-502V",
-@@ -1788,6 +1876,9 @@ static const struct board_info __initcon
+@@ -1750,6 +1838,9 @@ static const struct board_info __initcon
  	&board_nb4_fxc_r1,
  	&board_ct6373_1,
  	&board_HW553,
@@ -112,7 +112,7 @@
  	&board_spw303v,
  	&board_DVAG3810BN,
  #endif
-@@ -1857,6 +1948,9 @@ static struct of_device_id const bcm963x
+@@ -1820,6 +1911,9 @@ static struct of_device_id const bcm963x
  	{ .compatible = "d-link,dsl-2650u", .data = &board_96358vw2, },
  	{ .compatible = "d-link,dva-g3810bn/tl", .data = &board_DVAG3810BN, },
  	{ .compatible = "huawei,hg553", .data = &board_HW553, },
diff --git a/target/linux/brcm63xx/patches-3.18/535-board_rta770w.patch b/target/linux/brcm63xx/patches-3.18/535-board_rta770w.patch
index 510ee05271..5f853bba48 100644
--- a/target/linux/brcm63xx/patches-3.18/535-board_rta770w.patch
+++ b/target/linux/brcm63xx/patches-3.18/535-board_rta770w.patch
@@ -61,7 +61,7 @@
  #endif /* CONFIG_BCM63XX_CPU_6345 */
  
  /*
-@@ -1841,6 +1895,7 @@ static const struct board_info __initcon
+@@ -1803,6 +1857,7 @@ static const struct board_info __initcon
  #ifdef CONFIG_BCM63XX_CPU_6345
  	&board_96345gw2,
  	&board_rta770bw,
diff --git a/target/linux/brcm63xx/patches-3.18/536-board_fast2704.patch b/target/linux/brcm63xx/patches-3.18/536-board_fast2704.patch
index 765dbc48bb..d48f38e1a8 100644
--- a/target/linux/brcm63xx/patches-3.18/536-board_fast2704.patch
+++ b/target/linux/brcm63xx/patches-3.18/536-board_fast2704.patch
@@ -57,7 +57,7 @@ Signed-off-by: Marcin Jurkowski <marcin1j@gmail.com>
  #endif /* CONFIG_BCM63XX_CPU_6328 */
  
  /*
-@@ -1885,6 +1923,7 @@ static const struct board_info __initcon
+@@ -1847,6 +1885,7 @@ static const struct board_info __initcon
  	&board_963281TAN,
  	&board_A4001N1,
  	&board_dsl_274xb_f1,
@@ -65,7 +65,7 @@ Signed-off-by: Marcin Jurkowski <marcin1j@gmail.com>
  #endif
  #ifdef CONFIG_BCM63XX_CPU_6338
  	&board_96338gw,
-@@ -1960,6 +1999,7 @@ static struct of_device_id const bcm963x
+@@ -1922,6 +1961,7 @@ static struct of_device_id const bcm963x
  	{ .compatible = "comtrend,ar-5381u", .data = &board_AR5381u, },
  	{ .compatible = "comtrend,ar-5387un", .data = &board_AR5387un, },
  	{ .compatible = "d-link,dsl-274xb-f", .data = &board_dsl_274xb_f1, },
diff --git a/target/linux/brcm63xx/patches-3.18/537-board_fast2504n.patch b/target/linux/brcm63xx/patches-3.18/537-board_fast2504n.patch
index e33c7232a1..fd5b3244ad 100644
--- a/target/linux/brcm63xx/patches-3.18/537-board_fast2504n.patch
+++ b/target/linux/brcm63xx/patches-3.18/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
-@@ -1814,6 +1814,43 @@ static struct board_info __initdata boar
+@@ -1776,6 +1776,43 @@ static struct board_info __initdata boar
  	.devs = nb6_devices,
  	.num_devs = ARRAY_SIZE(nb6_devices),
  };
@@ -50,7 +50,7 @@ Signed-off-by: Max Staudt <openwrt.max@enpas.org>
  #endif /* CONFIG_BCM63XX_CPU_6362 */
  
  /*
-@@ -1979,6 +2016,7 @@ static const struct board_info __initcon
+@@ -1941,6 +1978,7 @@ static const struct board_info __initcon
  
  #ifdef CONFIG_BCM63XX_CPU_6362
  	&board_nb6,
@@ -58,7 +58,7 @@ Signed-off-by: Max Staudt <openwrt.max@enpas.org>
  #endif
  
  #ifdef CONFIG_BCM63XX_CPU_6368
-@@ -2056,6 +2094,7 @@ static struct of_device_id const bcm963x
+@@ -2019,6 +2057,7 @@ static struct of_device_id const bcm963x
  	{ .compatible = "telsey,cpva642", .data = &board_CPVA642, },
  #endif
  #ifdef CONFIG_BCM63XX_CPU_6362
diff --git a/target/linux/brcm63xx/patches-3.18/550-MIPS-BCM63XX-remove-leds-and-buttons.patch b/target/linux/brcm63xx/patches-3.18/550-MIPS-BCM63XX-remove-leds-and-buttons.patch
index 4ab0033fe7..45aca0900a 100644
--- a/target/linux/brcm63xx/patches-3.18/550-MIPS-BCM63XX-remove-leds-and-buttons.patch
+++ b/target/linux/brcm63xx/patches-3.18/550-MIPS-BCM63XX-remove-leds-and-buttons.patch
@@ -277,7 +277,7 @@ Subject: [PATCH] MIPS: BCM63XX: remove leds and buttons
  };
  
  static struct board_info __initdata board_gw6200 = {
-@@ -1347,33 +1135,6 @@ static struct board_info __initdata boar
+@@ -1309,33 +1097,6 @@ static struct board_info __initdata boar
  	.has_ohci0 = 1,
  	.has_pccard = 1,
  	.has_ehci0 = 1,
@@ -311,7 +311,7 @@ Subject: [PATCH] MIPS: BCM63XX: remove leds and buttons
  };
  
  static struct board_info __initdata board_96358vw2 = {
-@@ -1401,29 +1162,6 @@ static struct board_info __initdata boar
+@@ -1363,29 +1124,6 @@ static struct board_info __initdata boar
  	.has_pccard = 1,
  	.has_ehci0 = 1,
  	.num_usbh_ports			= 2,
diff --git a/target/linux/brcm63xx/patches-3.18/553-boards_probe_switch.patch b/target/linux/brcm63xx/patches-3.18/553-boards_probe_switch.patch
index 433a0d92f6..b0d98957f2 100644
--- a/target/linux/brcm63xx/patches-3.18/553-boards_probe_switch.patch
+++ b/target/linux/brcm63xx/patches-3.18/553-boards_probe_switch.patch
@@ -74,7 +74,7 @@
  		.force_speed_100	= 1,
  		.force_duplex_full	= 1,
  	},
-@@ -1153,6 +1171,8 @@ static struct board_info __initdata boar
+@@ -1161,6 +1179,8 @@ static struct board_info __initdata boar
  	},
  
  	.enet1 = {
@@ -83,7 +83,7 @@
  		.force_speed_100	= 1,
  		.force_duplex_full	= 1,
  	},
-@@ -1224,6 +1244,12 @@ static struct board_info __initdata boar
+@@ -1186,6 +1206,12 @@ static struct board_info __initdata boar
  	},
  
  	.enet1 = {
diff --git a/target/linux/brcm63xx/patches-3.18/555-board_96318ref.patch b/target/linux/brcm63xx/patches-3.18/555-board_96318ref.patch
index 9aff64386a..674770c9fc 100644
--- a/target/linux/brcm63xx/patches-3.18/555-board_96318ref.patch
+++ b/target/linux/brcm63xx/patches-3.18/555-board_96318ref.patch
@@ -94,7 +94,7 @@
   * known 6328 boards
   */
  #ifdef CONFIG_BCM63XX_CPU_6328
-@@ -1717,6 +1804,9 @@ static const struct board_info __initcon
+@@ -1679,6 +1766,9 @@ static const struct board_info __initcon
  #ifdef CONFIG_BCM63XX_CPU_3368
  	&board_cvg834g,
  #endif
diff --git a/target/linux/brcm63xx/patches-3.18/556-board_96318ref_p300.patch b/target/linux/brcm63xx/patches-3.18/556-board_96318ref_p300.patch
index 75543053c1..024497f9ab 100644
--- a/target/linux/brcm63xx/patches-3.18/556-board_96318ref_p300.patch
+++ b/target/linux/brcm63xx/patches-3.18/556-board_96318ref_p300.patch
@@ -95,7 +95,7 @@
  #endif /* CONFIG_BCM63XX_CPU_6318 */
  
  /*
-@@ -1806,6 +1894,7 @@ static const struct board_info __initcon
+@@ -1768,6 +1856,7 @@ static const struct board_info __initcon
  #endif
  #ifdef CONFIG_BCM63XX_CPU_6318
  	&board_96318ref,
diff --git a/target/linux/brcm63xx/patches-3.18/557-board_bcm963269bhr.patch b/target/linux/brcm63xx/patches-3.18/557-board_bcm963269bhr.patch
index 9cb5cd6937..933cd44ed7 100644
--- a/target/linux/brcm63xx/patches-3.18/557-board_bcm963269bhr.patch
+++ b/target/linux/brcm63xx/patches-3.18/557-board_bcm963269bhr.patch
@@ -1,6 +1,6 @@
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -1886,6 +1886,75 @@ static struct board_info __initdata boar
+@@ -1848,6 +1848,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[] = {
-@@ -1966,6 +2035,9 @@ static const struct board_info __initcon
+@@ -1928,6 +1997,9 @@ static const struct board_info __initcon
  	&board_96368mvwg,
  	&board_96368mvngr,
  #endif
diff --git a/target/linux/brcm63xx/patches-3.18/558-board_AR1004G.patch b/target/linux/brcm63xx/patches-3.18/558-board_AR1004G.patch
index 0f66d0c48b..daa01768b2 100644
--- a/target/linux/brcm63xx/patches-3.18/558-board_AR1004G.patch
+++ b/target/linux/brcm63xx/patches-3.18/558-board_AR1004G.patch
@@ -31,7 +31,7 @@ Signed-off-by: Adrian Feliks <mexit@o2.pl>
  
  /* BT Voyager 2110 */
  static struct board_info __initdata board_V2110 = {
-@@ -2006,6 +2022,7 @@ static const struct board_info __initcon
+@@ -1968,6 +1984,7 @@ static const struct board_info __initcon
  	&board_96348A_122,
  	&board_CPVA502plus,
  	&board_96348W3,
@@ -39,7 +39,7 @@ Signed-off-by: Adrian Feliks <mexit@o2.pl>
  #endif
  
  #ifdef CONFIG_BCM63XX_CPU_6358
-@@ -2064,6 +2081,7 @@ static struct of_device_id const bcm963x
+@@ -2026,6 +2043,7 @@ static struct of_device_id const bcm963x
  	{ .compatible = "brcm,bcm96345gw2", .data = &board_96345gw2, },
  #endif
  #ifdef CONFIG_BCM63XX_CPU_6348
diff --git a/target/linux/brcm63xx/patches-3.18/559-board_vw6339gu.patch b/target/linux/brcm63xx/patches-3.18/559-board_vw6339gu.patch
index f3274a85f4..bbbbebae94 100644
--- a/target/linux/brcm63xx/patches-3.18/559-board_vw6339gu.patch
+++ b/target/linux/brcm63xx/patches-3.18/559-board_vw6339gu.patch
@@ -1,6 +1,6 @@
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -1968,6 +1968,108 @@ static struct board_info __initdata boar
+@@ -1930,6 +1930,108 @@ static struct board_info __initdata boar
  		},
  	},
  };
@@ -109,7 +109,7 @@
  #endif /* CONFIG_BCM63XX_CPU_63268 */
  
  /*
-@@ -2054,6 +2156,7 @@ static const struct board_info __initcon
+@@ -2016,6 +2118,7 @@ static const struct board_info __initcon
  #endif
  #ifdef CONFIG_BCM63XX_CPU_63268
  	&board_963269bhr,
diff --git a/target/linux/brcm63xx/patches-3.18/560-board_963268gu_p300.patch b/target/linux/brcm63xx/patches-3.18/560-board_963268gu_p300.patch
index 289e5ded18..c25d8ca93e 100644
--- a/target/linux/brcm63xx/patches-3.18/560-board_963268gu_p300.patch
+++ b/target/linux/brcm63xx/patches-3.18/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
-@@ -1905,6 +1905,66 @@ static struct board_info __initdata boar
+@@ -1867,6 +1867,66 @@ static struct board_info __initdata boar
   * known 63268/63269 boards
   */
  #ifdef CONFIG_BCM63XX_CPU_63268
@@ -67,7 +67,7 @@
  static struct board_info __initdata board_963269bhr = {
  	.name				= "963269BHR",
  	.expected_cpu_id		= 0x63268,
-@@ -2155,6 +2215,7 @@ static const struct board_info __initcon
+@@ -2117,6 +2177,7 @@ static const struct board_info __initcon
  	&board_96368mvngr,
  #endif
  #ifdef CONFIG_BCM63XX_CPU_63268
@@ -75,7 +75,7 @@
  	&board_963269bhr,
  	&board_vw6339gu,
  #endif
-@@ -2238,6 +2299,7 @@ static struct of_device_id const bcm963x
+@@ -2201,6 +2262,7 @@ static struct of_device_id const bcm963x
  	{ .compatible = "brcm,bcm96368mvwg", .data = &board_96368mvwg, },
  #endif
  #ifdef CONFIG_BCM63XX_CPU_63268
diff --git a/target/linux/brcm63xx/patches-3.18/561-board_WAP-5813n.patch b/target/linux/brcm63xx/patches-3.18/561-board_WAP-5813n.patch
index 6412188036..7d40b8c19b 100644
--- a/target/linux/brcm63xx/patches-3.18/561-board_WAP-5813n.patch
+++ b/target/linux/brcm63xx/patches-3.18/561-board_WAP-5813n.patch
@@ -10,7 +10,7 @@
  #include <asm/addrspace.h>
  #include <bcm63xx_board.h>
  #include <bcm63xx_cpu.h>
-@@ -1899,6 +1901,65 @@ static struct board_info __initdata boar
+@@ -1861,6 +1863,65 @@ static struct board_info __initdata boar
  	.has_ohci0 = 1,
  	.has_ehci0 = 1,
  };
@@ -76,7 +76,7 @@
  #endif /* CONFIG_BCM63XX_CPU_6368 */
  
  /*
-@@ -2213,6 +2274,7 @@ static const struct board_info __initcon
+@@ -2175,6 +2236,7 @@ static const struct board_info __initcon
  #ifdef CONFIG_BCM63XX_CPU_6368
  	&board_96368mvwg,
  	&board_96368mvngr,
@@ -84,7 +84,7 @@
  #endif
  #ifdef CONFIG_BCM63XX_CPU_63268
  	&board_963268bu_p300,
-@@ -2297,6 +2359,7 @@ static struct of_device_id const bcm963x
+@@ -2260,6 +2322,7 @@ static struct of_device_id const bcm963x
  #ifdef CONFIG_BCM63XX_CPU_6368
  	{ .compatible = "brcm,bcm96368mvngr", .data = &board_96368mvngr, },
  	{ .compatible = "brcm,bcm96368mvwg", .data = &board_96368mvwg, },
diff --git a/target/linux/brcm63xx/patches-3.18/562-board_VR-3025u.patch b/target/linux/brcm63xx/patches-3.18/562-board_VR-3025u.patch
index 71e9532abf..2c7d4e1395 100644
--- a/target/linux/brcm63xx/patches-3.18/562-board_VR-3025u.patch
+++ b/target/linux/brcm63xx/patches-3.18/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
-@@ -1902,6 +1902,60 @@ static struct board_info __initdata boar
+@@ -1864,6 +1864,60 @@ static struct board_info __initdata boar
  	.has_ehci0 = 1,
  };
  
@@ -61,7 +61,7 @@
  static struct b53_platform_data WAP5813n_b53_pdata = {
  	.alias = "eth0",
  };
-@@ -2274,6 +2328,7 @@ static const struct board_info __initcon
+@@ -2236,6 +2290,7 @@ static const struct board_info __initcon
  #ifdef CONFIG_BCM63XX_CPU_6368
  	&board_96368mvwg,
  	&board_96368mvngr,
@@ -69,7 +69,7 @@
  	&board_WAP5813n,
  #endif
  #ifdef CONFIG_BCM63XX_CPU_63268
-@@ -2359,6 +2414,7 @@ static struct of_device_id const bcm963x
+@@ -2322,6 +2377,7 @@ static struct of_device_id const bcm963x
  #ifdef CONFIG_BCM63XX_CPU_6368
  	{ .compatible = "brcm,bcm96368mvngr", .data = &board_96368mvngr, },
  	{ .compatible = "brcm,bcm96368mvwg", .data = &board_96368mvwg, },
diff --git a/target/linux/brcm63xx/patches-3.18/563-board_VR-3025un.patch b/target/linux/brcm63xx/patches-3.18/563-board_VR-3025un.patch
index 3f3f0b0631..038c0e8758 100644
--- a/target/linux/brcm63xx/patches-3.18/563-board_VR-3025un.patch
+++ b/target/linux/brcm63xx/patches-3.18/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
-@@ -1956,6 +1956,60 @@ static struct board_info __initdata boar
+@@ -1918,6 +1918,60 @@ static struct board_info __initdata boar
  	},
  };
  
@@ -61,7 +61,7 @@
  static struct b53_platform_data WAP5813n_b53_pdata = {
  	.alias = "eth0",
  };
-@@ -2329,6 +2383,7 @@ static const struct board_info __initcon
+@@ -2291,6 +2345,7 @@ static const struct board_info __initcon
  	&board_96368mvwg,
  	&board_96368mvngr,
  	&board_VR3025u,
@@ -69,7 +69,7 @@
  	&board_WAP5813n,
  #endif
  #ifdef CONFIG_BCM63XX_CPU_63268
-@@ -2415,6 +2470,7 @@ static struct of_device_id const bcm963x
+@@ -2378,6 +2433,7 @@ static struct of_device_id const bcm963x
  	{ .compatible = "brcm,bcm96368mvngr", .data = &board_96368mvngr, },
  	{ .compatible = "brcm,bcm96368mvwg", .data = &board_96368mvwg, },
  	{ .compatible = "comtrend,vr-3025u", .data = &board_VR3025u, },
diff --git a/target/linux/brcm63xx/patches-3.18/564-board_P870HW-51a_v2.patch b/target/linux/brcm63xx/patches-3.18/564-board_P870HW-51a_v2.patch
index 1a61b59125..433fa173d0 100644
--- a/target/linux/brcm63xx/patches-3.18/564-board_P870HW-51a_v2.patch
+++ b/target/linux/brcm63xx/patches-3.18/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
-@@ -1911,6 +1911,49 @@ static struct sprom_fixup __initdata vr3
+@@ -1873,6 +1873,49 @@ static struct sprom_fixup __initdata vr3
  	{ .offset = 115, .value = 0xfad9 },
  };
  
@@ -50,7 +50,7 @@
  static struct board_info __initdata board_VR3025u = {
  	.name					= "96368M-1541N",
  	.expected_cpu_id		= 0x6368,
-@@ -2382,6 +2425,7 @@ static const struct board_info __initcon
+@@ -2344,6 +2387,7 @@ static const struct board_info __initcon
  #ifdef CONFIG_BCM63XX_CPU_6368
  	&board_96368mvwg,
  	&board_96368mvngr,
@@ -58,7 +58,7 @@
  	&board_VR3025u,
  	&board_VR3025un,
  	&board_WAP5813n,
-@@ -2472,6 +2516,7 @@ static struct of_device_id const bcm963x
+@@ -2435,6 +2479,7 @@ static struct of_device_id const bcm963x
  	{ .compatible = "comtrend,vr-3025u", .data = &board_VR3025u, },
  	{ .compatible = "comtrend,vr-3025un", .data = &board_VR3025un, },
  	{ .compatible = "comtrend,wap-5813n", .data = &board_WAP5813n, },
diff --git a/target/linux/brcm63xx/patches-3.18/565-board_hw520.patch b/target/linux/brcm63xx/patches-3.18/565-board_hw520.patch
index 1a83b0eed0..70eeaf91f5 100644
--- a/target/linux/brcm63xx/patches-3.18/565-board_hw520.patch
+++ b/target/linux/brcm63xx/patches-3.18/565-board_hw520.patch
@@ -1,6 +1,6 @@
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -1549,6 +1549,37 @@ static struct board_info __initdata boar
+@@ -1511,6 +1511,37 @@ static struct board_info __initdata boar
  	},
  };
  
@@ -38,7 +38,7 @@
  static struct board_info __initdata board_HW553 = {
  	.name                           = "HW553",
  	.expected_cpu_id                = 0x6358,
-@@ -2409,6 +2440,7 @@ static const struct board_info __initcon
+@@ -2371,6 +2402,7 @@ static const struct board_info __initcon
  	&board_nb4_ser_r0,
  	&board_nb4_fxc_r1,
  	&board_ct6373_1,
@@ -46,7 +46,7 @@
  	&board_HW553,
  	&board_HW556_A,
  	&board_HW556_B,
-@@ -2493,6 +2525,7 @@ static struct of_device_id const bcm963x
+@@ -2456,6 +2488,7 @@ static struct of_device_id const bcm963x
  	{ .compatible = "d-link,dsl-274xb-c2", .data = &board_dsl_274xb_rev_c, },
  	{ .compatible = "d-link,dsl-2650u", .data = &board_96358vw2, },
  	{ .compatible = "d-link,dva-g3810bn/tl", .data = &board_DVAG3810BN, },
diff --git a/target/linux/brcm63xx/patches-3.18/566-board_A4001N.patch b/target/linux/brcm63xx/patches-3.18/566-board_A4001N.patch
index 91c140a918..4c4227a3c1 100644
--- a/target/linux/brcm63xx/patches-3.18/566-board_A4001N.patch
+++ b/target/linux/brcm63xx/patches-3.18/566-board_A4001N.patch
@@ -51,7 +51,7 @@
  static struct board_info __initdata board_A4001N1 = {
  	.name					= "963281T_TEF",
  	.expected_cpu_id			= 0x6328,
-@@ -2391,6 +2435,7 @@ static const struct board_info __initcon
+@@ -2353,6 +2397,7 @@ static const struct board_info __initcon
  	&board_AR5381u,
  	&board_AR5387un,
  	&board_963281TAN,
@@ -59,7 +59,7 @@
  	&board_A4001N1,
  	&board_dsl_274xb_f1,
  	&board_FAST2704V2,
-@@ -2475,6 +2520,7 @@ static struct of_device_id const bcm963x
+@@ -2437,6 +2482,7 @@ static struct of_device_id const bcm963x
  	{ .compatible = "netgear,cvg834g", .data = &board_cvg834g, },
  #endif
  #ifdef CONFIG_BCM63XX_CPU_6328
diff --git a/target/linux/brcm63xx/patches-3.18/567-board_dsl-2751b_e1.patch b/target/linux/brcm63xx/patches-3.18/567-board_dsl-2751b_e1.patch
index 37c9713c64..96f8bdd4dd 100644
--- a/target/linux/brcm63xx/patches-3.18/567-board_dsl-2751b_e1.patch
+++ b/target/linux/brcm63xx/patches-3.18/567-board_dsl-2751b_e1.patch
@@ -142,7 +142,7 @@
  #endif /* CONFIG_BCM63XX_CPU_6318 */
  
  /*
-@@ -2429,6 +2564,7 @@ static const struct board_info __initcon
+@@ -2391,6 +2526,7 @@ static const struct board_info __initcon
  #ifdef CONFIG_BCM63XX_CPU_6318
  	&board_96318ref,
  	&board_96318ref_p300,
diff --git a/target/linux/brcm63xx/patches-3.18/568-board_DGND3700v1_3800B.patch b/target/linux/brcm63xx/patches-3.18/568-board_DGND3700v1_3800B.patch
index 896ec8b115..c25c62d0a6 100644
--- a/target/linux/brcm63xx/patches-3.18/568-board_DGND3700v1_3800B.patch
+++ b/target/linux/brcm63xx/patches-3.18/568-board_DGND3700v1_3800B.patch
@@ -1,6 +1,6 @@
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -2112,6 +2112,48 @@ static struct board_info __initdata boar
+@@ -2074,6 +2074,48 @@ static struct board_info __initdata boar
  	.has_ehci0 = 1,
  };
  
@@ -49,7 +49,7 @@
  static struct sprom_fixup __initdata vr3025u_fixups[] = {
  	{ .offset = 97, .value = 0xfeb3 },
  	{ .offset = 98, .value = 0x1618 },
-@@ -2638,6 +2680,7 @@ static const struct board_info __initcon
+@@ -2600,6 +2642,7 @@ static const struct board_info __initcon
  #ifdef CONFIG_BCM63XX_CPU_6368
  	&board_96368mvwg,
  	&board_96368mvngr,
@@ -57,7 +57,7 @@
  	&board_P870HW51A_V2,
  	&board_VR3025u,
  	&board_VR3025un,
-@@ -2731,6 +2774,7 @@ static struct of_device_id const bcm963x
+@@ -2694,6 +2737,7 @@ static struct of_device_id const bcm963x
  	{ .compatible = "comtrend,vr-3025u", .data = &board_VR3025u, },
  	{ .compatible = "comtrend,vr-3025un", .data = &board_VR3025un, },
  	{ .compatible = "comtrend,wap-5813n", .data = &board_WAP5813n, },
diff --git a/target/linux/brcm63xx/patches-3.18/569-board_homehub2a.patch b/target/linux/brcm63xx/patches-3.18/569-board_homehub2a.patch
index ca0f0746f7..a5deb1aa6a 100644
--- a/target/linux/brcm63xx/patches-3.18/569-board_homehub2a.patch
+++ b/target/linux/brcm63xx/patches-3.18/569-board_homehub2a.patch
@@ -1,6 +1,6 @@
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -1728,6 +1728,32 @@ static struct board_info __initdata boar
+@@ -1690,6 +1690,32 @@ static struct board_info __initdata boar
  	},
  };
  
@@ -33,7 +33,7 @@
  static struct board_info __initdata board_HW520 = {
  	.name				= "HW6358GW_B",
  	.expected_cpu_id		= 0x6358,
-@@ -2663,6 +2689,7 @@ static const struct board_info __initcon
+@@ -2625,6 +2651,7 @@ static const struct board_info __initcon
  	&board_nb4_ser_r0,
  	&board_nb4_fxc_r1,
  	&board_ct6373_1,
@@ -41,7 +41,7 @@
  	&board_HW520,
  	&board_HW553,
  	&board_HW556_A,
-@@ -2763,6 +2790,7 @@ static struct of_device_id const bcm963x
+@@ -2726,6 +2753,7 @@ static struct of_device_id const bcm963x
  	{ .compatible = "sfr,nb4-fxc-r1", .data = &board_nb4_fxc_r1, },
  	{ .compatible = "t-com,spw303v", .data = &board_spw303v, },
  	{ .compatible = "telsey,cpva642", .data = &board_CPVA642, },
diff --git a/target/linux/brcm63xx/profiles/telsey.mk b/target/linux/brcm63xx/profiles/telsey.mk
index a8ad31eb1f..759a273d57 100644
--- a/target/linux/brcm63xx/profiles/telsey.mk
+++ b/target/linux/brcm63xx/profiles/telsey.mk
@@ -23,3 +23,12 @@ define Profile/CPVA642/Description
   Package set optimized for CPVA642-type.
 endef
 $(eval $(call Profile,CPVA642))
+
+define Profile/MAGIC
+  NAME:=Telsey MAGIC (Alice W-Gate)
+  PACKAGES:=kmod-b43 wpad-mini
+endef
+define Profile/MAGIC/Description
+  Package set optimized for Telsey MAGIC (Alice W-Gate)
+endef
+$(eval $(call Profile,CPVA502PLUS))
-- 
GitLab