[source] brcm63xx: register serial through device tree

LEDE Commits lede-commits at lists.infradead.org
Sat Dec 16 04:18:28 PST 2017


jogo pushed a commit to source.git, branch master:
https://git.lede-project.org/aba4e29eadfb82ef7f52f85cdb4cd10a4abad622

commit aba4e29eadfb82ef7f52f85cdb4cd10a4abad622
Author: Jonas Gorski <jonas.gorski at gmail.com>
AuthorDate: Mon Jul 31 21:03:37 2017 +0200

    brcm63xx: register serial through device tree
    
    Register serial consoles through device tree instead of through board
    data.
    
    Signed-off-by: Jonas Gorski <jonas.gorski at gmail.com>
---
 target/linux/brcm63xx/dts/a226g.dts                |   5 +
 target/linux/brcm63xx/dts/a226m-fwb.dts            |   5 +
 target/linux/brcm63xx/dts/a226m.dts                |   5 +
 target/linux/brcm63xx/dts/a4001n.dts               |   5 +
 target/linux/brcm63xx/dts/a4001n1.dts              |   5 +
 target/linux/brcm63xx/dts/ad1018-nor.dts           |   5 +
 target/linux/brcm63xx/dts/agpf-s0.dts              |   5 +
 target/linux/brcm63xx/dts/ar-5315u.dts             |   5 +
 target/linux/brcm63xx/dts/ar-5381u.dts             |   5 +
 target/linux/brcm63xx/dts/ar-5387un.dts            |   5 +
 target/linux/brcm63xx/dts/ar1004g.dts              |   5 +
 target/linux/brcm63xx/dts/av4202n.dts              |   5 +
 target/linux/brcm63xx/dts/bcm96318ref.dts          |   5 +
 target/linux/brcm63xx/dts/bcm96318ref_p300.dts     |   5 +
 target/linux/brcm63xx/dts/bcm963268bu_p300.dts     |   5 +
 target/linux/brcm63xx/dts/bcm963269bhr.dts         |   5 +
 target/linux/brcm63xx/dts/bcm963281TAN.dts         |   5 +
 target/linux/brcm63xx/dts/bcm96328avng.dts         |   5 +
 target/linux/brcm63xx/dts/bcm96338GW.dts           |   5 +
 target/linux/brcm63xx/dts/bcm96338W.dts            |   5 +
 target/linux/brcm63xx/dts/bcm96345GW2.dts          |   5 +
 target/linux/brcm63xx/dts/bcm96348GW-10.dts        |   5 +
 target/linux/brcm63xx/dts/bcm96348GW-11.dts        |   5 +
 target/linux/brcm63xx/dts/bcm96348GW.dts           |   5 +
 target/linux/brcm63xx/dts/bcm96348R.dts            |   5 +
 target/linux/brcm63xx/dts/bcm96358VW.dts           |   5 +
 target/linux/brcm63xx/dts/bcm96358VW2.dts          |   5 +
 target/linux/brcm63xx/dts/bcm96368MVNgr.dts        |   5 +
 target/linux/brcm63xx/dts/bcm96368MVWG.dts         |   5 +
 target/linux/brcm63xx/dts/cpva502plus.dts          |   5 +
 target/linux/brcm63xx/dts/cpva642.dts              |   5 +
 target/linux/brcm63xx/dts/ct-5365.dts              |   5 +
 target/linux/brcm63xx/dts/ct-6373.dts              |   5 +
 target/linux/brcm63xx/dts/ct536plus.dts            |   5 +
 target/linux/brcm63xx/dts/cvg834g.dts              |   9 +
 target/linux/brcm63xx/dts/dg834g_v4.dts            |   5 +
 target/linux/brcm63xx/dts/dg834gtpn.dts            |   5 +
 target/linux/brcm63xx/dts/dgnd3700v1.dts           |   5 +
 target/linux/brcm63xx/dts/dsl-2640b-b.dts          |   5 +
 target/linux/brcm63xx/dts/dsl-2640u.dts            |   5 +
 target/linux/brcm63xx/dts/dsl-2650u.dts            |   5 +
 target/linux/brcm63xx/dts/dsl-274xb-c.dts          |   5 +
 target/linux/brcm63xx/dts/dsl-274xb-f.dts          |   5 +
 target/linux/brcm63xx/dts/dsl-275xb-d.dts          |   5 +
 target/linux/brcm63xx/dts/dv-201amr.dts            |   5 +
 target/linux/brcm63xx/dts/dva-g3810bn_tl.dts       |   5 +
 target/linux/brcm63xx/dts/evg2000.dts              |   5 +
 target/linux/brcm63xx/dts/f5d7633.dts              |   5 +
 target/linux/brcm63xx/dts/fast2404.dts             |   5 +
 target/linux/brcm63xx/dts/fast2504n.dts            |   5 +
 target/linux/brcm63xx/dts/fast2604.dts             |   5 +
 target/linux/brcm63xx/dts/fast2704n.dts            |   5 +
 target/linux/brcm63xx/dts/fast2704v2.dts           |   5 +
 target/linux/brcm63xx/dts/gw6000.dts               |   5 +
 target/linux/brcm63xx/dts/gw6200.dts               |   5 +
 target/linux/brcm63xx/dts/hg520v.dts               |   5 +
 target/linux/brcm63xx/dts/hg553.dts                |   5 +
 target/linux/brcm63xx/dts/hg556a-a.dts             |   5 +
 target/linux/brcm63xx/dts/hg556a-b.dts             |   5 +
 target/linux/brcm63xx/dts/hg556a-c.dts             |   5 +
 target/linux/brcm63xx/dts/hg622.dts                |   5 +
 target/linux/brcm63xx/dts/hg655b.dts               |   5 +
 target/linux/brcm63xx/dts/homehub2a.dts            |   5 +
 target/linux/brcm63xx/dts/livebox-blue-5g.dts      |   5 +
 target/linux/brcm63xx/dts/magic.dts                |   5 +
 target/linux/brcm63xx/dts/nb4-fxc-r1.dts           |   5 +
 target/linux/brcm63xx/dts/nb4-ser-r0.dts           |   5 +
 target/linux/brcm63xx/dts/nb6-ser-r0.dts           |   5 +
 target/linux/brcm63xx/dts/p870hw-51a-v2.dts        |   5 +
 target/linux/brcm63xx/dts/r1000h.dts               |   9 +
 target/linux/brcm63xx/dts/r5010unv2.dts            |   5 +
 target/linux/brcm63xx/dts/rg100a.dts               |   5 +
 target/linux/brcm63xx/dts/rta1025w.dts             |   5 +
 target/linux/brcm63xx/dts/rta1320.dts              |   5 +
 target/linux/brcm63xx/dts/rta770bw.dts             |   5 +
 target/linux/brcm63xx/dts/rta770w.dts              |   5 +
 target/linux/brcm63xx/dts/spw303v.dts              |   5 +
 target/linux/brcm63xx/dts/spw500v.dts              |   5 +
 target/linux/brcm63xx/dts/td-w8900gb.dts           |   5 +
 target/linux/brcm63xx/dts/usr9108.dts              |   5 +
 target/linux/brcm63xx/dts/v2110.dts                |   5 +
 target/linux/brcm63xx/dts/v2500v-bb.dts            |   5 +
 target/linux/brcm63xx/dts/vg50.dts                 |   5 +
 target/linux/brcm63xx/dts/vh4032n.dts              |   5 +
 target/linux/brcm63xx/dts/vr-3025u.dts             |   5 +
 target/linux/brcm63xx/dts/vr-3025un.dts            |   5 +
 target/linux/brcm63xx/dts/vr-3026e.dts             |   5 +
 target/linux/brcm63xx/dts/wap-5813n.dts            |   5 +
 ...ial-bcm63xx_uart-use-correct-alias-naming.patch |  37 +++
 ..._uart-use-refclk-for-the-expected-clock-n.patch |   2 +-
 ...xx_uart-allow-naming-clock-in-device-tree.patch |   2 +-
 ...S-BCM63XX-do-not-register-SPI-controllers.patch | 135 +++++++++++
 .../391-MIPS-BCM63XX-do-not-register-uart.patch    | 257 +++++++++++++++++++++
 ...392-MIPS-BCM63XX-remove-leds-and-buttons.patch} |  36 +--
 .../403-6358-enet1-external-mii-clk.patch          |   2 +-
 ...IPS-BCM63XX-Register-SPI-flash-if-present.patch |  18 +-
 ...-allow-providing-fixup-data-in-board-data.patch |  12 +-
 ...PS-BCM63XX-export-the-attached-flash-type.patch |   2 +-
 ...416-BCM63XX-add-a-fixup-for-ath9k-devices.patch |   5 +-
 .../420-BCM63XX-add-endian-check-for-ath9k.patch   |   4 +-
 .../421-BCM63XX-add-led-pin-for-ath9k.patch        |   4 +-
 ...22-BCM63XX-add-a-fixup-for-rt2x00-devices.patch |   8 +-
 .../patches-4.4/427-boards_probe_switch.patch      |  40 ++--
 ...99-allow_better_context_for_board_patches.patch |  20 +-
 .../brcm63xx/patches-4.4/500-board-D4PW.patch      |   7 +-
 .../linux/brcm63xx/patches-4.4/501-board-NB4.patch |   8 +-
 .../patches-4.4/502-board-96338W2_E7T.patch        |   8 +-
 .../brcm63xx/patches-4.4/503-board-CPVA642.patch   |   9 +-
 .../patches-4.4/504-board_dsl_274xb_rev_c.patch    |   7 +-
 .../brcm63xx/patches-4.4/505-board_spw500v.patch   |   7 +-
 .../patches-4.4/506-board_gw6200_gw6000.patch      |   8 +-
 .../brcm63xx/patches-4.4/507-board-MAGIC.patch     |   7 +-
 .../brcm63xx/patches-4.4/508-board_hw553.patch     |   8 +-
 .../patches-4.4/509-board_rta1320_16m.patch        |   7 +-
 .../brcm63xx/patches-4.4/510-board_spw303v.patch   |   7 +-
 .../brcm63xx/patches-4.4/511-board_V2500V.patch    |  13 +-
 .../brcm63xx/patches-4.4/512-board_BTV2110.patch   |   9 +-
 ...MIPS-BCM63XX-add-inventel-Livebox-support.patch |   5 +-
 .../patches-4.4/514-board_ct536_ct5621.patch       |   7 +-
 .../patches-4.4/515-board_DWV-S0_fixes.patch       |  11 +-
 .../patches-4.4/516-board_96348A-122.patch         |   7 +-
 .../patches-4.4/517-RTA1205W_16_uart_fixes.patch   |  10 -
 .../patches-4.4/519_board_CPVA502plus.patch        |   7 +-
 ...0-bcm63xx-add-support-for-96368MVWG-board.patch |   9 +-
 ...-bcm63xx-add-support-for-96368MVNgr-board.patch |   7 +-
 ...IPS-BCM63XX-add-96328avng-reference-board.patch |   6 +-
 ...IPS-BCM63XX-add-963281TAN-reference-board.patch |   7 +-
 .../patches-4.4/524-board_dsl_274xb_rev_f.patch    |   7 +-
 .../brcm63xx/patches-4.4/525-board_96348w3.patch   |   7 +-
 .../brcm63xx/patches-4.4/526-board_CT6373-1.patch  |   7 +-
 .../patches-4.4/527-board_dva-g3810bn-tl-1.patch   |   7 +-
 .../linux/brcm63xx/patches-4.4/528-board_nb6.patch |   8 +-
 .../brcm63xx/patches-4.4/529-board_fast2604.patch  |   7 +-
 .../brcm63xx/patches-4.4/530-board_A4001N1.patch   |   7 +-
 .../brcm63xx/patches-4.4/531-board_AR-5387un.patch |   7 +-
 .../brcm63xx/patches-4.4/532-board_AR-5381u.patch  |   7 +-
 .../brcm63xx/patches-4.4/533-board_rta770bw.patch  |  12 +-
 .../brcm63xx/patches-4.4/534-board_hw556.patch     |   9 +-
 .../brcm63xx/patches-4.4/535-board_rta770w.patch   |   8 +-
 .../brcm63xx/patches-4.4/536-board_fast2704.patch  |   7 +-
 .../brcm63xx/patches-4.4/537-board_fast2504n.patch |   8 +-
 .../brcm63xx/patches-4.4/555-board_96318ref.patch  |   7 +-
 .../patches-4.4/556-board_96318ref_p300.patch      |   7 +-
 .../patches-4.4/557-board_bcm963269bhr.patch       |   8 +-
 .../brcm63xx/patches-4.4/558-board_AR1004G.patch   |   7 +-
 .../brcm63xx/patches-4.4/559-board_vw6339gu.patch  |   8 +-
 .../patches-4.4/560-board_963268gu_p300.patch      |   8 +-
 .../brcm63xx/patches-4.4/561-board_WAP-5813n.patch |   7 +-
 .../brcm63xx/patches-4.4/562-board_VR-3025u.patch  |   7 +-
 .../brcm63xx/patches-4.4/563-board_VR-3025un.patch |   7 +-
 .../patches-4.4/564-board_P870HW-51a_v2.patch      |   7 +-
 .../brcm63xx/patches-4.4/565-board_hw520.patch     |   7 +-
 .../brcm63xx/patches-4.4/566-board_A4001N.patch    |   7 +-
 .../patches-4.4/567-board_dsl-2751b_e1.patch       |   7 +-
 .../patches-4.4/568-board_DGND3700v1_3800B.patch   |   7 +-
 .../brcm63xx/patches-4.4/569-board_homehub2a.patch |   7 +-
 .../brcm63xx/patches-4.4/570-board_HG655b.patch    |   7 +-
 .../brcm63xx/patches-4.4/571-board_fast2704n.patch |   7 +-
 .../brcm63xx/patches-4.4/572-board_VR-3026e.patch  |   7 +-
 .../brcm63xx/patches-4.4/573-board_R5010UNv2.patch |   7 +-
 .../brcm63xx/patches-4.4/574-board_HG622.patch     |   7 +-
 .../brcm63xx/patches-4.4/575-board_EVG2000.patch   |   7 +-
 .../brcm63xx/patches-4.4/576-board_AV4202N.patch   |   7 +-
 .../brcm63xx/patches-4.4/577-board_VH4032N.patch   |   7 +-
 .../brcm63xx/patches-4.4/578-board_R1000H.patch    |   8 +-
 .../brcm63xx/patches-4.4/579-board_AR-5315u.patch  |   7 +-
 .../brcm63xx/patches-4.4/580-board_AD1018.patch    |   7 +-
 167 files changed, 1144 insertions(+), 363 deletions(-)

diff --git a/target/linux/brcm63xx/dts/a226g.dts b/target/linux/brcm63xx/dts/a226g.dts
index f7a0b72..921e46c 100644
--- a/target/linux/brcm63xx/dts/a226g.dts
+++ b/target/linux/brcm63xx/dts/a226g.dts
@@ -10,6 +10,7 @@
 
 	chosen {
 		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
 	};
 
 	gpio-keys-polled {
@@ -111,3 +112,7 @@
 		reg = <0x7f0000 0x010000>;
 	};
 };
+
+&uart0 {
+	status = "ok";
+};
diff --git a/target/linux/brcm63xx/dts/a226m-fwb.dts b/target/linux/brcm63xx/dts/a226m-fwb.dts
index 43a82bb..c21d06e 100644
--- a/target/linux/brcm63xx/dts/a226m-fwb.dts
+++ b/target/linux/brcm63xx/dts/a226m-fwb.dts
@@ -10,6 +10,7 @@
 
 	chosen {
 		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
 	};
 
 	gpio-keys-polled {
@@ -111,3 +112,7 @@
 		reg = <0xfe0000 0x020000>;
 	};
 };
+
+&uart0 {
+	status = "ok";
+};
diff --git a/target/linux/brcm63xx/dts/a226m.dts b/target/linux/brcm63xx/dts/a226m.dts
index 269c4ed..7c8bdab 100644
--- a/target/linux/brcm63xx/dts/a226m.dts
+++ b/target/linux/brcm63xx/dts/a226m.dts
@@ -10,6 +10,7 @@
 
 	chosen {
 		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
 	};
 
 	gpio-keys-polled {
@@ -111,3 +112,7 @@
 		reg = <0x7f0000 0x010000>;
 	};
 };
+
+&uart0 {
+	status = "ok";
+};
diff --git a/target/linux/brcm63xx/dts/a4001n.dts b/target/linux/brcm63xx/dts/a4001n.dts
index d29b834..db83543 100644
--- a/target/linux/brcm63xx/dts/a4001n.dts
+++ b/target/linux/brcm63xx/dts/a4001n.dts
@@ -10,6 +10,7 @@
 
 	chosen {
 		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
 	};
 
 	gpio-keys-polled {
@@ -90,3 +91,7 @@
 		};
 	};
 };
+
+&uart0 {
+	status = "ok";
+};
diff --git a/target/linux/brcm63xx/dts/a4001n1.dts b/target/linux/brcm63xx/dts/a4001n1.dts
index 3254897..ad1590d 100644
--- a/target/linux/brcm63xx/dts/a4001n1.dts
+++ b/target/linux/brcm63xx/dts/a4001n1.dts
@@ -10,6 +10,7 @@
 
 	chosen {
 		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
 	};
 
 	gpio-keys-polled {
@@ -118,3 +119,7 @@
 		};
 	};
 };
+
+&uart0 {
+	status = "ok";
+};
diff --git a/target/linux/brcm63xx/dts/ad1018-nor.dts b/target/linux/brcm63xx/dts/ad1018-nor.dts
index d7632c6..7a630a1 100644
--- a/target/linux/brcm63xx/dts/ad1018-nor.dts
+++ b/target/linux/brcm63xx/dts/ad1018-nor.dts
@@ -10,6 +10,7 @@
 
 	chosen {
 		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
 	};
 
 	gpio-keys-polled {
@@ -134,3 +135,7 @@
 		linux,part-probe = "bcm63xxpart";
 	};
 };
+
+&uart0 {
+	status = "ok";
+};
diff --git a/target/linux/brcm63xx/dts/agpf-s0.dts b/target/linux/brcm63xx/dts/agpf-s0.dts
index be1f9fb..6ac3801 100644
--- a/target/linux/brcm63xx/dts/agpf-s0.dts
+++ b/target/linux/brcm63xx/dts/agpf-s0.dts
@@ -10,6 +10,7 @@
 
 	chosen {
 		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
 	};
 
 	gpio-keys-polled {
@@ -115,3 +116,7 @@
 		reg = <0xfe0000 0x020000>;
 	};
 };
+
+&uart0 {
+	status = "ok";
+};
diff --git a/target/linux/brcm63xx/dts/ar-5315u.dts b/target/linux/brcm63xx/dts/ar-5315u.dts
index 63883f0..e359fe4 100644
--- a/target/linux/brcm63xx/dts/ar-5315u.dts
+++ b/target/linux/brcm63xx/dts/ar-5315u.dts
@@ -10,6 +10,7 @@
 
 	chosen {
 		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
 	};
 
 	gpio-keys-polled {
@@ -104,3 +105,7 @@
 	pinctrl-0 = <&pinctrl_ephy0_act_led &pinctrl_ephy1_act_led
 		     &pinctrl_ephy2_act_led &pinctrl_ephy3_act_led>;
 };
+
+&uart0 {
+	status = "ok";
+};
diff --git a/target/linux/brcm63xx/dts/ar-5381u.dts b/target/linux/brcm63xx/dts/ar-5381u.dts
index 883198c..9da5b7e 100644
--- a/target/linux/brcm63xx/dts/ar-5381u.dts
+++ b/target/linux/brcm63xx/dts/ar-5381u.dts
@@ -10,6 +10,7 @@
 
 	chosen {
 		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
 	};
 
 	gpio-keys-polled {
@@ -77,3 +78,7 @@
 		};
 	};
 };
+
+&uart0 {
+	status = "ok";
+};
diff --git a/target/linux/brcm63xx/dts/ar-5387un.dts b/target/linux/brcm63xx/dts/ar-5387un.dts
index a0e07fb..4dd7145 100644
--- a/target/linux/brcm63xx/dts/ar-5387un.dts
+++ b/target/linux/brcm63xx/dts/ar-5387un.dts
@@ -10,6 +10,7 @@
 
 	chosen {
 		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
 	};
 
 	gpio-keys-polled {
@@ -85,3 +86,7 @@
 		};
 	};
 };
+
+&uart0 {
+	status = "ok";
+};
diff --git a/target/linux/brcm63xx/dts/ar1004g.dts b/target/linux/brcm63xx/dts/ar1004g.dts
index eb6d9a2..e7265f4 100644
--- a/target/linux/brcm63xx/dts/ar1004g.dts
+++ b/target/linux/brcm63xx/dts/ar1004g.dts
@@ -10,6 +10,7 @@
 
 	chosen {
 		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
 	};
 
 	gpio-keys-polled {
@@ -71,3 +72,7 @@
 	pinctrl-names = "default";
 	pinctrl-0 = <&pinctrl_ext_mii &pinctrl_pci>;
 };
+
+&uart0 {
+	status = "ok";
+};
diff --git a/target/linux/brcm63xx/dts/av4202n.dts b/target/linux/brcm63xx/dts/av4202n.dts
index 4babd3b..ef61607 100644
--- a/target/linux/brcm63xx/dts/av4202n.dts
+++ b/target/linux/brcm63xx/dts/av4202n.dts
@@ -11,6 +11,7 @@
 
 	chosen {
 		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
 	};
 
 	gpio-keys-polled {
@@ -88,3 +89,7 @@
 		reg = <0xfe0000 0x020000>;
 	};
 };
+
+&uart0 {
+	status = "ok";
+};
diff --git a/target/linux/brcm63xx/dts/bcm96318ref.dts b/target/linux/brcm63xx/dts/bcm96318ref.dts
index 5780ccb..e48c0bf 100644
--- a/target/linux/brcm63xx/dts/bcm96318ref.dts
+++ b/target/linux/brcm63xx/dts/bcm96318ref.dts
@@ -10,6 +10,7 @@
 
 	chosen {
 		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
 	};
 
 	gpio-keys-polled {
@@ -73,3 +74,7 @@
 	pinctrl-names = "default";
 	pinctrl-0 = <&pinctrl_usb_pwron>;
 };
+
+&uart0 {
+	status = "ok";
+};
diff --git a/target/linux/brcm63xx/dts/bcm96318ref_p300.dts b/target/linux/brcm63xx/dts/bcm96318ref_p300.dts
index 8fae7fa..db9d5ec 100644
--- a/target/linux/brcm63xx/dts/bcm96318ref_p300.dts
+++ b/target/linux/brcm63xx/dts/bcm96318ref_p300.dts
@@ -10,6 +10,7 @@
 
 	chosen {
 		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
 	};
 
 	gpio-keys-polled {
@@ -79,3 +80,7 @@
 	pinctrl-names = "default";
 	pinctrl-0 = <&pinctrl_usb_pwron>;
 };
+
+&uart0 {
+	status = "ok";
+};
diff --git a/target/linux/brcm63xx/dts/bcm963268bu_p300.dts b/target/linux/brcm63xx/dts/bcm963268bu_p300.dts
index a96bed7..2bccb57 100644
--- a/target/linux/brcm63xx/dts/bcm963268bu_p300.dts
+++ b/target/linux/brcm63xx/dts/bcm963268bu_p300.dts
@@ -10,6 +10,7 @@
 
 	chosen {
 		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
 	};
 
 	gpio-keys-polled {
@@ -49,3 +50,7 @@
 		linux,part-probe = "bcm63xxpart";
 	};
 };
+
+&uart0 {
+	status = "ok";
+};
diff --git a/target/linux/brcm63xx/dts/bcm963269bhr.dts b/target/linux/brcm63xx/dts/bcm963269bhr.dts
index 4984f8f..d3c7098 100644
--- a/target/linux/brcm63xx/dts/bcm963269bhr.dts
+++ b/target/linux/brcm63xx/dts/bcm963269bhr.dts
@@ -10,6 +10,7 @@
 
 	chosen {
 		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
 	};
 
 	gpio-keys-polled {
@@ -57,3 +58,7 @@
 		linux,part-probe = "bcm63xxpart";
 	};
 };
+
+&uart0 {
+	status = "ok";
+};
diff --git a/target/linux/brcm63xx/dts/bcm963281TAN.dts b/target/linux/brcm63xx/dts/bcm963281TAN.dts
index a1c5d7a..d0d19a3 100644
--- a/target/linux/brcm63xx/dts/bcm963281TAN.dts
+++ b/target/linux/brcm63xx/dts/bcm963281TAN.dts
@@ -10,6 +10,7 @@
 
 	chosen {
 		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
 	};
 
 	gpio-leds {
@@ -59,3 +60,7 @@
 		linux,part-probe = "bcm63xxpart";
 	};
 };
+
+&uart0 {
+	status = "ok";
+};
diff --git a/target/linux/brcm63xx/dts/bcm96328avng.dts b/target/linux/brcm63xx/dts/bcm96328avng.dts
index e74a60a..d0d6788 100644
--- a/target/linux/brcm63xx/dts/bcm96328avng.dts
+++ b/target/linux/brcm63xx/dts/bcm96328avng.dts
@@ -10,6 +10,7 @@
 
 	chosen {
 		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
 	};
 
 	gpio-leds {
@@ -64,3 +65,7 @@
 	pinctrl-names = "default";
 	pinctrl-0 = <&pinctrl_usb_port1_device>;
 };
+
+&uart0 {
+	status = "ok";
+};
diff --git a/target/linux/brcm63xx/dts/bcm96338GW.dts b/target/linux/brcm63xx/dts/bcm96338GW.dts
index 7815962..d6ff449 100644
--- a/target/linux/brcm63xx/dts/bcm96338GW.dts
+++ b/target/linux/brcm63xx/dts/bcm96338GW.dts
@@ -10,6 +10,7 @@
 
 	chosen {
 		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
 	};
 
 	gpio-leds {
@@ -44,3 +45,7 @@
 
 	linux,part-probe = "bcm63xxpart";
 };
+
+&uart0 {
+	status = "ok";
+};
diff --git a/target/linux/brcm63xx/dts/bcm96338W.dts b/target/linux/brcm63xx/dts/bcm96338W.dts
index 2119070..f91ca9a 100644
--- a/target/linux/brcm63xx/dts/bcm96338W.dts
+++ b/target/linux/brcm63xx/dts/bcm96338W.dts
@@ -10,6 +10,7 @@
 
 	chosen {
 		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
 	};
 
 	gpio-leds {
@@ -44,3 +45,7 @@
 
 	linux,part-probe = "bcm63xxpart";
 };
+
+&uart0 {
+	status = "ok";
+};
diff --git a/target/linux/brcm63xx/dts/bcm96345GW2.dts b/target/linux/brcm63xx/dts/bcm96345GW2.dts
index 521f1b3..a7b3fad 100644
--- a/target/linux/brcm63xx/dts/bcm96345GW2.dts
+++ b/target/linux/brcm63xx/dts/bcm96345GW2.dts
@@ -10,6 +10,7 @@
 
 	chosen {
 		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
 	};
 };
 
@@ -18,3 +19,7 @@
 
 	linux,part-probe = "bcm63xxpart";
 };
+
+&uart0 {
+	status = "ok";
+};
diff --git a/target/linux/brcm63xx/dts/bcm96348GW-10.dts b/target/linux/brcm63xx/dts/bcm96348GW-10.dts
index d788057..59850b5 100644
--- a/target/linux/brcm63xx/dts/bcm96348GW-10.dts
+++ b/target/linux/brcm63xx/dts/bcm96348GW-10.dts
@@ -10,6 +10,7 @@
 
 	chosen {
 		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
 	};
 
 	gpio-keys-polled {
@@ -63,3 +64,7 @@
 	pinctrl-names = "default";
 	pinctrl-0 = <&pinctrl_pci &pinctrl_ext_mii &pinctrl_mii_pccard>;
 };
+
+&uart0 {
+	status = "ok";
+};
diff --git a/target/linux/brcm63xx/dts/bcm96348GW-11.dts b/target/linux/brcm63xx/dts/bcm96348GW-11.dts
index 9ef82e6..3caca09 100644
--- a/target/linux/brcm63xx/dts/bcm96348GW-11.dts
+++ b/target/linux/brcm63xx/dts/bcm96348GW-11.dts
@@ -10,6 +10,7 @@
 
 	chosen {
 		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
 	};
 
 	gpio-keys-polled {
@@ -63,3 +64,7 @@
 	pinctrl-names = "default";
 	pinctrl-0 = <&pinctrl_pci &pinctrl_ext_mii &pinctrl_mii_pccard>;
 };
+
+&uart0 {
+	status = "ok";
+};
diff --git a/target/linux/brcm63xx/dts/bcm96348GW.dts b/target/linux/brcm63xx/dts/bcm96348GW.dts
index d7511b0..c213ac7 100644
--- a/target/linux/brcm63xx/dts/bcm96348GW.dts
+++ b/target/linux/brcm63xx/dts/bcm96348GW.dts
@@ -10,6 +10,7 @@
 
 	chosen {
 		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
 	};
 
 	gpio-keys-polled {
@@ -63,3 +64,7 @@
 	pinctrl-names = "default";
 	pinctrl-0 = <&pinctrl_pci &pinctrl_ext_mii>;
 };
+
+&uart0 {
+	status = "ok";
+};
diff --git a/target/linux/brcm63xx/dts/bcm96348R.dts b/target/linux/brcm63xx/dts/bcm96348R.dts
index 3042693..b56869b 100644
--- a/target/linux/brcm63xx/dts/bcm96348R.dts
+++ b/target/linux/brcm63xx/dts/bcm96348R.dts
@@ -10,6 +10,7 @@
 
 	chosen {
 		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
 	};
 
 	gpio-leds {
@@ -49,3 +50,7 @@
 	pinctrl-names = "default";
 	pinctrl-0 = <&pinctrl_pci>;
 };
+
+&uart0 {
+	status = "ok";
+};
diff --git a/target/linux/brcm63xx/dts/bcm96358VW.dts b/target/linux/brcm63xx/dts/bcm96358VW.dts
index c2fe5b0..e097c05 100644
--- a/target/linux/brcm63xx/dts/bcm96358VW.dts
+++ b/target/linux/brcm63xx/dts/bcm96358VW.dts
@@ -10,6 +10,7 @@
 
 	chosen {
 		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
 	};
 
 	gpio-leds {
@@ -44,3 +45,7 @@
 
 	linux,part-probe = "bcm63xxpart";
 };
+
+&uart0 {
+	status = "ok";
+};
diff --git a/target/linux/brcm63xx/dts/bcm96358VW2.dts b/target/linux/brcm63xx/dts/bcm96358VW2.dts
index cc4a8b5..5c242c2 100644
--- a/target/linux/brcm63xx/dts/bcm96358VW2.dts
+++ b/target/linux/brcm63xx/dts/bcm96358VW2.dts
@@ -10,6 +10,7 @@
 
 	chosen {
 		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
 	};
 
 	gpio-leds {
@@ -40,3 +41,7 @@
 
 	linux,part-probe = "bcm63xxpart";
 };
+
+&uart0 {
+	status = "ok";
+};
diff --git a/target/linux/brcm63xx/dts/bcm96368MVNgr.dts b/target/linux/brcm63xx/dts/bcm96368MVNgr.dts
index 1078be7..6c4ef09 100644
--- a/target/linux/brcm63xx/dts/bcm96368MVNgr.dts
+++ b/target/linux/brcm63xx/dts/bcm96368MVNgr.dts
@@ -10,6 +10,7 @@
 
 	chosen {
 		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
 	};
 
 	gpio-leds {
@@ -49,3 +50,7 @@
 	pinctrl-names = "default";
 	pinctrl-0 = <&pinctrl_pci>;
 };
+
+&uart0 {
+	status = "ok";
+};
diff --git a/target/linux/brcm63xx/dts/bcm96368MVWG.dts b/target/linux/brcm63xx/dts/bcm96368MVWG.dts
index 0f7c42b..ed1dd90 100644
--- a/target/linux/brcm63xx/dts/bcm96368MVWG.dts
+++ b/target/linux/brcm63xx/dts/bcm96368MVWG.dts
@@ -10,6 +10,7 @@
 
 	chosen {
 		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
 	};
 
 	gpio-leds {
@@ -49,3 +50,7 @@
 	pinctrl-names = "default";
 	pinctrl-0 = <&pinctrl_pci>;
 };
+
+&uart0 {
+	status = "ok";
+};
diff --git a/target/linux/brcm63xx/dts/cpva502plus.dts b/target/linux/brcm63xx/dts/cpva502plus.dts
index dbe7aae..6d8455e 100644
--- a/target/linux/brcm63xx/dts/cpva502plus.dts
+++ b/target/linux/brcm63xx/dts/cpva502plus.dts
@@ -10,6 +10,7 @@
 
 	chosen {
 		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
 	};
 
 	gpio-keys-polled {
@@ -67,3 +68,7 @@
 	pinctrl-names = "default";
 	pinctrl-0 = <&pinctrl_pci &pinctrl_ext_mii>;
 };
+
+&uart0 {
+	status = "ok";
+};
diff --git a/target/linux/brcm63xx/dts/cpva642.dts b/target/linux/brcm63xx/dts/cpva642.dts
index 108997d..212bf6c 100644
--- a/target/linux/brcm63xx/dts/cpva642.dts
+++ b/target/linux/brcm63xx/dts/cpva642.dts
@@ -10,6 +10,7 @@
 
 	chosen {
 		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
 	};
 
 	gpio-keys-polled {
@@ -99,3 +100,7 @@
 		reg = <0x7f0000 0x010000>;
 	};
 };
+
+&uart0 {
+	status = "ok";
+};
diff --git a/target/linux/brcm63xx/dts/ct-5365.dts b/target/linux/brcm63xx/dts/ct-5365.dts
index f067649..ac3b809 100644
--- a/target/linux/brcm63xx/dts/ct-5365.dts
+++ b/target/linux/brcm63xx/dts/ct-5365.dts
@@ -10,6 +10,7 @@
 
 	chosen {
 		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
 	};
 
 	gpio-keys-polled {
@@ -81,3 +82,7 @@
 	pinctrl-names = "default";
 	pinctrl-0 = <&pinctrl_pci &pinctrl_ext_mii>;
 };
+
+&uart0 {
+	status = "ok";
+};
diff --git a/target/linux/brcm63xx/dts/ct-6373.dts b/target/linux/brcm63xx/dts/ct-6373.dts
index 8ddcacb..579b514 100644
--- a/target/linux/brcm63xx/dts/ct-6373.dts
+++ b/target/linux/brcm63xx/dts/ct-6373.dts
@@ -10,6 +10,7 @@
 
 	chosen {
 		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
 	};
 
 	gpio-keys-polled {
@@ -97,3 +98,7 @@
 		reg = <0x7f0000 0x010000>;
 	};
 };
+
+&uart0 {
+	status = "ok";
+};
diff --git a/target/linux/brcm63xx/dts/ct536plus.dts b/target/linux/brcm63xx/dts/ct536plus.dts
index 8aa4757..f9bc7e1 100644
--- a/target/linux/brcm63xx/dts/ct536plus.dts
+++ b/target/linux/brcm63xx/dts/ct536plus.dts
@@ -10,6 +10,7 @@
 
 	chosen {
 		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
 	};
 
 	gpio-keys-polled {
@@ -67,3 +68,7 @@
 	pinctrl-names = "default";
 	pinctrl-0 = <&pinctrl_pci &pinctrl_ext_mii &pinctrl_mii_pccard>;
 };
+
+&uart0 {
+	status = "ok";
+};
diff --git a/target/linux/brcm63xx/dts/cvg834g.dts b/target/linux/brcm63xx/dts/cvg834g.dts
index 519f1f5..fa14c8b 100644
--- a/target/linux/brcm63xx/dts/cvg834g.dts
+++ b/target/linux/brcm63xx/dts/cvg834g.dts
@@ -10,6 +10,7 @@
 
 	chosen {
 		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
 	};
 
 	gpio-leds {
@@ -44,3 +45,11 @@
 		reg = <0x3f0000 0x010000>;
 	};
 };
+
+&uart0 {
+	status = "ok";
+};
+
+&uart1 {
+	status = "ok";
+};
diff --git a/target/linux/brcm63xx/dts/dg834g_v4.dts b/target/linux/brcm63xx/dts/dg834g_v4.dts
index 0af695d..369a67c 100644
--- a/target/linux/brcm63xx/dts/dg834g_v4.dts
+++ b/target/linux/brcm63xx/dts/dg834g_v4.dts
@@ -10,6 +10,7 @@
 
 	chosen {
 		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
 	};
 
 	gpio-keys-polled {
@@ -75,3 +76,7 @@
 	pinctrl-names = "default";
 	pinctrl-0 = <&pinctrl_pci &pinctrl_ext_mii>;
 };
+
+&uart0 {
+	status = "ok";
+};
diff --git a/target/linux/brcm63xx/dts/dg834gtpn.dts b/target/linux/brcm63xx/dts/dg834gtpn.dts
index 84ef9b2..794c701 100644
--- a/target/linux/brcm63xx/dts/dg834gtpn.dts
+++ b/target/linux/brcm63xx/dts/dg834gtpn.dts
@@ -10,6 +10,7 @@
 
 	chosen {
 		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
 	};
 
 	gpio-keys-polled {
@@ -79,3 +80,7 @@
 	pinctrl-names = "default";
 	pinctrl-0 = <&pinctrl_pci &pinctrl_ext_mii &pinctrl_mii_pccard>;
 };
+
+&uart0 {
+	status = "ok";
+};
diff --git a/target/linux/brcm63xx/dts/dgnd3700v1.dts b/target/linux/brcm63xx/dts/dgnd3700v1.dts
index ea917e8..2d23f19 100644
--- a/target/linux/brcm63xx/dts/dgnd3700v1.dts
+++ b/target/linux/brcm63xx/dts/dgnd3700v1.dts
@@ -10,6 +10,7 @@
 
 	chosen {
 		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
 	};
 
 	gpio-keys-polled {
@@ -169,3 +170,7 @@
 		};
 	};
 };
+
+&uart0 {
+	status = "ok";
+};
diff --git a/target/linux/brcm63xx/dts/dsl-2640b-b.dts b/target/linux/brcm63xx/dts/dsl-2640b-b.dts
index fce774d..df7f4ad 100644
--- a/target/linux/brcm63xx/dts/dsl-2640b-b.dts
+++ b/target/linux/brcm63xx/dts/dsl-2640b-b.dts
@@ -10,6 +10,7 @@
 
 	chosen {
 		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
 	};
 
 	gpio-keys-polled {
@@ -75,3 +76,7 @@
 	pinctrl-names = "default";
 	pinctrl-0 = <&pinctrl_pci &pinctrl_ext_mii>;
 };
+
+&uart0 {
+	status = "ok";
+};
diff --git a/target/linux/brcm63xx/dts/dsl-2640u.dts b/target/linux/brcm63xx/dts/dsl-2640u.dts
index 3b94a4a..8fea2ac 100644
--- a/target/linux/brcm63xx/dts/dsl-2640u.dts
+++ b/target/linux/brcm63xx/dts/dsl-2640u.dts
@@ -10,6 +10,7 @@
 
 	chosen {
 		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
 	};
 
 	gpio-leds {
@@ -54,3 +55,7 @@
 		reg = <0x3f0000 0x010000>;
 	};
 };
+
+&uart0 {
+	status = "ok";
+};
diff --git a/target/linux/brcm63xx/dts/dsl-2650u.dts b/target/linux/brcm63xx/dts/dsl-2650u.dts
index 4b45151..c9b189b 100644
--- a/target/linux/brcm63xx/dts/dsl-2650u.dts
+++ b/target/linux/brcm63xx/dts/dsl-2650u.dts
@@ -10,6 +10,7 @@
 
 	chosen {
 		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
 	};
 
 	gpio-leds {
@@ -56,3 +57,7 @@
 		reg = <0x7f0000 0x010000>;
 	};
 };
+
+&uart0 {
+	status = "ok";
+};
diff --git a/target/linux/brcm63xx/dts/dsl-274xb-c.dts b/target/linux/brcm63xx/dts/dsl-274xb-c.dts
index fb67fc9..3468dea 100644
--- a/target/linux/brcm63xx/dts/dsl-274xb-c.dts
+++ b/target/linux/brcm63xx/dts/dsl-274xb-c.dts
@@ -10,6 +10,7 @@
 
 	chosen {
 		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
 	};
 
 	gpio-keys-polled {
@@ -74,3 +75,7 @@
 		reg = <0x3f0000 0x010000>;
 	};
 };
+
+&uart0 {
+	status = "ok";
+};
diff --git a/target/linux/brcm63xx/dts/dsl-274xb-f.dts b/target/linux/brcm63xx/dts/dsl-274xb-f.dts
index be1d16b..00a5a9e 100644
--- a/target/linux/brcm63xx/dts/dsl-274xb-f.dts
+++ b/target/linux/brcm63xx/dts/dsl-274xb-f.dts
@@ -10,6 +10,7 @@
 
 	chosen {
 		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
 	};
 
 	gpio-keys-polled {
@@ -105,3 +106,7 @@
 		};
 	};
 };
+
+&uart0 {
+	status = "ok";
+};
diff --git a/target/linux/brcm63xx/dts/dsl-275xb-d.dts b/target/linux/brcm63xx/dts/dsl-275xb-d.dts
index 9ac4ea1..d8f8c08 100644
--- a/target/linux/brcm63xx/dts/dsl-275xb-d.dts
+++ b/target/linux/brcm63xx/dts/dsl-275xb-d.dts
@@ -10,6 +10,7 @@
 
 	chosen {
 		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
 	};
 
 	gpio-keys-polled {
@@ -119,3 +120,7 @@
 	pinctrl-0 = <&pinctrl_ephy0_act_led &pinctrl_ephy1_act_led
 		     &pinctrl_ephy2_act_led &pinctrl_ephy3_act_led>;
 };
+
+&uart0 {
+	status = "ok";
+};
diff --git a/target/linux/brcm63xx/dts/dv-201amr.dts b/target/linux/brcm63xx/dts/dv-201amr.dts
index e695519..42a825f 100644
--- a/target/linux/brcm63xx/dts/dv-201amr.dts
+++ b/target/linux/brcm63xx/dts/dv-201amr.dts
@@ -10,6 +10,7 @@
 
 	chosen {
 		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
 	};
 };
 
@@ -39,3 +40,7 @@
 	pinctrl-names = "default";
 	pinctrl-0 = <&pinctrl_pci &pinctrl_ext_mii>;
 };
+
+&uart0 {
+	status = "ok";
+};
diff --git a/target/linux/brcm63xx/dts/dva-g3810bn_tl.dts b/target/linux/brcm63xx/dts/dva-g3810bn_tl.dts
index 4ebb25d..2945165 100644
--- a/target/linux/brcm63xx/dts/dva-g3810bn_tl.dts
+++ b/target/linux/brcm63xx/dts/dva-g3810bn_tl.dts
@@ -10,6 +10,7 @@
 
 	chosen {
 		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
 	};
 
 	gpio-keys-polled {
@@ -74,3 +75,7 @@
 		reg = <0x7f0000 0x010000>;
 	};
 };
+
+&uart0 {
+	status = "ok";
+};
diff --git a/target/linux/brcm63xx/dts/evg2000.dts b/target/linux/brcm63xx/dts/evg2000.dts
index 07c98f1..10e0ddc 100644
--- a/target/linux/brcm63xx/dts/evg2000.dts
+++ b/target/linux/brcm63xx/dts/evg2000.dts
@@ -10,6 +10,7 @@
 
 	chosen {
 		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
 	};
 
 	gpio-keys-polled {
@@ -110,3 +111,7 @@
 	pinctrl-names = "default";
 	pinctrl-0 = <&pinctrl_pci>;
 };
+
+&uart0 {
+	status = "ok";
+};
diff --git a/target/linux/brcm63xx/dts/f5d7633.dts b/target/linux/brcm63xx/dts/f5d7633.dts
index 27e81a3..89c646b 100644
--- a/target/linux/brcm63xx/dts/f5d7633.dts
+++ b/target/linux/brcm63xx/dts/f5d7633.dts
@@ -10,6 +10,7 @@
 
 	chosen {
 		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
 	};
 
 	gpio-keys-polled {
@@ -79,3 +80,7 @@
 	pinctrl-names = "default";
 	pinctrl-0 = <&pinctrl_pci &pinctrl_ext_mii &pinctrl_mii_pccard>;
 };
+
+&uart0 {
+	status = "ok";
+};
diff --git a/target/linux/brcm63xx/dts/fast2404.dts b/target/linux/brcm63xx/dts/fast2404.dts
index ce52af6..c0a30a0 100644
--- a/target/linux/brcm63xx/dts/fast2404.dts
+++ b/target/linux/brcm63xx/dts/fast2404.dts
@@ -10,6 +10,7 @@
 
 	chosen {
 		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
 	};
 };
 
@@ -39,3 +40,7 @@
 	pinctrl-names = "default";
 	pinctrl-0 = <&pinctrl_pci &pinctrl_ext_mii &pinctrl_mii_pccard>;
 };
+
+&uart0 {
+	status = "ok";
+};
diff --git a/target/linux/brcm63xx/dts/fast2504n.dts b/target/linux/brcm63xx/dts/fast2504n.dts
index 296bc09..8b644fb 100644
--- a/target/linux/brcm63xx/dts/fast2504n.dts
+++ b/target/linux/brcm63xx/dts/fast2504n.dts
@@ -10,6 +10,7 @@
 
 	chosen {
 		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
 	};
 
 	gpio-keys-polled {
@@ -94,3 +95,7 @@
 		};
 	};
 };
+
+&uart0 {
+	status = "ok";
+};
diff --git a/target/linux/brcm63xx/dts/fast2604.dts b/target/linux/brcm63xx/dts/fast2604.dts
index 952b668..1433940 100644
--- a/target/linux/brcm63xx/dts/fast2604.dts
+++ b/target/linux/brcm63xx/dts/fast2604.dts
@@ -10,6 +10,7 @@
 
 	chosen {
 		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
 	};
 
 	gpio-keys-polled {
@@ -75,3 +76,7 @@
 	pinctrl-names = "default";
 	pinctrl-0 = <&pinctrl_pci &pinctrl_ext_mii>;
 };
+
+&uart0 {
+	status = "ok";
+};
diff --git a/target/linux/brcm63xx/dts/fast2704n.dts b/target/linux/brcm63xx/dts/fast2704n.dts
index ee343a6..217ef12 100644
--- a/target/linux/brcm63xx/dts/fast2704n.dts
+++ b/target/linux/brcm63xx/dts/fast2704n.dts
@@ -10,6 +10,7 @@
 
 	chosen {
 		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
 	};
 
 	gpio-keys-polled {
@@ -119,3 +120,7 @@
 		};
 	};
 };
+
+&uart0 {
+	status = "ok";
+};
diff --git a/target/linux/brcm63xx/dts/fast2704v2.dts b/target/linux/brcm63xx/dts/fast2704v2.dts
index bbd23da..eeed6b1 100644
--- a/target/linux/brcm63xx/dts/fast2704v2.dts
+++ b/target/linux/brcm63xx/dts/fast2704v2.dts
@@ -10,6 +10,7 @@
 
 	chosen {
 		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
 	};
 
 	gpio-keys-polled {
@@ -103,3 +104,7 @@
 		};
 	};
 };
+
+&uart0 {
+	status = "ok";
+};
diff --git a/target/linux/brcm63xx/dts/gw6000.dts b/target/linux/brcm63xx/dts/gw6000.dts
index 5645ae0..31555b3 100644
--- a/target/linux/brcm63xx/dts/gw6000.dts
+++ b/target/linux/brcm63xx/dts/gw6000.dts
@@ -10,6 +10,7 @@
 
 	chosen {
 		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
 	};
 
 	gpio-keys-polled {
@@ -53,3 +54,7 @@
 	pinctrl-names = "default";
 	pinctrl-0 = <&pinctrl_pci &pinctrl_ext_mii>;
 };
+
+&uart0 {
+	status = "ok";
+};
diff --git a/target/linux/brcm63xx/dts/gw6200.dts b/target/linux/brcm63xx/dts/gw6200.dts
index 3e0037a..acc100c 100644
--- a/target/linux/brcm63xx/dts/gw6200.dts
+++ b/target/linux/brcm63xx/dts/gw6200.dts
@@ -10,6 +10,7 @@
 
 	chosen {
 		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
 	};
 
 	gpio-keys-polled {
@@ -74,3 +75,7 @@
 	pinctrl-names = "default";
 	pinctrl-0 = <&pinctrl_pci &pinctrl_ext_mii &pinctrl_mii_pccard>;
 };
+
+&uart0 {
+	status = "ok";
+};
diff --git a/target/linux/brcm63xx/dts/hg520v.dts b/target/linux/brcm63xx/dts/hg520v.dts
index f0eefc0..bfd3069 100644
--- a/target/linux/brcm63xx/dts/hg520v.dts
+++ b/target/linux/brcm63xx/dts/hg520v.dts
@@ -10,6 +10,7 @@
 
 	chosen {
 		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
 	};
 
 	gpio-keys-polled {
@@ -57,3 +58,7 @@
 		reg = <0x3f0000 0x010000>;
 	};
 };
+
+&uart0 {
+	status = "ok";
+};
diff --git a/target/linux/brcm63xx/dts/hg553.dts b/target/linux/brcm63xx/dts/hg553.dts
index a00821f..a459976 100644
--- a/target/linux/brcm63xx/dts/hg553.dts
+++ b/target/linux/brcm63xx/dts/hg553.dts
@@ -10,6 +10,7 @@
 
 	chosen {
 		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
 	};
 
 	gpio-keys-polled {
@@ -96,3 +97,7 @@
 		reg = <0xfe0000 0x020000>;
 	};
 };
+
+&uart0 {
+	status = "ok";
+};
diff --git a/target/linux/brcm63xx/dts/hg556a-a.dts b/target/linux/brcm63xx/dts/hg556a-a.dts
index de17500..906ee61 100644
--- a/target/linux/brcm63xx/dts/hg556a-a.dts
+++ b/target/linux/brcm63xx/dts/hg556a-a.dts
@@ -10,6 +10,7 @@
 
 	chosen {
 		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
 	};
 
 	gpio-keys-polled {
@@ -128,3 +129,7 @@
 		reg = <0xfe0000 0x020000>;
 	};
 };
+
+&uart0 {
+	status = "ok";
+};
diff --git a/target/linux/brcm63xx/dts/hg556a-b.dts b/target/linux/brcm63xx/dts/hg556a-b.dts
index 782beda..4285e17 100644
--- a/target/linux/brcm63xx/dts/hg556a-b.dts
+++ b/target/linux/brcm63xx/dts/hg556a-b.dts
@@ -10,6 +10,7 @@
 
 	chosen {
 		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
 	};
 
 	gpio-keys-polled {
@@ -128,3 +129,7 @@
 		reg = <0xfe0000 0x020000>;
 	};
 };
+
+&uart0 {
+	status = "ok";
+};
diff --git a/target/linux/brcm63xx/dts/hg556a-c.dts b/target/linux/brcm63xx/dts/hg556a-c.dts
index 36f298b..48c601e 100644
--- a/target/linux/brcm63xx/dts/hg556a-c.dts
+++ b/target/linux/brcm63xx/dts/hg556a-c.dts
@@ -10,6 +10,7 @@
 
 	chosen {
 		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
 	};
 
 	gpio-keys-polled {
@@ -123,3 +124,7 @@
 		reg = <0xfe0000 0x020000>;
 	};
 };
+
+&uart0 {
+	status = "ok";
+};
diff --git a/target/linux/brcm63xx/dts/hg622.dts b/target/linux/brcm63xx/dts/hg622.dts
index f96af2b..419439d 100644
--- a/target/linux/brcm63xx/dts/hg622.dts
+++ b/target/linux/brcm63xx/dts/hg622.dts
@@ -10,6 +10,7 @@
 
 	chosen {
 		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
 	};
 
 
@@ -84,3 +85,7 @@
 		     &pinctrl_pci_intb &pinctrl_pci_gnt1
 		     &pinctrl_pci_req1>;
 };
+
+&uart0 {
+	status = "ok";
+};
diff --git a/target/linux/brcm63xx/dts/hg655b.dts b/target/linux/brcm63xx/dts/hg655b.dts
index 63e1309..0336a63 100644
--- a/target/linux/brcm63xx/dts/hg655b.dts
+++ b/target/linux/brcm63xx/dts/hg655b.dts
@@ -10,6 +10,7 @@
 
 	chosen {
 		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
 	};
 
 	gpio-keys-polled {
@@ -105,3 +106,7 @@
 	pinctrl-0 = <&pinctrl_pci &pinctrl_ephy0_led &pinctrl_ephy1_led
 		     &pinctrl_ephy2_led &pinctrl_ephy3_led>;
 };
+
+&uart0 {
+	status = "ok";
+};
diff --git a/target/linux/brcm63xx/dts/homehub2a.dts b/target/linux/brcm63xx/dts/homehub2a.dts
index 6192687..1f55265 100644
--- a/target/linux/brcm63xx/dts/homehub2a.dts
+++ b/target/linux/brcm63xx/dts/homehub2a.dts
@@ -10,6 +10,7 @@
 
 	chosen {
 		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
 	};
 
 	gpio-keys-polled {
@@ -155,3 +156,7 @@
 		reg = <0xfe0000 0x020000>;
 	};
 };
+
+&uart0 {
+	status = "ok";
+};
diff --git a/target/linux/brcm63xx/dts/livebox-blue-5g.dts b/target/linux/brcm63xx/dts/livebox-blue-5g.dts
index 8a06073..10a8866 100644
--- a/target/linux/brcm63xx/dts/livebox-blue-5g.dts
+++ b/target/linux/brcm63xx/dts/livebox-blue-5g.dts
@@ -10,6 +10,7 @@
 
 	chosen {
 		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
 	};
 
 	gpio-keys-polled {
@@ -75,3 +76,7 @@
 	pinctrl-names = "default";
 	pinctrl-0 = <&pinctrl_pci &pinctrl_ext_mii &pinctrl_mii_pccard>;
 };
+
+&uart0 {
+	status = "ok";
+};
diff --git a/target/linux/brcm63xx/dts/magic.dts b/target/linux/brcm63xx/dts/magic.dts
index 9053c26..c78b836 100644
--- a/target/linux/brcm63xx/dts/magic.dts
+++ b/target/linux/brcm63xx/dts/magic.dts
@@ -10,6 +10,7 @@
 
 	chosen {
 		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
 	};
 
 	gpio-leds {
@@ -79,3 +80,7 @@
 	pinctrl-names = "default";
 	pinctrl-0 = <&pinctrl_pci &pinctrl_ext_mii &pinctrl_mii_pccard>;
 };
+
+&uart0 {
+	status = "ok";
+};
diff --git a/target/linux/brcm63xx/dts/nb4-fxc-r1.dts b/target/linux/brcm63xx/dts/nb4-fxc-r1.dts
index e11ec46..9d341ec 100644
--- a/target/linux/brcm63xx/dts/nb4-fxc-r1.dts
+++ b/target/linux/brcm63xx/dts/nb4-fxc-r1.dts
@@ -10,6 +10,7 @@
 
 	chosen {
 		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
 	};
 
 	gpio-keys-polled {
@@ -103,3 +104,7 @@
 
 	linux,part-probe = "bcm63xxpart";
 };
+
+&uart0 {
+	status = "ok";
+};
diff --git a/target/linux/brcm63xx/dts/nb4-ser-r0.dts b/target/linux/brcm63xx/dts/nb4-ser-r0.dts
index 8a33c66..e97d9f2 100644
--- a/target/linux/brcm63xx/dts/nb4-ser-r0.dts
+++ b/target/linux/brcm63xx/dts/nb4-ser-r0.dts
@@ -10,6 +10,7 @@
 
 	chosen {
 		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
 	};
 
 	gpio-keys-polled {
@@ -103,3 +104,7 @@
 
 	linux,part-probe = "bcm63xxpart";
 };
+
+&uart0 {
+	status = "ok";
+};
diff --git a/target/linux/brcm63xx/dts/nb6-ser-r0.dts b/target/linux/brcm63xx/dts/nb6-ser-r0.dts
index 8fb434f..70d719e 100644
--- a/target/linux/brcm63xx/dts/nb6-ser-r0.dts
+++ b/target/linux/brcm63xx/dts/nb6-ser-r0.dts
@@ -10,6 +10,7 @@
 
 	chosen {
 		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
 	};
 
 	gpio-keys-polled {
@@ -82,3 +83,7 @@
 		};
 	};
 };
+
+&uart0 {
+	status = "ok";
+};
diff --git a/target/linux/brcm63xx/dts/p870hw-51a-v2.dts b/target/linux/brcm63xx/dts/p870hw-51a-v2.dts
index eea3021..d7e5d3e 100644
--- a/target/linux/brcm63xx/dts/p870hw-51a-v2.dts
+++ b/target/linux/brcm63xx/dts/p870hw-51a-v2.dts
@@ -10,6 +10,7 @@
 
 	chosen {
 		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
 	};
 
 	gpio-keys-polled {
@@ -84,3 +85,7 @@
 	pinctrl-names = "default";
 	pinctrl-0 = <&pinctrl_pci>;
 };
+
+&uart0 {
+	status = "ok";
+};
diff --git a/target/linux/brcm63xx/dts/r1000h.dts b/target/linux/brcm63xx/dts/r1000h.dts
index 37cfa15..299b520 100644
--- a/target/linux/brcm63xx/dts/r1000h.dts
+++ b/target/linux/brcm63xx/dts/r1000h.dts
@@ -10,6 +10,7 @@
 
 	chosen {
 		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs noinitrd console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
 	};
 
 	gpio-keys-polled {
@@ -91,3 +92,11 @@
 		reg = <0x1fe0000 0x20000>;
 	};
 };
+
+&uart0 {
+	status = "ok";
+};
+
+&uart1 {
+	status = "ok";
+};
diff --git a/target/linux/brcm63xx/dts/r5010unv2.dts b/target/linux/brcm63xx/dts/r5010unv2.dts
index 0bd88b2..c0b0a85 100644
--- a/target/linux/brcm63xx/dts/r5010unv2.dts
+++ b/target/linux/brcm63xx/dts/r5010unv2.dts
@@ -10,6 +10,7 @@
 
 	chosen {
 		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
 	};
 
 	
@@ -99,3 +100,7 @@
 		};
 	};
 };
+
+&uart0 {
+	status = "ok";
+};
diff --git a/target/linux/brcm63xx/dts/rg100a.dts b/target/linux/brcm63xx/dts/rg100a.dts
index e96e310..871aada 100644
--- a/target/linux/brcm63xx/dts/rg100a.dts
+++ b/target/linux/brcm63xx/dts/rg100a.dts
@@ -10,6 +10,7 @@
 
 	chosen {
 		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
 	};
 
 	gpio-leds {
@@ -56,3 +57,7 @@
 		reg = <0xfe0000 0x020000>;
 	};
 };
+
+&uart0 {
+	status = "ok";
+};
diff --git a/target/linux/brcm63xx/dts/rta1025w.dts b/target/linux/brcm63xx/dts/rta1025w.dts
index 16c3abf..e4de95d 100644
--- a/target/linux/brcm63xx/dts/rta1025w.dts
+++ b/target/linux/brcm63xx/dts/rta1025w.dts
@@ -10,6 +10,7 @@
 
 	chosen {
 		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
 	};
 };
 
@@ -39,3 +40,7 @@
 	pinctrl-names = "default";
 	pinctrl-0 = <&pinctrl_pci &pinctrl_ext_mii>;
 };
+
+&uart0 {
+	status = "ok";
+};
diff --git a/target/linux/brcm63xx/dts/rta1320.dts b/target/linux/brcm63xx/dts/rta1320.dts
index 6dbf0a5..aedc9d3 100644
--- a/target/linux/brcm63xx/dts/rta1320.dts
+++ b/target/linux/brcm63xx/dts/rta1320.dts
@@ -10,6 +10,7 @@
 
 	chosen {
 		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
 	};
 
 	gpio-leds {
@@ -56,3 +57,7 @@
 		reg = <0x3f0000 0x010000>;
 	};
 };
+
+&uart0 {
+	status = "ok";
+};
diff --git a/target/linux/brcm63xx/dts/rta770bw.dts b/target/linux/brcm63xx/dts/rta770bw.dts
index bb92d1e..0f71467 100644
--- a/target/linux/brcm63xx/dts/rta770bw.dts
+++ b/target/linux/brcm63xx/dts/rta770bw.dts
@@ -10,6 +10,7 @@
 
 	chosen {
 		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
 	};
 
 	gpio-keys-polled {
@@ -72,3 +73,7 @@
 		reg = <0x3f0000 0x010000>;
 	};
 };
+
+&uart0 {
+	status = "ok";
+};
diff --git a/target/linux/brcm63xx/dts/rta770w.dts b/target/linux/brcm63xx/dts/rta770w.dts
index 7cefa50..ce9f0be 100644
--- a/target/linux/brcm63xx/dts/rta770w.dts
+++ b/target/linux/brcm63xx/dts/rta770w.dts
@@ -10,6 +10,7 @@
 
 	chosen {
 		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
 	};
 
 	gpio-keys-polled {
@@ -72,3 +73,7 @@
 		reg = <0x3f0000 0x010000>;
 	};
 };
+
+&uart0 {
+	status = "ok";
+};
diff --git a/target/linux/brcm63xx/dts/spw303v.dts b/target/linux/brcm63xx/dts/spw303v.dts
index 0040540..7a00020 100644
--- a/target/linux/brcm63xx/dts/spw303v.dts
+++ b/target/linux/brcm63xx/dts/spw303v.dts
@@ -10,6 +10,7 @@
 
 	chosen {
 		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
 	};
 
 	gpio-keys-polled {
@@ -83,3 +84,7 @@
 		reg = <0x7f0000 0x010000>;
 	};
 };
+
+&uart0 {
+	status = "ok";
+};
diff --git a/target/linux/brcm63xx/dts/spw500v.dts b/target/linux/brcm63xx/dts/spw500v.dts
index a9603b3..c7a4c7d 100644
--- a/target/linux/brcm63xx/dts/spw500v.dts
+++ b/target/linux/brcm63xx/dts/spw500v.dts
@@ -10,6 +10,7 @@
 
 	chosen {
 		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
 	};
 
 	gpio-keys-polled {
@@ -79,3 +80,7 @@
 	pinctrl-names = "default";
 	pinctrl-0 = <&pinctrl_pci>;
 };
+
+&uart0 {
+	status = "ok";
+};
diff --git a/target/linux/brcm63xx/dts/td-w8900gb.dts b/target/linux/brcm63xx/dts/td-w8900gb.dts
index b52670b..e5c02e6 100644
--- a/target/linux/brcm63xx/dts/td-w8900gb.dts
+++ b/target/linux/brcm63xx/dts/td-w8900gb.dts
@@ -10,6 +10,7 @@
 
 	chosen {
 		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
 	};
 
 	gpio-keys-polled {
@@ -79,3 +80,7 @@
 	pinctrl-names = "default";
 	pinctrl-0 = <&pinctrl_pci &pinctrl_ext_mii &pinctrl_mii_pccard>;
 };
+
+&uart0 {
+	status = "ok";
+};
diff --git a/target/linux/brcm63xx/dts/usr9108.dts b/target/linux/brcm63xx/dts/usr9108.dts
index 81af20b..4852d65 100644
--- a/target/linux/brcm63xx/dts/usr9108.dts
+++ b/target/linux/brcm63xx/dts/usr9108.dts
@@ -10,6 +10,7 @@
 
 	chosen {
 		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
 	};
 
 	gpio-leds {
@@ -52,3 +53,7 @@
 	pinctrl-names = "default";
 	pinctrl-0 = <&pinctrl_pci &pinctrl_ext_mii>;
 };
+
+&uart0 {
+	status = "ok";
+};
diff --git a/target/linux/brcm63xx/dts/v2110.dts b/target/linux/brcm63xx/dts/v2110.dts
index 23378a4..93a5d94 100644
--- a/target/linux/brcm63xx/dts/v2110.dts
+++ b/target/linux/brcm63xx/dts/v2110.dts
@@ -10,6 +10,7 @@
 
 	chosen {
 		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
 	};
 
 	gpio-keys-polled {
@@ -78,3 +79,7 @@
 	pinctrl-names = "default";
 	pinctrl-0 = <&pinctrl_pci &pinctrl_ext_mii>;
 };
+
+&uart0 {
+	status = "ok";
+};
diff --git a/target/linux/brcm63xx/dts/v2500v-bb.dts b/target/linux/brcm63xx/dts/v2500v-bb.dts
index b6370ee..d6b5964 100644
--- a/target/linux/brcm63xx/dts/v2500v-bb.dts
+++ b/target/linux/brcm63xx/dts/v2500v-bb.dts
@@ -10,6 +10,7 @@
 
 	chosen {
 		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
 	};
 
 	gpio-keys-polled {
@@ -78,3 +79,7 @@
 	pinctrl-names = "default";
 	pinctrl-0 = <&pinctrl_pci &pinctrl_ext_mii>;
 };
+
+&uart0 {
+	status = "ok";
+};
diff --git a/target/linux/brcm63xx/dts/vg50.dts b/target/linux/brcm63xx/dts/vg50.dts
index 2180802..f1d48ea 100644
--- a/target/linux/brcm63xx/dts/vg50.dts
+++ b/target/linux/brcm63xx/dts/vg50.dts
@@ -10,6 +10,7 @@
 
 	chosen {
 		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
 	};
 
 	gpio-keys-polled {
@@ -49,3 +50,7 @@
 		linux,part-probe = "bcm63xxpart";
 	};
 };
+
+&uart0 {
+	status = "ok";
+};
diff --git a/target/linux/brcm63xx/dts/vh4032n.dts b/target/linux/brcm63xx/dts/vh4032n.dts
index 1b646ce..78a708a 100644
--- a/target/linux/brcm63xx/dts/vh4032n.dts
+++ b/target/linux/brcm63xx/dts/vh4032n.dts
@@ -10,6 +10,7 @@
 
 	chosen {
 		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
 	};
 
 	gpio-keys-polled {
@@ -100,3 +101,7 @@
 		reg = <0x1fe0000 0x020000>;
 	};
 };
+
+&uart0 {
+	status = "ok";
+};
diff --git a/target/linux/brcm63xx/dts/vr-3025u.dts b/target/linux/brcm63xx/dts/vr-3025u.dts
index 2c53f51..fd2a567 100644
--- a/target/linux/brcm63xx/dts/vr-3025u.dts
+++ b/target/linux/brcm63xx/dts/vr-3025u.dts
@@ -10,6 +10,7 @@
 
 	chosen {
 		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
 	};
 
 	gpio-keys-polled {
@@ -80,3 +81,7 @@
 	pinctrl-0 = <&pinctrl_pci &pinctrl_ephy0_led &pinctrl_ephy1_led
 		     &pinctrl_ephy2_led &pinctrl_ephy3_led>;
 };
+
+&uart0 {
+	status = "ok";
+};
diff --git a/target/linux/brcm63xx/dts/vr-3025un.dts b/target/linux/brcm63xx/dts/vr-3025un.dts
index f9aed51..61e1972 100644
--- a/target/linux/brcm63xx/dts/vr-3025un.dts
+++ b/target/linux/brcm63xx/dts/vr-3025un.dts
@@ -10,6 +10,7 @@
 
 	chosen {
 		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
 	};
 
 	gpio-keys-polled {
@@ -80,3 +81,7 @@
 	pinctrl-0 = <&pinctrl_pci &pinctrl_ephy0_led &pinctrl_ephy1_led
 		     &pinctrl_ephy2_led &pinctrl_ephy3_led>;
 };
+
+&uart0 {
+	status = "ok";
+};
diff --git a/target/linux/brcm63xx/dts/vr-3026e.dts b/target/linux/brcm63xx/dts/vr-3026e.dts
index da75df8..01cb988 100644
--- a/target/linux/brcm63xx/dts/vr-3026e.dts
+++ b/target/linux/brcm63xx/dts/vr-3026e.dts
@@ -10,6 +10,7 @@
 
 	chosen {
 		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
 	};
 
 	gpio-keys-polled {
@@ -80,3 +81,7 @@
 	pinctrl-0 = <&pinctrl_pci &pinctrl_ephy0_led &pinctrl_ephy1_led
 		     &pinctrl_ephy2_led &pinctrl_ephy3_led>;
 };
+
+&uart0 {
+	status = "ok";
+};
diff --git a/target/linux/brcm63xx/dts/wap-5813n.dts b/target/linux/brcm63xx/dts/wap-5813n.dts
index 8b47b20..1a71426 100644
--- a/target/linux/brcm63xx/dts/wap-5813n.dts
+++ b/target/linux/brcm63xx/dts/wap-5813n.dts
@@ -10,6 +10,7 @@
 
 	chosen {
 		bootargs = "root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200";
+		stdout-path = "serial0:115200n8";
 	};
 
 	gpio-keys-polled {
@@ -141,3 +142,7 @@
 	pinctrl-names = "default";
 	pinctrl-0 = <&pinctrl_pci>;
 };
+
+&uart0 {
+	status = "ok";
+};
diff --git a/target/linux/brcm63xx/patches-4.4/000-4.8-11-serial-bcm63xx_uart-use-correct-alias-naming.patch b/target/linux/brcm63xx/patches-4.4/000-4.8-11-serial-bcm63xx_uart-use-correct-alias-naming.patch
new file mode 100644
index 0000000..9f4e21a
--- /dev/null
+++ b/target/linux/brcm63xx/patches-4.4/000-4.8-11-serial-bcm63xx_uart-use-correct-alias-naming.patch
@@ -0,0 +1,37 @@
+From a59388668d0ce19dadea909e09f4eb905a27b1ce Mon Sep 17 00:00:00 2001
+From: Jonas Gorski <jogo at openwrt.org>
+Date: Wed, 8 Jun 2016 12:08:43 +0200
+Subject: [PATCH] serial/bcm63xx_uart: use correct alias naming
+
+The bcm63xx_uart driver uses the of alias for determing its id. Recent
+changes in dts files changed the expected 'uartX' to the recommended
+'serialX', breaking serial output. Fix this by checking for a 'serialX'
+alias as well.
+
+Fixes: e3b992d028f8 ("MIPS: BMIPS: Improve BCM6328 device tree")
+Fixes: 2d52ee82b475 ("MIPS: BMIPS: Improve BCM6368 device tree")
+Fixes: 7537d273e2f3 ("MIPS: BMIPS: Add device tree example for BCM6358")
+Signed-off-by: Jonas Gorski <jogo at openwrt.org>
+Acked-by: Florian Fainelli <f.fainelli at gmail.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh at linuxfoundation.org>
+---
+ drivers/tty/serial/bcm63xx_uart.c | 8 ++++++--
+ 1 file changed, 6 insertions(+), 2 deletions(-)
+
+--- a/drivers/tty/serial/bcm63xx_uart.c
++++ b/drivers/tty/serial/bcm63xx_uart.c
+@@ -813,8 +813,12 @@ static int bcm_uart_probe(struct platfor
+ 	struct clk *clk;
+ 	int ret;
+ 
+-	if (pdev->dev.of_node)
+-		pdev->id = of_alias_get_id(pdev->dev.of_node, "uart");
++	if (pdev->dev.of_node) {
++		pdev->id = of_alias_get_id(pdev->dev.of_node, "serial");
++
++		if (pdev->id < 0)
++			pdev->id = of_alias_get_id(pdev->dev.of_node, "uart");
++	}
+ 
+ 	if (pdev->id < 0 || pdev->id >= BCM63XX_NR_UARTS)
+ 		return -EINVAL;
diff --git a/target/linux/brcm63xx/patches-4.4/001-4.15-03-tty-bcm63xx_uart-use-refclk-for-the-expected-clock-n.patch b/target/linux/brcm63xx/patches-4.4/001-4.15-03-tty-bcm63xx_uart-use-refclk-for-the-expected-clock-n.patch
index 6cb851f..5152fbe 100644
--- a/target/linux/brcm63xx/patches-4.4/001-4.15-03-tty-bcm63xx_uart-use-refclk-for-the-expected-clock-n.patch
+++ b/target/linux/brcm63xx/patches-4.4/001-4.15-03-tty-bcm63xx_uart-use-refclk-for-the-expected-clock-n.patch
@@ -15,7 +15,7 @@ Signed-off-by: Jonas Gorski <jonas.gorski at gmail.com>
 
 --- a/drivers/tty/serial/bcm63xx_uart.c
 +++ b/drivers/tty/serial/bcm63xx_uart.c
-@@ -838,7 +838,7 @@ static int bcm_uart_probe(struct platfor
+@@ -842,7 +842,7 @@ static int bcm_uart_probe(struct platfor
  		return -ENODEV;
  
  	clk = pdev->dev.of_node ? of_clk_get(pdev->dev.of_node, 0) :
diff --git a/target/linux/brcm63xx/patches-4.4/001-4.15-04-tty-bcm63xx_uart-allow-naming-clock-in-device-tree.patch b/target/linux/brcm63xx/patches-4.4/001-4.15-04-tty-bcm63xx_uart-allow-naming-clock-in-device-tree.patch
index b3f73cf..a8fd5af 100644
--- a/target/linux/brcm63xx/patches-4.4/001-4.15-04-tty-bcm63xx_uart-allow-naming-clock-in-device-tree.patch
+++ b/target/linux/brcm63xx/patches-4.4/001-4.15-04-tty-bcm63xx_uart-allow-naming-clock-in-device-tree.patch
@@ -40,7 +40,7 @@ Signed-off-by: Jonas Gorski <jonas.gorski at gmail.com>
  	clocks {
 --- a/drivers/tty/serial/bcm63xx_uart.c
 +++ b/drivers/tty/serial/bcm63xx_uart.c
-@@ -837,8 +837,10 @@ static int bcm_uart_probe(struct platfor
+@@ -841,8 +841,10 @@ static int bcm_uart_probe(struct platfor
  	if (!res_irq)
  		return -ENODEV;
  
diff --git a/target/linux/brcm63xx/patches-4.4/390-MIPS-BCM63XX-do-not-register-SPI-controllers.patch b/target/linux/brcm63xx/patches-4.4/390-MIPS-BCM63XX-do-not-register-SPI-controllers.patch
index 10db690..084ef9e 100644
--- a/target/linux/brcm63xx/patches-4.4/390-MIPS-BCM63XX-do-not-register-SPI-controllers.patch
+++ b/target/linux/brcm63xx/patches-4.4/390-MIPS-BCM63XX-do-not-register-SPI-controllers.patch
@@ -33,3 +33,138 @@ Signed-off-by: Jonas Gorski <jonas.gorski at gmail.com>
  	bcm63xx_flash_register();
  
  	bcm63xx_led_data.num_leds = ARRAY_SIZE(board.leds);
+--- a/arch/mips/bcm63xx/Makefile
++++ b/arch/mips/bcm63xx/Makefile
+@@ -1,6 +1,6 @@
+ obj-y		+= clk.o cpu.o cs.o gpio.o irq.o nvram.o prom.o reset.o \
+ 		   setup.o timer.o dev-dsp.o dev-enet.o dev-flash.o \
+-		   dev-pcmcia.o dev-rng.o dev-spi.o dev-hsspi.o dev-uart.o \
++		   dev-pcmcia.o dev-rng.o dev-uart.o \
+ 		   dev-wdt.o dev-usb-ehci.o dev-usb-ohci.o dev-usb-usbd.o \
+ 		   usb-common.o sprom.o
+ obj-$(CONFIG_EARLY_PRINTK)	+= early_printk.o
+--- a/arch/mips/bcm63xx/dev-hsspi.c
++++ /dev/null
+@@ -1,48 +0,0 @@
+-/*
+- * This file is subject to the terms and conditions of the GNU General Public
+- * License.  See the file "COPYING" in the main directory of this archive
+- * for more details.
+- *
+- * Copyright (C) 2012 Jonas Gorski <jonas.gorski at gmail.com>
+- */
+-
+-#include <linux/init.h>
+-#include <linux/kernel.h>
+-#include <linux/platform_device.h>
+-
+-#include <bcm63xx_cpu.h>
+-#include <bcm63xx_dev_hsspi.h>
+-#include <bcm63xx_regs.h>
+-
+-static struct resource spi_resources[] = {
+-	{
+-		.start		= -1, /* filled at runtime */
+-		.end		= -1, /* filled at runtime */
+-		.flags		= IORESOURCE_MEM,
+-	},
+-	{
+-		.start		= -1, /* filled at runtime */
+-		.flags		= IORESOURCE_IRQ,
+-	},
+-};
+-
+-static struct platform_device bcm63xx_hsspi_device = {
+-	.name		= "bcm63xx-hsspi",
+-	.id		= 0,
+-	.num_resources	= ARRAY_SIZE(spi_resources),
+-	.resource	= spi_resources,
+-};
+-
+-int __init bcm63xx_hsspi_register(void)
+-{
+-	if (!BCMCPU_IS_6318() && !BCMCPU_IS_6328() && !BCMCPU_IS_6362() &&
+-		!BCMCPU_IS_63268())
+-		return -ENODEV;
+-
+-	spi_resources[0].start = bcm63xx_regset_address(RSET_HSSPI);
+-	spi_resources[0].end = spi_resources[0].start;
+-	spi_resources[0].end += RSET_HSSPI_SIZE - 1;
+-	spi_resources[1].start = bcm63xx_get_irq_number(IRQ_HSSPI);
+-
+-	return platform_device_register(&bcm63xx_hsspi_device);
+-}
+--- a/arch/mips/bcm63xx/dev-spi.c
++++ /dev/null
+@@ -1,60 +0,0 @@
+-/*
+- * This file is subject to the terms and conditions of the GNU General Public
+- * License.  See the file "COPYING" in the main directory of this archive
+- * for more details.
+- *
+- * Copyright (C) 2009-2011 Florian Fainelli <florian at openwrt.org>
+- * Copyright (C) 2010 Tanguy Bouzeloc <tanguy.bouzeloc at efixo.com>
+- */
+-
+-#include <linux/init.h>
+-#include <linux/kernel.h>
+-#include <linux/export.h>
+-#include <linux/platform_device.h>
+-#include <linux/err.h>
+-#include <linux/clk.h>
+-
+-#include <bcm63xx_cpu.h>
+-#include <bcm63xx_dev_spi.h>
+-#include <bcm63xx_regs.h>
+-
+-static struct resource spi_resources[] = {
+-	{
+-		.start		= -1, /* filled at runtime */
+-		.end		= -1, /* filled at runtime */
+-		.flags		= IORESOURCE_MEM,
+-	},
+-	{
+-		.start		= -1, /* filled at runtime */
+-		.flags		= IORESOURCE_IRQ,
+-	},
+-};
+-
+-static struct platform_device bcm63xx_spi_device = {
+-	.id		= -1,
+-	.num_resources	= ARRAY_SIZE(spi_resources),
+-	.resource	= spi_resources,
+-};
+-
+-int __init bcm63xx_spi_register(void)
+-{
+-	if (BCMCPU_IS_6318() || BCMCPU_IS_6328() || BCMCPU_IS_6345())
+-		return -ENODEV;
+-
+-	spi_resources[0].start = bcm63xx_regset_address(RSET_SPI);
+-	spi_resources[0].end = spi_resources[0].start;
+-	spi_resources[1].start = bcm63xx_get_irq_number(IRQ_SPI);
+-
+-	if (BCMCPU_IS_6338() || BCMCPU_IS_6348()) {
+-		bcm63xx_spi_device.name = "bcm6348-spi",
+-		spi_resources[0].end += BCM_6348_RSET_SPI_SIZE - 1;
+-	}
+-
+-	if (BCMCPU_IS_3368() || BCMCPU_IS_6358() || BCMCPU_IS_6362() ||
+-		BCMCPU_IS_6368() || BCMCPU_IS_63268()) {
+-		bcm63xx_spi_device.name = "bcm6358-spi",
+-		spi_resources[0].end += BCM_6358_RSET_SPI_SIZE - 1;
+-	}
+-
+-	return platform_device_register(&bcm63xx_spi_device);
+-}
+--- a/arch/mips/include/asm/mach-bcm63xx/bcm63xx_dev_hsspi.h
++++ /dev/null
+@@ -1,8 +0,0 @@
+-#ifndef BCM63XX_DEV_HSSPI_H
+-#define BCM63XX_DEV_HSSPI_H
+-
+-#include <linux/types.h>
+-
+-int bcm63xx_hsspi_register(void);
+-
+-#endif /* BCM63XX_DEV_HSSPI_H */
diff --git a/target/linux/brcm63xx/patches-4.4/391-MIPS-BCM63XX-do-not-register-uart.patch b/target/linux/brcm63xx/patches-4.4/391-MIPS-BCM63XX-do-not-register-uart.patch
new file mode 100644
index 0000000..e033ea3
--- /dev/null
+++ b/target/linux/brcm63xx/patches-4.4/391-MIPS-BCM63XX-do-not-register-uart.patch
@@ -0,0 +1,257 @@
+--- a/arch/mips/bcm63xx/Makefile
++++ b/arch/mips/bcm63xx/Makefile
+@@ -1,6 +1,6 @@
+ obj-y		+= clk.o cpu.o cs.o gpio.o irq.o nvram.o prom.o reset.o \
+ 		   setup.o timer.o dev-dsp.o dev-enet.o dev-flash.o \
+-		   dev-pcmcia.o dev-rng.o dev-uart.o \
++		   dev-pcmcia.o dev-rng.o \
+ 		   dev-wdt.o dev-usb-ehci.o dev-usb-ohci.o dev-usb-usbd.o \
+ 		   usb-common.o sprom.o
+ obj-$(CONFIG_EARLY_PRINTK)	+= early_printk.o
+--- a/arch/mips/bcm63xx/dev-uart.c
++++ /dev/null
+@@ -1,76 +0,0 @@
+-/*
+- * This file is subject to the terms and conditions of the GNU General Public
+- * License.  See the file "COPYING" in the main directory of this archive
+- * for more details.
+- *
+- * Copyright (C) 2008 Maxime Bizon <mbizon at freebox.fr>
+- */
+-
+-#include <linux/init.h>
+-#include <linux/kernel.h>
+-#include <linux/platform_device.h>
+-#include <bcm63xx_cpu.h>
+-
+-static struct resource uart0_resources[] = {
+-	{
+-		/* start & end filled at runtime */
+-		.flags		= IORESOURCE_MEM,
+-	},
+-	{
+-		/* start filled at runtime */
+-		.flags		= IORESOURCE_IRQ,
+-	},
+-};
+-
+-static struct resource uart1_resources[] = {
+-	{
+-		/* start & end filled at runtime */
+-		.flags		= IORESOURCE_MEM,
+-	},
+-	{
+-		/* start filled at runtime */
+-		.flags		= IORESOURCE_IRQ,
+-	},
+-};
+-
+-static struct platform_device bcm63xx_uart_devices[] = {
+-	{
+-		.name		= "bcm63xx_uart",
+-		.id		= 0,
+-		.num_resources	= ARRAY_SIZE(uart0_resources),
+-		.resource	= uart0_resources,
+-	},
+-
+-	{
+-		.name		= "bcm63xx_uart",
+-		.id		= 1,
+-		.num_resources	= ARRAY_SIZE(uart1_resources),
+-		.resource	= uart1_resources,
+-	}
+-};
+-
+-int __init bcm63xx_uart_register(unsigned int id)
+-{
+-	if (id >= ARRAY_SIZE(bcm63xx_uart_devices))
+-		return -ENODEV;
+-
+-	if (id == 1 && (!BCMCPU_IS_3368() && !BCMCPU_IS_6358() &&
+-		!BCMCPU_IS_6368()))
+-		return -ENODEV;
+-
+-	if (id == 0) {
+-		uart0_resources[0].start = bcm63xx_regset_address(RSET_UART0);
+-		uart0_resources[0].end = uart0_resources[0].start +
+-			RSET_UART_SIZE - 1;
+-		uart0_resources[1].start = bcm63xx_get_irq_number(IRQ_UART0);
+-	}
+-
+-	if (id == 1) {
+-		uart1_resources[0].start = bcm63xx_regset_address(RSET_UART1);
+-		uart1_resources[0].end = uart1_resources[0].start +
+-			RSET_UART_SIZE - 1;
+-		uart1_resources[1].start = bcm63xx_get_irq_number(IRQ_UART1);
+-	}
+-
+-	return platform_device_register(&bcm63xx_uart_devices[id]);
+-}
+--- a/arch/mips/include/asm/mach-bcm63xx/bcm63xx_dev_uart.h
++++ /dev/null
+@@ -1,6 +0,0 @@
+-#ifndef BCM63XX_DEV_UART_H_
+-#define BCM63XX_DEV_UART_H_
+-
+-int bcm63xx_uart_register(unsigned int id);
+-
+-#endif /* BCM63XX_DEV_UART_H_ */
+--- a/arch/mips/include/asm/mach-bcm63xx/board_bcm963xx.h
++++ b/arch/mips/include/asm/mach-bcm63xx/board_bcm963xx.h
+@@ -33,8 +33,6 @@ struct board_info {
+ 	unsigned int	has_ehci0:1;
+ 	unsigned int	has_usbd:1;
+ 	unsigned int	has_dsp:1;
+-	unsigned int	has_uart0:1;
+-	unsigned int	has_uart1:1;
+ 	unsigned int	use_fallback_sprom:1;
+ 
+ 	/* ethernet config */
+--- a/arch/mips/bcm63xx/boards/board_common.c
++++ b/arch/mips/bcm63xx/boards/board_common.c
+@@ -20,7 +20,6 @@
+ #include <asm/prom.h>
+ #include <bcm63xx_board.h>
+ #include <bcm63xx_cpu.h>
+-#include <bcm63xx_dev_uart.h>
+ #include <bcm63xx_regs.h>
+ #include <bcm63xx_io.h>
+ #include <bcm63xx_gpio.h>
+@@ -189,12 +188,6 @@ int __init board_register_devices(void)
+ 
+ 	bcm63xx_gpio_init();
+ 
+-	if (board.has_uart0)
+-		bcm63xx_uart_register(0);
+-
+-	if (board.has_uart1)
+-		bcm63xx_uart_register(1);
+-
+ 	if (board.has_pccard)
+ 		bcm63xx_pcmcia_register();
+ 
+--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
++++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
+@@ -35,9 +35,6 @@ static struct board_info __initdata boar
+ 	.name				= "CVG834G_E15R3921",
+ 	.expected_cpu_id		= 0x3368,
+ 
+-	.has_uart0			= 1,
+-	.has_uart1			= 1,
+-
+ 	.has_enet0			= 1,
+ 	.has_pci			= 1,
+ 
+@@ -67,7 +64,6 @@ static struct board_info __initdata boar
+ 	.name				= "96328avng",
+ 	.expected_cpu_id		= 0x6328,
+ 
+-	.has_uart0			= 1,
+ 	.has_pci			= 1,
+ 	.has_usbd			= 0,
+ 	.use_fallback_sprom		= 1,
+@@ -116,7 +112,6 @@ static struct board_info __initdata boar
+ 	.name				= "96338GW",
+ 	.expected_cpu_id		= 0x6338,
+ 
+-	.has_uart0			= 1,
+ 	.has_enet0			= 1,
+ 	.enet0 = {
+ 		.force_speed_100	= 1,
+@@ -159,7 +154,6 @@ static struct board_info __initdata boar
+ 	.name				= "96338W",
+ 	.expected_cpu_id		= 0x6338,
+ 
+-	.has_uart0			= 1,
+ 	.has_enet0			= 1,
+ 	.enet0 = {
+ 		.force_speed_100	= 1,
+@@ -204,8 +198,6 @@ static struct board_info __initdata boar
+ static struct board_info __initdata board_96345gw2 = {
+ 	.name				= "96345GW2",
+ 	.expected_cpu_id		= 0x6345,
+-
+-	.has_uart0			= 1,
+ };
+ #endif
+ 
+@@ -217,7 +209,6 @@ static struct board_info __initdata boar
+ 	.name				= "96348R",
+ 	.expected_cpu_id		= 0x6348,
+ 
+-	.has_uart0			= 1,
+ 	.has_enet0			= 1,
+ 	.has_pci			= 1,
+ 	.use_fallback_sprom		= 1,
+@@ -262,7 +253,6 @@ static struct board_info __initdata boar
+ 	.name				= "96348GW-10",
+ 	.expected_cpu_id		= 0x6348,
+ 
+-	.has_uart0			= 1,
+ 	.has_enet0			= 1,
+ 	.has_enet1			= 1,
+ 	.has_pci			= 1,
+@@ -323,7 +313,6 @@ static struct board_info __initdata boar
+ 	.name				= "96348GW-11",
+ 	.expected_cpu_id		= 0x6348,
+ 
+-	.has_uart0			= 1,
+ 	.has_enet0			= 1,
+ 	.has_enet1			= 1,
+ 	.has_pci			= 1,
+@@ -378,7 +367,6 @@ static struct board_info __initdata boar
+ 	.name				= "96348GW",
+ 	.expected_cpu_id		= 0x6348,
+ 
+-	.has_uart0			= 1,
+ 	.has_enet0			= 1,
+ 	.has_enet1			= 1,
+ 	.has_pci			= 1,
+@@ -437,7 +425,6 @@ static struct board_info __initdata boar
+ 	.name				= "F at ST2404",
+ 	.expected_cpu_id		= 0x6348,
+ 
+-	.has_uart0			= 1,
+ 	.has_enet0			= 1,
+ 	.has_enet1			= 1,
+ 	.has_pci			= 1,
+@@ -482,7 +469,6 @@ static struct board_info __initdata boar
+ 	.name				= "DV201AMR",
+ 	.expected_cpu_id		= 0x6348,
+ 
+-	.has_uart0			= 1,
+ 	.has_pci			= 1,
+ 	.use_fallback_sprom		= 1,
+ 	.has_ohci0			= 1,
+@@ -503,7 +489,6 @@ static struct board_info __initdata boar
+ 	.name				= "96348GW-A",
+ 	.expected_cpu_id		= 0x6348,
+ 
+-	.has_uart0			= 1,
+ 	.has_enet0			= 1,
+ 	.has_enet1			= 1,
+ 	.has_pci			= 1,
+@@ -530,7 +515,6 @@ static struct board_info __initdata boar
+ 	.name				= "96358VW",
+ 	.expected_cpu_id		= 0x6358,
+ 
+-	.has_uart0			= 1,
+ 	.has_enet0			= 1,
+ 	.has_enet1			= 1,
+ 	.has_pci			= 1,
+@@ -583,7 +567,6 @@ static struct board_info __initdata boar
+ 	.name				= "96358VW2",
+ 	.expected_cpu_id		= 0x6358,
+ 
+-	.has_uart0			= 1,
+ 	.has_enet0			= 1,
+ 	.has_enet1			= 1,
+ 	.has_pci			= 1,
+@@ -633,7 +616,6 @@ static struct board_info __initdata boar
+ 	.name				= "AGPF-S0",
+ 	.expected_cpu_id		= 0x6358,
+ 
+-	.has_uart0			= 1,
+ 	.has_enet0			= 1,
+ 	.has_enet1			= 1,
+ 	.has_pci			= 1,
diff --git a/target/linux/brcm63xx/patches-4.4/550-MIPS-BCM63XX-remove-leds-and-buttons.patch b/target/linux/brcm63xx/patches-4.4/392-MIPS-BCM63XX-remove-leds-and-buttons.patch
similarity index 85%
rename from target/linux/brcm63xx/patches-4.4/550-MIPS-BCM63XX-remove-leds-and-buttons.patch
rename to target/linux/brcm63xx/patches-4.4/392-MIPS-BCM63XX-remove-leds-and-buttons.patch
index 2ae8107..1bbbf91 100644
--- a/target/linux/brcm63xx/patches-4.4/550-MIPS-BCM63XX-remove-leds-and-buttons.patch
+++ b/target/linux/brcm63xx/patches-4.4/392-MIPS-BCM63XX-remove-leds-and-buttons.patch
@@ -9,7 +9,7 @@ Subject: [PATCH] MIPS: BCM63XX: remove leds and buttons
 
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -47,14 +47,6 @@ static struct board_info __initdata boar
+@@ -43,14 +43,6 @@ static struct board_info __initdata boar
  		.use_internal_phy	= 1,
  	},
  
@@ -24,10 +24,11 @@ Subject: [PATCH] MIPS: BCM63XX: remove leds and buttons
  	.ephy_reset_gpio		= 36,
  	.ephy_reset_gpio_flags		= GPIO_ACTIVE_LOW,
  };
-@@ -78,35 +70,6 @@ static struct board_info __initdata boar
+@@ -72,35 +64,6 @@ static struct board_info __initdata boar
+ 		.use_fullspeed		= 0,
  		.port_no		= 0,
  	},
- 
+-
 -	.leds = {
 -		{
 -			.name		= "96328avng::ppp-fail",
@@ -56,11 +57,10 @@ Subject: [PATCH] MIPS: BCM63XX: remove leds and buttons
 -			.active_low	= 1,
 -		},
 -	},
--
- 	.has_enetsw			= 1,
+ };
+ #endif
  
- 	.enetsw = {
-@@ -445,35 +408,6 @@ static struct board_info __initdata boar
+@@ -119,35 +82,6 @@ static struct board_info __initdata boar
  	},
  
  	.has_ohci0			= 1,
@@ -96,7 +96,7 @@ Subject: [PATCH] MIPS: BCM63XX: remove leds and buttons
  };
  
  static struct board_info __initdata board_96338w = {
-@@ -488,35 +422,6 @@ static struct board_info __initdata boar
+@@ -159,35 +93,6 @@ static struct board_info __initdata boar
  		.force_speed_100	= 1,
  		.force_duplex_full	= 1,
  	},
@@ -130,9 +130,9 @@ Subject: [PATCH] MIPS: BCM63XX: remove leds and buttons
 -		},
 -	},
  };
+ #endif
  
- static struct board_info __initdata board_96338w2_e7t = {
-@@ -615,36 +520,6 @@ static struct board_info __initdata boar
+@@ -217,36 +122,6 @@ static struct board_info __initdata boar
  		.has_phy		= 1,
  		.use_internal_phy	= 1,
  	},
@@ -169,7 +169,7 @@ Subject: [PATCH] MIPS: BCM63XX: remove leds and buttons
  };
  
  static struct board_info __initdata board_96348gw_10 = {
-@@ -679,35 +554,6 @@ static struct board_info __initdata boar
+@@ -278,35 +153,6 @@ static struct board_info __initdata boar
  		.cs			= 2,
  		.ext_irq		= 2,
  	},
@@ -205,7 +205,7 @@ Subject: [PATCH] MIPS: BCM63XX: remove leds and buttons
  };
  
  static struct board_info __initdata board_96348gw_11 = {
-@@ -736,35 +582,6 @@ static struct board_info __initdata boar
+@@ -332,35 +178,6 @@ static struct board_info __initdata boar
  	.has_ohci0 = 1,
  	.has_pccard = 1,
  	.has_ehci0 = 1,
@@ -240,8 +240,8 @@ Subject: [PATCH] MIPS: BCM63XX: remove leds and buttons
 -	},
  };
  
- 
-@@ -897,35 +714,6 @@ static struct board_info __initdata boar
+ static struct board_info __initdata board_96348gw = {
+@@ -390,35 +207,6 @@ static struct board_info __initdata boar
  		.ext_irq		= 2,
  		.cs			= 2,
  	},
@@ -276,8 +276,8 @@ Subject: [PATCH] MIPS: BCM63XX: remove leds and buttons
 -	},
  };
  
- static struct board_info __initdata board_gw6200 = {
-@@ -1262,33 +1050,6 @@ static struct board_info __initdata boar
+ static struct board_info __initdata board_FAST2404 = {
+@@ -534,33 +322,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 = {
-@@ -1318,29 +1079,6 @@ static struct board_info __initdata boar
+@@ -587,29 +348,6 @@ static struct board_info __initdata boar
  	.has_pccard = 1,
  	.has_ehci0 = 1,
  	.num_usbh_ports			= 2,
@@ -340,4 +340,4 @@ Subject: [PATCH] MIPS: BCM63XX: remove leds and buttons
 -	},
  };
  
- static struct board_info __initdata board_CPVA642 = {
+ static struct board_info __initdata board_AGPFS0 = {
diff --git a/target/linux/brcm63xx/patches-4.4/403-6358-enet1-external-mii-clk.patch b/target/linux/brcm63xx/patches-4.4/403-6358-enet1-external-mii-clk.patch
index 334a934..9227eb2 100644
--- a/target/linux/brcm63xx/patches-4.4/403-6358-enet1-external-mii-clk.patch
+++ b/target/linux/brcm63xx/patches-4.4/403-6358-enet1-external-mii-clk.patch
@@ -1,6 +1,6 @@
 --- a/arch/mips/bcm63xx/boards/board_common.c
 +++ b/arch/mips/bcm63xx/boards/board_common.c
-@@ -99,6 +99,8 @@ void __init board_early_setup(const stru
+@@ -98,6 +98,8 @@ void __init board_early_setup(const stru
  		if (BCMCPU_IS_6348())
  			val |= GPIO_MODE_6348_G3_EXT_MII |
  				GPIO_MODE_6348_G0_EXT_MII;
diff --git a/target/linux/brcm63xx/patches-4.4/411-MIPS-BCM63XX-Register-SPI-flash-if-present.patch b/target/linux/brcm63xx/patches-4.4/411-MIPS-BCM63XX-Register-SPI-flash-if-present.patch
index 6dab40d..608ad8e 100644
--- a/target/linux/brcm63xx/patches-4.4/411-MIPS-BCM63XX-Register-SPI-flash-if-present.patch
+++ b/target/linux/brcm63xx/patches-4.4/411-MIPS-BCM63XX-Register-SPI-flash-if-present.patch
@@ -11,7 +11,7 @@ Signed-off-by: Jonas Gorski <jonas.gorski at gmail.com>
 
 --- a/arch/mips/bcm63xx/dev-flash.c
 +++ b/arch/mips/bcm63xx/dev-flash.c
-@@ -17,9 +17,13 @@
+@@ -17,6 +17,9 @@
  #include <linux/mtd/partitions.h>
  #include <linux/mtd/physmap.h>
  #include <linux/mtd/spi-nor.h>
@@ -21,11 +21,7 @@ Signed-off-by: Jonas Gorski <jonas.gorski at gmail.com>
  
  #include <bcm63xx_cpu.h>
  #include <bcm63xx_dev_flash.h>
-+#include <bcm63xx_dev_hsspi.h>
- #include <bcm63xx_regs.h>
- #include <bcm63xx_io.h>
- 
-@@ -66,6 +70,41 @@ void __init bcm63xx_flash_force_phys_bas
+@@ -66,6 +69,41 @@ void __init bcm63xx_flash_force_phys_bas
  	mtd_resources[0].end = end;
  }
  
@@ -67,7 +63,7 @@ Signed-off-by: Jonas Gorski <jonas.gorski at gmail.com>
  static int __init bcm63xx_detect_flash_type(void)
  {
  	u32 val;
-@@ -73,9 +112,15 @@ static int __init bcm63xx_detect_flash_t
+@@ -73,9 +111,15 @@ static int __init bcm63xx_detect_flash_t
  	switch (bcm63xx_get_cpu_id()) {
  	case BCM6318_CPU_ID:
  		/* only support serial flash */
@@ -83,7 +79,7 @@ Signed-off-by: Jonas Gorski <jonas.gorski at gmail.com>
  		if (val & STRAPBUS_6328_BOOT_SEL_SERIAL)
  			return BCM63XX_FLASH_TYPE_SERIAL;
  		else
-@@ -94,12 +139,20 @@ static int __init bcm63xx_detect_flash_t
+@@ -94,12 +138,20 @@ static int __init bcm63xx_detect_flash_t
  			return BCM63XX_FLASH_TYPE_SERIAL;
  	case BCM6362_CPU_ID:
  		val = bcm_misc_readl(MISC_STRAPBUS_6362_REG);
@@ -104,7 +100,7 @@ Signed-off-by: Jonas Gorski <jonas.gorski at gmail.com>
  		switch (val & STRAPBUS_6368_BOOT_SEL_MASK) {
  		case STRAPBUS_6368_BOOT_SEL_NAND:
  			return BCM63XX_FLASH_TYPE_NAND;
-@@ -110,6 +163,11 @@ static int __init bcm63xx_detect_flash_t
+@@ -110,6 +162,11 @@ static int __init bcm63xx_detect_flash_t
  		}
  	case BCM63268_CPU_ID:
  		val = bcm_misc_readl(MISC_STRAPBUS_63268_REG);
@@ -116,7 +112,7 @@ Signed-off-by: Jonas Gorski <jonas.gorski at gmail.com>
  		if (val & STRAPBUS_63268_BOOT_SEL_SERIAL)
  			return BCM63XX_FLASH_TYPE_SERIAL;
  		else
-@@ -176,6 +234,7 @@ void __init bcm63xx_flash_detect(void)
+@@ -176,6 +233,7 @@ void __init bcm63xx_flash_detect(void)
  
  int __init bcm63xx_flash_register(void)
  {
@@ -124,7 +120,7 @@ Signed-off-by: Jonas Gorski <jonas.gorski at gmail.com>
  	u32 val;
  
  	switch (flash_type) {
-@@ -195,8 +254,14 @@ int __init bcm63xx_flash_register(void)
+@@ -195,8 +253,14 @@ int __init bcm63xx_flash_register(void)
  
  		return platform_device_register(&mtd_dev);
  	case BCM63XX_FLASH_TYPE_SERIAL:
diff --git a/target/linux/brcm63xx/patches-4.4/413-BCM63XX-allow-providing-fixup-data-in-board-data.patch b/target/linux/brcm63xx/patches-4.4/413-BCM63XX-allow-providing-fixup-data-in-board-data.patch
index d86e6a0..a0ad6e6 100644
--- a/target/linux/brcm63xx/patches-4.4/413-BCM63XX-allow-providing-fixup-data-in-board-data.patch
+++ b/target/linux/brcm63xx/patches-4.4/413-BCM63XX-allow-providing-fixup-data-in-board-data.patch
@@ -10,7 +10,7 @@ Subject: [PATCH 58/72] BCM63XX: allow providing fixup data in board data
 
 --- a/arch/mips/bcm63xx/boards/board_common.c
 +++ b/arch/mips/bcm63xx/boards/board_common.c
-@@ -33,6 +33,7 @@
+@@ -32,6 +32,7 @@
  #include <bcm63xx_dev_usb_ohci.h>
  #include <bcm63xx_dev_usb_usbd.h>
  #include <board_bcm963xx.h>
@@ -18,7 +18,7 @@ Subject: [PATCH 58/72] BCM63XX: allow providing fixup data in board data
  
  #include "board_common.h"
  
-@@ -179,6 +180,7 @@ static struct of_device_id of_ids[] = {
+@@ -178,6 +179,7 @@ static struct of_device_id of_ids[] = {
  int __init board_register_devices(void)
  {
  	int usbh_ports = 0;
@@ -26,7 +26,7 @@ Subject: [PATCH 58/72] BCM63XX: allow providing fixup data in board data
  
  #if CONFIG_OF
  	if (of_have_populated_dt()) {
-@@ -252,6 +254,10 @@ int __init board_register_devices(void)
+@@ -245,6 +247,10 @@ int __init board_register_devices(void)
  					board.ephy_reset_gpio_flags);
  	}
  
@@ -59,9 +59,9 @@ Subject: [PATCH 58/72] BCM63XX: allow providing fixup data in board data
  /*
   * board definition
   */
-@@ -36,6 +42,10 @@ struct board_info {
- 	unsigned int	has_uart0:1;
- 	unsigned int	has_uart1:1;
+@@ -34,6 +40,10 @@ struct board_info {
+ 	unsigned int	has_usbd:1;
+ 	unsigned int	has_dsp:1;
  	unsigned int	use_fallback_sprom:1;
 +	unsigned int	has_caldata:2;
 +
diff --git a/target/linux/brcm63xx/patches-4.4/415-MIPS-BCM63XX-export-the-attached-flash-type.patch b/target/linux/brcm63xx/patches-4.4/415-MIPS-BCM63XX-export-the-attached-flash-type.patch
index 9eb4e5e..94c63c5 100644
--- a/target/linux/brcm63xx/patches-4.4/415-MIPS-BCM63XX-export-the-attached-flash-type.patch
+++ b/target/linux/brcm63xx/patches-4.4/415-MIPS-BCM63XX-export-the-attached-flash-type.patch
@@ -11,7 +11,7 @@ Signed-off-by: Jonas Gorski <jogo at openwrt.org>
 
 --- a/arch/mips/bcm63xx/dev-flash.c
 +++ b/arch/mips/bcm63xx/dev-flash.c
-@@ -271,3 +271,8 @@ int __init bcm63xx_flash_register(void)
+@@ -270,3 +270,8 @@ int __init bcm63xx_flash_register(void)
  		return -ENODEV;
  	}
  }
diff --git a/target/linux/brcm63xx/patches-4.4/416-BCM63XX-add-a-fixup-for-ath9k-devices.patch b/target/linux/brcm63xx/patches-4.4/416-BCM63XX-add-a-fixup-for-ath9k-devices.patch
index 7d01216..0f6706a 100644
--- a/target/linux/brcm63xx/patches-4.4/416-BCM63XX-add-a-fixup-for-ath9k-devices.patch
+++ b/target/linux/brcm63xx/patches-4.4/416-BCM63XX-add-a-fixup-for-ath9k-devices.patch
@@ -15,7 +15,7 @@ Subject: [PATCH 61/72] BCM63XX: add a fixup for ath9k devices
 +++ b/arch/mips/bcm63xx/Makefile
 @@ -2,7 +2,7 @@ obj-y		+= clk.o cpu.o cs.o gpio.o irq.o
  		   setup.o timer.o dev-dsp.o dev-enet.o dev-flash.o \
- 		   dev-pcmcia.o dev-rng.o dev-spi.o dev-hsspi.o dev-uart.o \
+ 		   dev-pcmcia.o dev-rng.o \
  		   dev-wdt.o dev-usb-ehci.o dev-usb-ohci.o dev-usb-usbd.o \
 -		   usb-common.o sprom.o
 +		   pci-ath9k-fixup.o usb-common.o sprom.o
@@ -24,7 +24,7 @@ Subject: [PATCH 61/72] BCM63XX: add a fixup for ath9k devices
  obj-y		+= boards/
 --- /dev/null
 +++ b/arch/mips/bcm63xx/pci-ath9k-fixup.c
-@@ -0,0 +1,201 @@
+@@ -0,0 +1,200 @@
 +/*
 + *  Broadcom BCM63XX Ath9k EEPROM fixup helper.
 + *
@@ -52,7 +52,6 @@ Subject: [PATCH 61/72] BCM63XX: add a fixup for ath9k devices
 +#include <bcm63xx_nvram.h>
 +#include <bcm63xx_dev_pci.h>
 +#include <bcm63xx_dev_flash.h>
-+#include <bcm63xx_dev_hsspi.h>
 +#include <pci_ath9k_fixup.h>
 +
 +#define bcm_hsspi_writel(v, o)	bcm_rset_writel(RSET_HSSPI, (v), (o))
diff --git a/target/linux/brcm63xx/patches-4.4/420-BCM63XX-add-endian-check-for-ath9k.patch b/target/linux/brcm63xx/patches-4.4/420-BCM63XX-add-endian-check-for-ath9k.patch
index f314e01..8921f2d 100644
--- a/target/linux/brcm63xx/patches-4.4/420-BCM63XX-add-endian-check-for-ath9k.patch
+++ b/target/linux/brcm63xx/patches-4.4/420-BCM63XX-add-endian-check-for-ath9k.patch
@@ -21,7 +21,7 @@
  /*
 --- a/arch/mips/bcm63xx/pci-ath9k-fixup.c
 +++ b/arch/mips/bcm63xx/pci-ath9k-fixup.c
-@@ -183,12 +183,14 @@ static void ath9k_pci_fixup(struct pci_d
+@@ -182,12 +182,14 @@ static void ath9k_pci_fixup(struct pci_d
  }
  DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_ATHEROS, PCI_ANY_ID, ath9k_pci_fixup);
  
@@ -39,7 +39,7 @@
  		return;
 --- a/arch/mips/bcm63xx/boards/board_common.c
 +++ b/arch/mips/bcm63xx/boards/board_common.c
-@@ -256,7 +256,8 @@ int __init board_register_devices(void)
+@@ -249,7 +249,8 @@ int __init board_register_devices(void)
  
  	/* register any fixups */
  	for (i = 0; i < board.has_caldata; i++)
diff --git a/target/linux/brcm63xx/patches-4.4/421-BCM63XX-add-led-pin-for-ath9k.patch b/target/linux/brcm63xx/patches-4.4/421-BCM63XX-add-led-pin-for-ath9k.patch
index ccd3160..3ccf6dc 100644
--- a/target/linux/brcm63xx/patches-4.4/421-BCM63XX-add-led-pin-for-ath9k.patch
+++ b/target/linux/brcm63xx/patches-4.4/421-BCM63XX-add-led-pin-for-ath9k.patch
@@ -1,6 +1,6 @@
 --- a/arch/mips/bcm63xx/boards/board_common.c
 +++ b/arch/mips/bcm63xx/boards/board_common.c
-@@ -257,7 +257,7 @@ int __init board_register_devices(void)
+@@ -250,7 +250,7 @@ int __init board_register_devices(void)
  	/* register any fixups */
  	for (i = 0; i < board.has_caldata; i++)
  		pci_enable_ath9k_fixup(board.caldata[i].slot, board.caldata[i].caldata_offset,
@@ -11,7 +11,7 @@
  }
 --- a/arch/mips/bcm63xx/pci-ath9k-fixup.c
 +++ b/arch/mips/bcm63xx/pci-ath9k-fixup.c
-@@ -184,13 +184,15 @@ static void ath9k_pci_fixup(struct pci_d
+@@ -183,13 +183,15 @@ static void ath9k_pci_fixup(struct pci_d
  DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_ATHEROS, PCI_ANY_ID, ath9k_pci_fixup);
  
  void __init pci_enable_ath9k_fixup(unsigned slot, u32 offset,
diff --git a/target/linux/brcm63xx/patches-4.4/422-BCM63XX-add-a-fixup-for-rt2x00-devices.patch b/target/linux/brcm63xx/patches-4.4/422-BCM63XX-add-a-fixup-for-rt2x00-devices.patch
index 5731cb3..d021b36 100644
--- a/target/linux/brcm63xx/patches-4.4/422-BCM63XX-add-a-fixup-for-rt2x00-devices.patch
+++ b/target/linux/brcm63xx/patches-4.4/422-BCM63XX-add-a-fixup-for-rt2x00-devices.patch
@@ -19,7 +19,7 @@ Subject: [PATCH 72/72] 446-BCM63XX-add-a-fixup-for-rt2x00-devices
 +++ b/arch/mips/bcm63xx/Makefile
 @@ -2,7 +2,7 @@ obj-y		+= clk.o cpu.o cs.o gpio.o irq.o
  		   setup.o timer.o dev-dsp.o dev-enet.o dev-flash.o \
- 		   dev-pcmcia.o dev-rng.o dev-spi.o dev-hsspi.o dev-uart.o \
+ 		   dev-pcmcia.o dev-rng.o \
  		   dev-wdt.o dev-usb-ehci.o dev-usb-ohci.o dev-usb-usbd.o \
 -		   pci-ath9k-fixup.o usb-common.o sprom.o
 +		   pci-ath9k-fixup.o pci-rt2x00-fixup.o usb-common.o sprom.o
@@ -28,7 +28,7 @@ Subject: [PATCH 72/72] 446-BCM63XX-add-a-fixup-for-rt2x00-devices
  obj-y		+= boards/
 --- a/arch/mips/bcm63xx/boards/board_common.c
 +++ b/arch/mips/bcm63xx/boards/board_common.c
-@@ -34,6 +34,7 @@
+@@ -33,6 +33,7 @@
  #include <bcm63xx_dev_usb_usbd.h>
  #include <board_bcm963xx.h>
  #include <pci_ath9k_fixup.h>
@@ -36,7 +36,7 @@ Subject: [PATCH 72/72] 446-BCM63XX-add-a-fixup-for-rt2x00-devices
  
  #include "board_common.h"
  
-@@ -255,9 +256,19 @@ int __init board_register_devices(void)
+@@ -248,9 +249,19 @@ int __init board_register_devices(void)
  	}
  
  	/* register any fixups */
@@ -162,7 +162,7 @@ Subject: [PATCH 72/72] 446-BCM63XX-add-a-fixup-for-rt2x00-devices
  };
  
  /*
-@@ -48,7 +53,7 @@ struct board_info {
+@@ -46,7 +51,7 @@ struct board_info {
  	unsigned int	has_caldata:2;
  
  	/* wifi calibration data config */
diff --git a/target/linux/brcm63xx/patches-4.4/427-boards_probe_switch.patch b/target/linux/brcm63xx/patches-4.4/427-boards_probe_switch.patch
index 4c4eb7d..ec03e4c 100644
--- a/target/linux/brcm63xx/patches-4.4/427-boards_probe_switch.patch
+++ b/target/linux/brcm63xx/patches-4.4/427-boards_probe_switch.patch
@@ -1,7 +1,7 @@
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -119,6 +119,8 @@ static struct board_info __initdata boar
- 	.has_uart0			= 1,
+@@ -77,6 +77,8 @@ static struct board_info __initdata boar
+ 
  	.has_enet0			= 1,
  	.enet0 = {
 +		.has_phy		= 1,
@@ -9,8 +9,8 @@
  		.force_speed_100	= 1,
  		.force_duplex_full	= 1,
  	},
-@@ -162,6 +164,8 @@ static struct board_info __initdata boar
- 	.has_uart0			= 1,
+@@ -90,6 +92,8 @@ static struct board_info __initdata boar
+ 
  	.has_enet0			= 1,
  	.enet0 = {
 +		.has_phy		= 1,
@@ -18,7 +18,7 @@
  		.force_speed_100	= 1,
  		.force_duplex_full	= 1,
  	},
-@@ -273,6 +277,8 @@ static struct board_info __initdata boar
+@@ -138,6 +142,8 @@ static struct board_info __initdata boar
  		.use_internal_phy	= 1,
  	},
  	.enet1 = {
@@ -27,7 +27,7 @@
  		.force_speed_100	= 1,
  		.force_duplex_full	= 1,
  	},
-@@ -335,6 +341,8 @@ static struct board_info __initdata boar
+@@ -170,6 +176,8 @@ static struct board_info __initdata boar
  	},
  
  	.enet1 = {
@@ -36,7 +36,7 @@
  		.force_speed_100	= 1,
  		.force_duplex_full	= 1,
  	},
-@@ -389,6 +397,8 @@ static struct board_info __initdata boar
+@@ -194,6 +202,8 @@ static struct board_info __initdata boar
  		.use_internal_phy	= 1,
  	},
  	.enet1 = {
@@ -45,7 +45,7 @@
  		.force_speed_100	= 1,
  		.force_duplex_full	= 1,
  	},
-@@ -449,6 +459,8 @@ static struct board_info __initdata boar
+@@ -224,6 +234,8 @@ static struct board_info __initdata boar
  	},
  
  	.enet1 = {
@@ -54,7 +54,7 @@
  		.force_speed_100	= 1,
  		.force_duplex_full	= 1,
  	},
-@@ -472,6 +484,8 @@ static struct board_info __initdata boar
+@@ -247,6 +259,8 @@ static struct board_info __initdata boar
  		.use_internal_phy	= 1,
  	},
  	.enet1 = {
@@ -63,16 +63,16 @@
  		.force_speed_100	= 1,
  		.force_duplex_full	= 1,
  	},
-@@ -491,6 +505,8 @@ static struct board_info __initdata boar
- 	.has_enet1			= 1,
- 	.enet0 = {
- 		.has_phy		= 1,
-+		.phy_id			= 0,
-+		.has_phy		= 1,
+@@ -268,6 +282,8 @@ static struct board_info __initdata boar
  		.use_internal_phy	= 1,
  	},
  	.enet1 = {
-@@ -514,6 +530,8 @@ static struct board_info __initdata boar
++		.has_phy		= 1,
++		.phy_id			= 0,
+ 		.force_speed_100	= 1,
+ 		.force_duplex_full	= 1,
+ 	},
+@@ -287,6 +303,8 @@ static struct board_info __initdata boar
  		.use_internal_phy	= 1,
  	},
  	.enet1 = {
@@ -81,7 +81,7 @@
  		.force_speed_100	= 1,
  		.force_duplex_full	= 1,
  	},
-@@ -542,6 +560,8 @@ static struct board_info __initdata boar
+@@ -314,6 +332,8 @@ static struct board_info __initdata boar
  	},
  
  	.enet1 = {
@@ -90,7 +90,7 @@
  		.force_speed_100	= 1,
  		.force_duplex_full	= 1,
  	},
-@@ -595,6 +615,8 @@ static struct board_info __initdata boar
+@@ -339,6 +359,8 @@ static struct board_info __initdata boar
  	},
  
  	.enet1 = {
@@ -99,7 +99,7 @@
  		.force_speed_100	= 1,
  		.force_duplex_full	= 1,
  	},
-@@ -644,6 +666,8 @@ static struct board_info __initdata boar
+@@ -364,6 +386,8 @@ static struct board_info __initdata boar
  	},
  
  	.enet1 = {
@@ -108,7 +108,7 @@
  		.force_speed_100	= 1,
  		.force_duplex_full	= 1,
  	},
-@@ -667,6 +691,8 @@ static struct board_info __initdata boar
+@@ -387,6 +411,8 @@ static struct board_info __initdata boar
  	},
  
  	.enet1 = {
diff --git a/target/linux/brcm63xx/patches-4.4/499-allow_better_context_for_board_patches.patch b/target/linux/brcm63xx/patches-4.4/499-allow_better_context_for_board_patches.patch
index 98292d5..ad9c5b3 100644
--- a/target/linux/brcm63xx/patches-4.4/499-allow_better_context_for_board_patches.patch
+++ b/target/linux/brcm63xx/patches-4.4/499-allow_better_context_for_board_patches.patch
@@ -1,6 +1,6 @@
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -57,7 +57,7 @@ static struct board_info __initdata boar
+@@ -46,7 +46,7 @@ static struct board_info __initdata boar
  	.ephy_reset_gpio		= 36,
  	.ephy_reset_gpio_flags		= GPIO_ACTIVE_LOW,
  };
@@ -9,8 +9,8 @@
  
  /*
   * known 6328 boards
-@@ -106,7 +106,7 @@ static struct board_info __initdata boar
- 		},
+@@ -65,7 +65,7 @@ static struct board_info __initdata boar
+ 		.port_no		= 0,
  	},
  };
 -#endif
@@ -18,8 +18,8 @@
  
  /*
   * known 6338 boards
-@@ -199,7 +199,7 @@ static struct board_info __initdata boar
- 		},
+@@ -98,7 +98,7 @@ static struct board_info __initdata boar
+ 		.force_duplex_full	= 1,
  	},
  };
 -#endif
@@ -27,16 +27,16 @@
  
  /*
   * known 6345 boards
-@@ -211,7 +211,7 @@ static struct board_info __initdata boar
- 
- 	.has_uart0			= 1,
+@@ -108,7 +108,7 @@ static struct board_info __initdata boar
+ 	.name				= "96345GW2",
+ 	.expected_cpu_id		= 0x6345,
  };
 -#endif
 +#endif /* CONFIG_BCM63XX_CPU_6345 */
  
  /*
   * known 6348 boards
-@@ -538,7 +538,7 @@ static struct board_info __initdata boar
+@@ -311,7 +311,7 @@ static struct board_info __initdata boar
  
  	.has_ohci0 = 1,
  };
@@ -45,7 +45,7 @@
  
  /*
   * known 6358 boards
-@@ -699,7 +699,7 @@ static struct board_info __initdata boar
+@@ -419,7 +419,7 @@ static struct board_info __initdata boar
  
  	.has_ohci0			= 1,
  };
diff --git a/target/linux/brcm63xx/patches-4.4/500-board-D4PW.patch b/target/linux/brcm63xx/patches-4.4/500-board-D4PW.patch
index c2b2d33..31757c4 100644
--- a/target/linux/brcm63xx/patches-4.4/500-board-D4PW.patch
+++ b/target/linux/brcm63xx/patches-4.4/500-board-D4PW.patch
@@ -1,6 +1,6 @@
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -538,6 +538,22 @@ static struct board_info __initdata boar
+@@ -311,6 +311,21 @@ static struct board_info __initdata boar
  
  	.has_ohci0 = 1,
  };
@@ -11,7 +11,6 @@
 +
 +	.has_enet1			= 1,
 +	.has_pci			= 1,
-+	.has_uart0 			= 1,
 +
 +	.enet1 = {
 +		.has_phy		= 1,
@@ -23,7 +22,7 @@
  #endif /* CONFIG_BCM63XX_CPU_6348 */
  
  /*
-@@ -727,6 +743,7 @@ static const struct board_info __initcon
+@@ -447,6 +462,7 @@ static const struct board_info __initcon
  	&board_DV201AMR,
  	&board_96348gw_a,
  	&board_rta1025w_16,
@@ -31,7 +30,7 @@
  #endif
  
  #ifdef CONFIG_BCM63XX_CPU_6358
-@@ -758,6 +775,7 @@ static struct of_device_id const bcm963x
+@@ -478,6 +494,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, },
diff --git a/target/linux/brcm63xx/patches-4.4/501-board-NB4.patch b/target/linux/brcm63xx/patches-4.4/501-board-NB4.patch
index c55221c..fe228c6 100644
--- a/target/linux/brcm63xx/patches-4.4/501-board-NB4.patch
+++ b/target/linux/brcm63xx/patches-4.4/501-board-NB4.patch
@@ -1,6 +1,6 @@
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -715,6 +715,62 @@ static struct board_info __initdata boar
+@@ -434,6 +434,60 @@ static struct board_info __initdata boar
  
  	.has_ohci0			= 1,
  };
@@ -9,7 +9,6 @@
 +	.name				= "NB4-SER-r0",
 +	.expected_cpu_id		= 0x6358,
 +
-+	.has_uart0			= 1,
 +	.has_enet0			= 1,
 +	.has_enet1			= 1,
 +	.has_pci			= 1,
@@ -37,7 +36,6 @@
 +	.name				= "NB4-FXC-r1",
 +	.expected_cpu_id		= 0x6358,
 +
-+	.has_uart0			= 1,
 +	.has_enet0			= 1,
 +	.has_enet1			= 1,
 +	.has_pci			= 1,
@@ -63,7 +61,7 @@
  #endif /* CONFIG_BCM63XX_CPU_6358 */
  
  /*
-@@ -751,6 +807,8 @@ static const struct board_info __initcon
+@@ -470,6 +524,8 @@ static const struct board_info __initcon
  	&board_96358vw2,
  	&board_AGPFS0,
  	&board_DWVS0,
@@ -72,7 +70,7 @@
  #endif
  };
  
-@@ -792,6 +850,8 @@ static struct of_device_id const bcm963x
+@@ -511,6 +567,8 @@ static struct of_device_id const bcm963x
  	{ .compatible = "pirelli,a226m", .data = &board_DWVS0, },
  	{ .compatible = "pirelli,a226m-fwb", .data = &board_DWVS0, },
  	{ .compatible = "pirelli,agpf-s0", .data = &board_AGPFS0, },
diff --git a/target/linux/brcm63xx/patches-4.4/502-board-96338W2_E7T.patch b/target/linux/brcm63xx/patches-4.4/502-board-96338W2_E7T.patch
index e4036b2..64edf76 100644
--- a/target/linux/brcm63xx/patches-4.4/502-board-96338W2_E7T.patch
+++ b/target/linux/brcm63xx/patches-4.4/502-board-96338W2_E7T.patch
@@ -1,7 +1,7 @@
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -199,6 +199,20 @@ static struct board_info __initdata boar
- 		},
+@@ -98,6 +98,20 @@ static struct board_info __initdata boar
+ 		.force_duplex_full	= 1,
  	},
  };
 +
@@ -21,7 +21,7 @@
  #endif /* CONFIG_BCM63XX_CPU_6338 */
  
  /*
-@@ -786,6 +800,7 @@ static const struct board_info __initcon
+@@ -503,6 +517,7 @@ static const struct board_info __initcon
  #ifdef CONFIG_BCM63XX_CPU_6338
  	&board_96338gw,
  	&board_96338w,
@@ -29,7 +29,7 @@
  #endif
  #ifdef CONFIG_BCM63XX_CPU_6345
  	&board_96345gw2,
-@@ -823,6 +838,7 @@ static struct of_device_id const bcm963x
+@@ -540,6 +555,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-4.4/503-board-CPVA642.patch b/target/linux/brcm63xx/patches-4.4/503-board-CPVA642.patch
index d38aa34..2639aa6 100644
--- a/target/linux/brcm63xx/patches-4.4/503-board-CPVA642.patch
+++ b/target/linux/brcm63xx/patches-4.4/503-board-CPVA642.patch
@@ -1,14 +1,13 @@
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -681,6 +681,26 @@ static struct board_info __initdata boar
- 	},
+@@ -401,6 +401,25 @@ static struct board_info __initdata boar
+ 	.num_usbh_ports			= 2,
  };
  
 +static struct board_info __initdata board_CPVA642 = {
 +	.name                           = "CPVA642",
 +	.expected_cpu_id                = 0x6358,
 +
-+	.has_uart0			= 1,
 +	.has_enet1                      = 1,
 +	.has_pci                        = 1,
 +
@@ -27,7 +26,7 @@
  static struct board_info __initdata board_AGPFS0 = {
  	.name				= "AGPF-S0",
  	.expected_cpu_id		= 0x6358,
-@@ -821,6 +841,7 @@ static const struct board_info __initcon
+@@ -538,6 +557,7 @@ static const struct board_info __initcon
  	&board_96358vw,
  	&board_96358vw2,
  	&board_AGPFS0,
@@ -35,7 +34,7 @@
  	&board_DWVS0,
  	&board_nb4_ser_r0,
  	&board_nb4_fxc_r1,
-@@ -868,6 +889,7 @@ static struct of_device_id const bcm963x
+@@ -585,6 +605,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-4.4/504-board_dsl_274xb_rev_c.patch b/target/linux/brcm63xx/patches-4.4/504-board_dsl_274xb_rev_c.patch
index 032085f..c125b3e 100644
--- a/target/linux/brcm63xx/patches-4.4/504-board_dsl_274xb_rev_c.patch
+++ b/target/linux/brcm63xx/patches-4.4/504-board_dsl_274xb_rev_c.patch
@@ -1,6 +1,6 @@
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -750,6 +750,23 @@ static struct board_info __initdata boar
+@@ -468,6 +468,22 @@ static struct board_info __initdata boar
  	.has_ohci0			= 1,
  };
  
@@ -9,7 +9,6 @@
 +	.name				= "AW4139",
 +	.expected_cpu_id		= 0x6358,
 +
-+	.has_uart0			= 1,
 +	.has_enet1			= 1,
 +	.has_pci			= 1,
 +
@@ -24,7 +23,7 @@
  static struct board_info __initdata board_nb4_ser_r0 = {
  	.name				= "NB4-SER-r0",
  	.expected_cpu_id		= 0x6358,
-@@ -843,6 +860,7 @@ static const struct board_info __initcon
+@@ -559,6 +575,7 @@ static const struct board_info __initcon
  	&board_AGPFS0,
  	&board_CPVA642,
  	&board_DWVS0,
@@ -32,7 +31,7 @@
  	&board_nb4_ser_r0,
  	&board_nb4_fxc_r1,
  #endif
-@@ -882,6 +900,7 @@ static struct of_device_id const bcm963x
+@@ -598,6 +615,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-4.4/505-board_spw500v.patch b/target/linux/brcm63xx/patches-4.4/505-board_spw500v.patch
index a9847c1..c6bc4ec 100644
--- a/target/linux/brcm63xx/patches-4.4/505-board_spw500v.patch
+++ b/target/linux/brcm63xx/patches-4.4/505-board_spw500v.patch
@@ -1,6 +1,6 @@
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -568,6 +568,45 @@ static struct board_info __initdata boar
+@@ -340,6 +340,44 @@ static struct board_info __initdata boar
  		.force_duplex_full	= 1,
  	},
  };
@@ -17,7 +17,6 @@
 +	.name				= "SPW500V",
 +	.expected_cpu_id		= 0x6348,
 +
-+	.has_uart0			= 1,
 +	.has_enet0			= 1,
 +	.has_pci			= 1,
 +	.use_fallback_sprom		= 1,
@@ -46,7 +45,7 @@
  #endif /* CONFIG_BCM63XX_CPU_6348 */
  
  /*
-@@ -852,6 +891,7 @@ static const struct board_info __initcon
+@@ -567,6 +605,7 @@ static const struct board_info __initcon
  	&board_96348gw_a,
  	&board_rta1025w_16,
  	&board_96348_D4PW,
@@ -54,7 +53,7 @@
  #endif
  
  #ifdef CONFIG_BCM63XX_CPU_6358
-@@ -893,6 +933,7 @@ static struct of_device_id const bcm963x
+@@ -608,6 +647,7 @@ static struct of_device_id const bcm963x
  	{ .compatible = "dynalink,rta1025w", .data = &board_rta1025w_16, },
  	{ .compatible = "netgear,dg834gtpn", .data = &board_96348gw_10, },
  	{ .compatible = "sagem,f at st2404", .data = &board_FAST2404, },
diff --git a/target/linux/brcm63xx/patches-4.4/506-board_gw6200_gw6000.patch b/target/linux/brcm63xx/patches-4.4/506-board_gw6200_gw6000.patch
index 3bb22ba..fb28302 100644
--- a/target/linux/brcm63xx/patches-4.4/506-board_gw6200_gw6000.patch
+++ b/target/linux/brcm63xx/patches-4.4/506-board_gw6200_gw6000.patch
@@ -1,6 +1,6 @@
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -457,6 +457,66 @@ static struct board_info __initdata boar
+@@ -233,6 +233,64 @@ static struct board_info __initdata boar
  	},
  };
  
@@ -8,7 +8,6 @@
 +	.name				= "GW6200",
 +	.expected_cpu_id		= 0x6348,
 +
-+	.has_uart0			= 1,
 +	.has_enet0			= 1,
 +	.has_enet1			= 1,
 +	.has_pci			= 1,
@@ -37,7 +36,6 @@
 +	.name				= "GW6000",
 +	.expected_cpu_id		= 0x6348,
 +
-+	.has_uart0			= 1,
 +	.has_enet0			= 1,
 +	.has_enet1			= 1,
 +	.has_pci			= 1,
@@ -67,7 +65,7 @@
  static struct board_info __initdata board_FAST2404 = {
  	.name				= "F at ST2404",
  	.expected_cpu_id		= 0x6348,
-@@ -884,6 +944,8 @@ static const struct board_info __initcon
+@@ -598,6 +656,8 @@ static const struct board_info __initcon
  #ifdef CONFIG_BCM63XX_CPU_6348
  	&board_96348r,
  	&board_96348gw,
@@ -76,7 +74,7 @@
  	&board_96348gw_10,
  	&board_96348gw_11,
  	&board_FAST2404,
-@@ -934,6 +996,8 @@ static struct of_device_id const bcm963x
+@@ -648,6 +708,8 @@ static struct of_device_id const bcm963x
  	{ .compatible = "netgear,dg834gtpn", .data = &board_96348gw_10, },
  	{ .compatible = "sagem,f at st2404", .data = &board_FAST2404, },
  	{ .compatible = "t-com,spw500v", .data = &board_spw500v, },
diff --git a/target/linux/brcm63xx/patches-4.4/507-board-MAGIC.patch b/target/linux/brcm63xx/patches-4.4/507-board-MAGIC.patch
index 198045b..9ba7d8c 100644
--- a/target/linux/brcm63xx/patches-4.4/507-board-MAGIC.patch
+++ b/target/linux/brcm63xx/patches-4.4/507-board-MAGIC.patch
@@ -1,6 +1,6 @@
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -667,6 +667,40 @@ static struct board_info __initdata boar
+@@ -436,6 +436,39 @@ static struct board_info __initdata boar
  		.num_board_fixups	= ARRAY_SIZE(spw500v_fixups),
  	},
  };
@@ -9,7 +9,6 @@
 +	.name				= "MAGIC",
 +	.expected_cpu_id		= 0x6348,
 +
-+	.has_uart0			= 1,
 +	.has_enet0			= 1,
 +	.has_enet1			= 1,
 +	.has_pci			= 1,
@@ -41,7 +40,7 @@
  #endif /* CONFIG_BCM63XX_CPU_6348 */
  
  /*
-@@ -954,6 +988,7 @@ static const struct board_info __initcon
+@@ -666,6 +699,7 @@ static const struct board_info __initcon
  	&board_rta1025w_16,
  	&board_96348_D4PW,
  	&board_spw500v,
@@ -49,7 +48,7 @@
  #endif
  
  #ifdef CONFIG_BCM63XX_CPU_6358
-@@ -998,6 +1033,7 @@ static struct of_device_id const bcm963x
+@@ -710,6 +744,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, },
diff --git a/target/linux/brcm63xx/patches-4.4/508-board_hw553.patch b/target/linux/brcm63xx/patches-4.4/508-board_hw553.patch
index 50a0dc7..3480067 100644
--- a/target/linux/brcm63xx/patches-4.4/508-board_hw553.patch
+++ b/target/linux/brcm63xx/patches-4.4/508-board_hw553.patch
@@ -1,6 +1,6 @@
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -955,6 +955,34 @@ static struct board_info __initdata boar
+@@ -666,6 +666,32 @@ static struct board_info __initdata boar
  	.has_ehci0 = 1,
  	.num_usbh_ports			= 2,
  };
@@ -9,8 +9,6 @@
 +	.name                           = "HW553",
 +	.expected_cpu_id                = 0x6358,
 +
-+	.has_uart0			= 1,
-+
 +	.has_enet1                      = 1,
 +	.has_pci                        = 1,
 +	.use_fallback_sprom		= 1,
@@ -35,7 +33,7 @@
  #endif /* CONFIG_BCM63XX_CPU_6358 */
  
  /*
-@@ -1000,6 +1028,7 @@ static const struct board_info __initcon
+@@ -711,6 +737,7 @@ static const struct board_info __initcon
  	&board_dsl_274xb_rev_c,
  	&board_nb4_ser_r0,
  	&board_nb4_fxc_r1,
@@ -43,7 +41,7 @@
  #endif
  };
  
-@@ -1043,6 +1072,7 @@ static struct of_device_id const bcm963x
+@@ -754,6 +781,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-4.4/509-board_rta1320_16m.patch b/target/linux/brcm63xx/patches-4.4/509-board_rta1320_16m.patch
index b744c31..f30dfbe 100644
--- a/target/linux/brcm63xx/patches-4.4/509-board_rta1320_16m.patch
+++ b/target/linux/brcm63xx/patches-4.4/509-board_rta1320_16m.patch
@@ -1,6 +1,6 @@
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -213,6 +213,21 @@ static struct board_info __initdata boar
+@@ -112,6 +112,20 @@ static struct board_info __initdata boar
  		.force_duplex_full	= 1,
  	},
  };
@@ -9,7 +9,6 @@
 +	.name				= "RTA1320_16M",
 +	.expected_cpu_id		= 0x6338,
 +
-+	.has_uart0			= 1,
 +	.has_enet0			= 1,
 +
 +	.enet0 = {
@@ -22,7 +21,7 @@
  #endif /* CONFIG_BCM63XX_CPU_6338 */
  
  /*
-@@ -999,6 +1014,7 @@ static const struct board_info __initcon
+@@ -708,6 +722,7 @@ static const struct board_info __initcon
  	&board_96338gw,
  	&board_96338w,
  	&board_96338w2_e7t,
@@ -30,7 +29,7 @@
  #endif
  #ifdef CONFIG_BCM63XX_CPU_6345
  	&board_96345gw2,
-@@ -1043,6 +1059,7 @@ static struct of_device_id const bcm963x
+@@ -752,6 +767,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-4.4/510-board_spw303v.patch b/target/linux/brcm63xx/patches-4.4/510-board_spw303v.patch
index 37dec2c..30ef4e0 100644
--- a/target/linux/brcm63xx/patches-4.4/510-board_spw303v.patch
+++ b/target/linux/brcm63xx/patches-4.4/510-board_spw303v.patch
@@ -1,6 +1,6 @@
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -998,6 +998,21 @@ static struct board_info __initdata boar
+@@ -706,6 +706,20 @@ static struct board_info __initdata boar
  		.pci_dev			= 1,
  	},
  };
@@ -10,7 +10,6 @@
 +	.name			= "96358-502V",
 +	.expected_cpu_id	= 0x6358,
 +
-+	.has_uart0		= 1,
 +	.has_enet0		= 1,
 +	.has_pci		= 1,
 +
@@ -22,7 +21,7 @@
  #endif /* CONFIG_BCM63XX_CPU_6358 */
  
  /*
-@@ -1045,6 +1060,7 @@ static const struct board_info __initcon
+@@ -753,6 +767,7 @@ static const struct board_info __initcon
  	&board_nb4_ser_r0,
  	&board_nb4_fxc_r1,
  	&board_HW553,
@@ -30,7 +29,7 @@
  #endif
  };
  
-@@ -1096,6 +1112,7 @@ static struct of_device_id const bcm963x
+@@ -804,6 +819,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-4.4/511-board_V2500V.patch b/target/linux/brcm63xx/patches-4.4/511-board_V2500V.patch
index 3ac6c18..46909b0 100644
--- a/target/linux/brcm63xx/patches-4.4/511-board_V2500V.patch
+++ b/target/linux/brcm63xx/patches-4.4/511-board_V2500V.patch
@@ -1,6 +1,6 @@
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -716,6 +716,27 @@ static struct board_info __initdata boar
+@@ -483,6 +483,26 @@ static struct board_info __initdata boar
  		.ext_irq		= 2,
  	},
  };
@@ -9,7 +9,6 @@
 +	.name				= "V2500V_BB",
 +        .expected_cpu_id                = 0x6348,
 +
-+        .has_uart0                      = 1,
 +        .has_enet0                      = 1,
 +        .has_enet1                      = 1,
 +        .has_pci                        = 1,
@@ -28,7 +27,7 @@
  #endif /* CONFIG_BCM63XX_CPU_6348 */
  
  /*
-@@ -1048,6 +1069,7 @@ static const struct board_info __initcon
+@@ -755,6 +775,7 @@ static const struct board_info __initcon
  	&board_96348_D4PW,
  	&board_spw500v,
  	&board_96348sv,
@@ -36,7 +35,7 @@
  #endif
  
  #ifdef CONFIG_BCM63XX_CPU_6358
-@@ -1087,6 +1109,7 @@ static struct of_device_id const bcm963x
+@@ -794,6 +815,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 +43,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, },
-@@ -1146,6 +1169,22 @@ void __init board_bcm963xx_init(void)
+@@ -853,6 +875,22 @@ void __init board_bcm963xx_init(void)
  		val &= MPI_CSBASE_BASE_MASK;
  	}
  	boot_addr = (u8 *)KSEG1ADDR(val);
@@ -76,8 +75,8 @@
 +#include <bcm63xx_board.h>
  #include <bcm63xx_cpu.h>
  #include <bcm63xx_dev_flash.h>
- #include <bcm63xx_dev_hsspi.h>
-@@ -248,6 +249,13 @@ int __init bcm63xx_flash_register(void)
+ #include <bcm63xx_regs.h>
+@@ -247,6 +248,13 @@ int __init bcm63xx_flash_register(void)
  			val = bcm_mpi_readl(MPI_CSBASE_REG(0));
  			val &= MPI_CSBASE_BASE_MASK;
  
diff --git a/target/linux/brcm63xx/patches-4.4/512-board_BTV2110.patch b/target/linux/brcm63xx/patches-4.4/512-board_BTV2110.patch
index a3e2404..f58e294 100644
--- a/target/linux/brcm63xx/patches-4.4/512-board_BTV2110.patch
+++ b/target/linux/brcm63xx/patches-4.4/512-board_BTV2110.patch
@@ -1,7 +1,7 @@
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -411,6 +411,25 @@ static struct board_info __initdata boar
- 	},
+@@ -216,6 +216,24 @@ static struct board_info __initdata boar
+ 	.has_ehci0 = 1,
  };
  
 +
@@ -10,7 +10,6 @@
 +	.name				= "V2110",
 +	.expected_cpu_id		= 0x6348,
 +
-+	.has_uart0			= 1,
 +	.has_enet1			= 1,
 +	.has_pci			= 1,
 +
@@ -26,7 +25,7 @@
  static struct board_info __initdata board_96348gw = {
  	.name				= "96348GW",
  	.expected_cpu_id		= 0x6348,
-@@ -1070,6 +1089,7 @@ static const struct board_info __initcon
+@@ -776,6 +794,7 @@ static const struct board_info __initcon
  	&board_spw500v,
  	&board_96348sv,
  	&board_V2500V_BB,
@@ -34,7 +33,7 @@
  #endif
  
  #ifdef CONFIG_BCM63XX_CPU_6358
-@@ -1109,6 +1129,7 @@ static struct of_device_id const bcm963x
+@@ -815,6 +834,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, },
diff --git a/target/linux/brcm63xx/patches-4.4/513-MIPS-BCM63XX-add-inventel-Livebox-support.patch b/target/linux/brcm63xx/patches-4.4/513-MIPS-BCM63XX-add-inventel-Livebox-support.patch
index 28462e0..769be5a 100644
--- a/target/linux/brcm63xx/patches-4.4/513-MIPS-BCM63XX-add-inventel-Livebox-support.patch
+++ b/target/linux/brcm63xx/patches-4.4/513-MIPS-BCM63XX-add-inventel-Livebox-support.patch
@@ -33,7 +33,7 @@ Subject: [PATCH] MIPS: BCM63XX: add inventel Livebox support
 +obj-$(CONFIG_BOARD_LIVEBOX)		+= board_livebox.o
 --- a/arch/mips/bcm63xx/boards/board_common.c
 +++ b/arch/mips/bcm63xx/boards/board_common.c
-@@ -56,7 +56,7 @@ void __init board_prom_init(void)
+@@ -55,7 +55,7 @@ void __init board_prom_init(void)
  	if (fw_arg3 == CFE_EPTSEAL)
  		board_bcm963xx_init();
  	else
@@ -57,7 +57,7 @@ Subject: [PATCH] MIPS: BCM63XX: add inventel Livebox support
  #endif /* __BOARD_COMMON_H */
 --- /dev/null
 +++ b/arch/mips/bcm63xx/boards/board_livebox.c
-@@ -0,0 +1,164 @@
+@@ -0,0 +1,163 @@
 +/*
 + * This file is subject to the terms and conditions of the GNU General Public
 + * License.  See the file "COPYING" in the main directory of this archive
@@ -92,7 +92,6 @@ Subject: [PATCH] MIPS: BCM63XX: add inventel Livebox support
 +	.name				= "Livebox-blue-5g",
 +	.expected_cpu_id		= 0x6348,
 +
-+	.has_uart0			= 1,
 +	.has_enet0			= 1,
 +	.has_enet1			= 1,
 +	.has_pci			= 1,
diff --git a/target/linux/brcm63xx/patches-4.4/514-board_ct536_ct5621.patch b/target/linux/brcm63xx/patches-4.4/514-board_ct536_ct5621.patch
index b3b9125..d111d97 100644
--- a/target/linux/brcm63xx/patches-4.4/514-board_ct536_ct5621.patch
+++ b/target/linux/brcm63xx/patches-4.4/514-board_ct536_ct5621.patch
@@ -1,6 +1,6 @@
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -430,6 +430,34 @@ static struct board_info __initdata boar
+@@ -234,6 +234,33 @@ static struct board_info __initdata boar
  };
  
  
@@ -8,7 +8,6 @@
 +	.name				= "CT536_CT5621",
 +	.expected_cpu_id		= 0x6348,
 +
-+	.has_uart0			= 1,
 +	.has_enet0			= 0,
 +	.has_enet1			= 1,
 +	.has_pci			= 1,
@@ -35,7 +34,7 @@
  static struct board_info __initdata board_96348gw = {
  	.name				= "96348GW",
  	.expected_cpu_id		= 0x6348,
-@@ -1090,6 +1118,7 @@ static const struct board_info __initcon
+@@ -795,6 +822,7 @@ static const struct board_info __initcon
  	&board_96348sv,
  	&board_V2500V_BB,
  	&board_V2110,
@@ -43,7 +42,7 @@
  #endif
  
  #ifdef CONFIG_BCM63XX_CPU_6358
-@@ -1131,6 +1160,8 @@ static struct of_device_id const bcm963x
+@@ -836,6 +864,8 @@ static struct of_device_id const bcm963x
  	{ .compatible = "brcm,bcm96348gw-a", .data = &board_96348gw_a, },
  	{ .compatible = "bt,v2110", .data = &board_V2110, },
  	{ .compatible = "bt,v2500v-bb", .data = &board_V2500V_BB, },
diff --git a/target/linux/brcm63xx/patches-4.4/515-board_DWV-S0_fixes.patch b/target/linux/brcm63xx/patches-4.4/515-board_DWV-S0_fixes.patch
index c2cef89..8e053b2 100644
--- a/target/linux/brcm63xx/patches-4.4/515-board_DWV-S0_fixes.patch
+++ b/target/linux/brcm63xx/patches-4.4/515-board_DWV-S0_fixes.patch
@@ -1,15 +1,6 @@
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -946,6 +946,8 @@ static struct board_info __initdata boar
- 	.name				= "DWV-S0",
- 	.expected_cpu_id		= 0x6358,
- 
-+	.has_uart0			= 1,
-+
- 	.has_enet0			= 1,
- 	.has_enet1			= 1,
- 	.has_pci			= 1,
-@@ -964,6 +966,7 @@ static struct board_info __initdata boar
+@@ -674,6 +674,7 @@ static struct board_info __initdata boar
  	},
  
  	.has_ohci0			= 1,
diff --git a/target/linux/brcm63xx/patches-4.4/516-board_96348A-122.patch b/target/linux/brcm63xx/patches-4.4/516-board_96348A-122.patch
index 5eea536..29dc262 100644
--- a/target/linux/brcm63xx/patches-4.4/516-board_96348A-122.patch
+++ b/target/linux/brcm63xx/patches-4.4/516-board_96348A-122.patch
@@ -1,6 +1,6 @@
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -458,6 +458,31 @@ static struct board_info __initdata boar
+@@ -261,6 +261,30 @@ static struct board_info __initdata boar
  	},
  };
  
@@ -8,7 +8,6 @@
 +	.name				= "96348A-122",
 +	.expected_cpu_id		= 0x6348,
 +
-+	.has_uart0			= 1,
 +	.has_enet1			= 1,
 +	.has_pci			= 1,
 +	.use_fallback_sprom		= 1,
@@ -32,7 +31,7 @@
  static struct board_info __initdata board_96348gw = {
  	.name				= "96348GW",
  	.expected_cpu_id		= 0x6348,
-@@ -1122,6 +1147,7 @@ static const struct board_info __initcon
+@@ -824,6 +848,7 @@ static const struct board_info __initcon
  	&board_V2500V_BB,
  	&board_V2110,
  	&board_ct536_ct5621,
@@ -40,7 +39,7 @@
  #endif
  
  #ifdef CONFIG_BCM63XX_CPU_6358
-@@ -1164,6 +1190,7 @@ static struct of_device_id const bcm963x
+@@ -866,6 +891,7 @@ static struct of_device_id const bcm963x
  	{ .compatible = "bt,v2110", .data = &board_V2110, },
  	{ .compatible = "bt,v2500v-bb", .data = &board_V2500V_BB, },
  	{ .compatible = "comtrend,ct-536+", .data = &board_ct536_ct5621, },
diff --git a/target/linux/brcm63xx/patches-4.4/517-RTA1205W_16_uart_fixes.patch b/target/linux/brcm63xx/patches-4.4/517-RTA1205W_16_uart_fixes.patch
deleted file mode 100644
index 9b637fc..0000000
--- a/target/linux/brcm63xx/patches-4.4/517-RTA1205W_16_uart_fixes.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
-+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -635,6 +635,7 @@ static struct board_info __initdata boar
- 	.name				= "RTA1025W_16",
- 	.expected_cpu_id		= 0x6348,
- 
-+	.has_uart0			= 1,
- 	.has_enet0			= 1,
- 	.has_enet1			= 1,
- 	.has_pci			= 1,
diff --git a/target/linux/brcm63xx/patches-4.4/519_board_CPVA502plus.patch b/target/linux/brcm63xx/patches-4.4/519_board_CPVA502plus.patch
index 5dc69e4..5af1060 100644
--- a/target/linux/brcm63xx/patches-4.4/519_board_CPVA502plus.patch
+++ b/target/linux/brcm63xx/patches-4.4/519_board_CPVA502plus.patch
@@ -1,6 +1,6 @@
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -429,6 +429,34 @@ static struct board_info __initdata boar
+@@ -233,6 +233,33 @@ static struct board_info __initdata boar
  	},
  };
  
@@ -8,7 +8,6 @@
 +	.name				= "CPVA502+",
 +	.expected_cpu_id		= 0x6348,
 +
-+	.has_uart0			= 1,
 +	.has_enet0			= 1,
 +	.has_enet1			= 1,
 +	.has_pci			= 1,
@@ -35,7 +34,7 @@
  
  static struct board_info __initdata board_ct536_ct5621 = {
  	.name				= "CT536_CT5621",
-@@ -1149,6 +1177,7 @@ static const struct board_info __initcon
+@@ -849,6 +876,7 @@ static const struct board_info __initcon
  	&board_V2110,
  	&board_ct536_ct5621,
  	&board_96348A_122,
@@ -43,7 +42,7 @@
  #endif
  
  #ifdef CONFIG_BCM63XX_CPU_6358
-@@ -1201,6 +1230,7 @@ static struct of_device_id const bcm963x
+@@ -901,6 +929,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, },
diff --git a/target/linux/brcm63xx/patches-4.4/520-bcm63xx-add-support-for-96368MVWG-board.patch b/target/linux/brcm63xx/patches-4.4/520-bcm63xx-add-support-for-96368MVWG-board.patch
index 0175104..3100284 100644
--- a/target/linux/brcm63xx/patches-4.4/520-bcm63xx-add-support-for-96368MVWG-board.patch
+++ b/target/linux/brcm63xx/patches-4.4/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
-@@ -1141,6 +1141,59 @@ static struct board_info __initdata boar
+@@ -840,6 +840,58 @@ static struct board_info __initdata boar
  #endif /* CONFIG_BCM63XX_CPU_6358 */
  
  /*
@@ -21,7 +21,6 @@ Subject: [PATCH 32/63] bcm63xx: add support for 96368MVWG board.
 +	.name				= "96368MVWG",
 +	.expected_cpu_id		= 0x6368,
 +
-+	.has_uart0			= 1,
 +	.has_pci			= 1,
 +
 +	.has_usbd			= 1,
@@ -70,7 +69,7 @@ Subject: [PATCH 32/63] bcm63xx: add support for 96368MVWG board.
   * all boards
   */
  static const struct board_info __initconst *bcm963xx_boards[] = {
-@@ -1192,6 +1245,10 @@ static const struct board_info __initcon
+@@ -891,6 +943,10 @@ static const struct board_info __initcon
  	&board_HW553,
  	&board_spw303v,
  #endif
@@ -81,7 +80,7 @@ Subject: [PATCH 32/63] bcm63xx: add support for 96368MVWG board.
  };
  
  static struct of_device_id const bcm963xx_boards_dt[] = {
-@@ -1252,6 +1309,7 @@ static struct of_device_id const bcm963x
+@@ -951,6 +1007,7 @@ static struct of_device_id const bcm963x
  	{ .compatible = "telsey,cpva642", .data = &board_CPVA642, },
  #endif
  #ifdef CONFIG_BCM63XX_CPU_6368
@@ -91,7 +90,7 @@ Subject: [PATCH 32/63] bcm63xx: add support for 96368MVWG board.
  #endif
 --- a/arch/mips/bcm63xx/boards/board_common.c
 +++ b/arch/mips/bcm63xx/boards/board_common.c
-@@ -83,12 +83,25 @@ void __init board_early_setup(const stru
+@@ -82,12 +82,25 @@ void __init board_early_setup(const stru
  		bcm63xx_pci_enabled = 1;
  		if (BCMCPU_IS_6348())
  			val |= GPIO_MODE_6348_G2_PCI;
diff --git a/target/linux/brcm63xx/patches-4.4/521-bcm63xx-add-support-for-96368MVNgr-board.patch b/target/linux/brcm63xx/patches-4.4/521-bcm63xx-add-support-for-96368MVNgr-board.patch
index 0a5cd6c..f719c24 100644
--- a/target/linux/brcm63xx/patches-4.4/521-bcm63xx-add-support-for-96368MVNgr-board.patch
+++ b/target/linux/brcm63xx/patches-4.4/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
-@@ -1191,6 +1191,46 @@ static struct board_info __initdata boar
+@@ -889,6 +889,45 @@ static struct board_info __initdata boar
  	.has_ohci0 = 1,
  	.has_ehci0 = 1,
  };
@@ -18,7 +18,6 @@ Subject: [PATCH 33/63] bcm63xx: add support for 96368MVNgr board.
 +	.name				= "96368MVNgr",
 +	.expected_cpu_id		= 0x6368,
 +
-+	.has_uart0			= 1,
 +	.has_pci			= 1,
 +	.has_enetsw			= 1,
 +
@@ -56,7 +55,7 @@ Subject: [PATCH 33/63] bcm63xx: add support for 96368MVNgr board.
  #endif /* CONFIG_BCM63XX_CPU_6368 */
  
  /*
-@@ -1248,6 +1288,7 @@ static const struct board_info __initcon
+@@ -946,6 +985,7 @@ static const struct board_info __initcon
  
  #ifdef CONFIG_BCM63XX_CPU_6368
  	&board_96368mvwg,
@@ -64,7 +63,7 @@ Subject: [PATCH 33/63] bcm63xx: add support for 96368MVNgr board.
  #endif
  };
  
-@@ -1309,6 +1350,7 @@ static struct of_device_id const bcm963x
+@@ -1007,6 +1047,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-4.4/522-MIPS-BCM63XX-add-96328avng-reference-board.patch b/target/linux/brcm63xx/patches-4.4/522-MIPS-BCM63XX-add-96328avng-reference-board.patch
index 030382b..e482b20 100644
--- a/target/linux/brcm63xx/patches-4.4/522-MIPS-BCM63XX-add-96328avng-reference-board.patch
+++ b/target/linux/brcm63xx/patches-4.4/522-MIPS-BCM63XX-add-96328avng-reference-board.patch
@@ -9,9 +9,9 @@ Subject: [PATCH] MIPS: BCM63XX: add 96328avng reference board
 
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -105,6 +105,33 @@ static struct board_info __initdata boar
- 			.active_low	= 1,
- 		},
+@@ -64,6 +64,33 @@ static struct board_info __initdata boar
+ 		.use_fullspeed		= 0,
+ 		.port_no		= 0,
  	},
 +
 +	.has_enetsw			= 1,
diff --git a/target/linux/brcm63xx/patches-4.4/523-MIPS-BCM63XX-add-963281TAN-reference-board.patch b/target/linux/brcm63xx/patches-4.4/523-MIPS-BCM63XX-add-963281TAN-reference-board.patch
index d6f732a..c0f235b 100644
--- a/target/linux/brcm63xx/patches-4.4/523-MIPS-BCM63XX-add-963281TAN-reference-board.patch
+++ b/target/linux/brcm63xx/patches-4.4/523-MIPS-BCM63XX-add-963281TAN-reference-board.patch
@@ -9,7 +9,7 @@ Subject: [PATCH] MIPS: BCM63XX: add 963281TAN reference board
 
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -133,6 +133,41 @@ static struct board_info __initdata boar
+@@ -92,6 +92,40 @@ static struct board_info __initdata boar
  		},
  	},
  };
@@ -18,7 +18,6 @@ Subject: [PATCH] MIPS: BCM63XX: add 963281TAN reference board
 +	.name				= "963281TAN",
 +	.expected_cpu_id		= 0x6328,
 +
-+	.has_uart0			= 1,
 +	.has_pci			= 1,
 +
 +	.has_enetsw			= 1,
@@ -51,7 +50,7 @@ Subject: [PATCH] MIPS: BCM63XX: add 963281TAN reference board
  #endif /* CONFIG_BCM63XX_CPU_6328 */
  
  /*
-@@ -1269,6 +1304,7 @@ static const struct board_info __initcon
+@@ -966,6 +1000,7 @@ static const struct board_info __initcon
  #endif
  #ifdef CONFIG_BCM63XX_CPU_6328
  	&board_96328avng,
@@ -59,7 +58,7 @@ Subject: [PATCH] MIPS: BCM63XX: add 963281TAN reference board
  #endif
  #ifdef CONFIG_BCM63XX_CPU_6338
  	&board_96338gw,
-@@ -1325,6 +1361,7 @@ static struct of_device_id const bcm963x
+@@ -1022,6 +1057,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-4.4/524-board_dsl_274xb_rev_f.patch b/target/linux/brcm63xx/patches-4.4/524-board_dsl_274xb_rev_f.patch
index f89f01f..e3be892 100644
--- a/target/linux/brcm63xx/patches-4.4/524-board_dsl_274xb_rev_f.patch
+++ b/target/linux/brcm63xx/patches-4.4/524-board_dsl_274xb_rev_f.patch
@@ -10,7 +10,7 @@ Subject: [PATCH 70/79] MIPS: BCM63XX: Add board definition for D-Link
 
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -168,6 +168,52 @@ static struct board_info __initdata boar
+@@ -126,6 +126,51 @@ static struct board_info __initdata boar
  		},
  	},
  };
@@ -19,7 +19,6 @@ Subject: [PATCH 70/79] MIPS: BCM63XX: Add board definition for D-Link
 +	.name				= "AW4339U",
 +	.expected_cpu_id		= 0x6328,
 +
-+	.has_uart0			= 1,
 +	.has_pci			= 1,
 +
 +	.has_caldata			= 1,
@@ -63,7 +62,7 @@ Subject: [PATCH 70/79] MIPS: BCM63XX: Add board definition for D-Link
  #endif /* CONFIG_BCM63XX_CPU_6328 */
  
  /*
-@@ -1305,6 +1351,7 @@ static const struct board_info __initcon
+@@ -1001,6 +1046,7 @@ static const struct board_info __initcon
  #ifdef CONFIG_BCM63XX_CPU_6328
  	&board_96328avng,
  	&board_963281TAN,
@@ -71,7 +70,7 @@ Subject: [PATCH 70/79] MIPS: BCM63XX: Add board definition for D-Link
  #endif
  #ifdef CONFIG_BCM63XX_CPU_6338
  	&board_96338gw,
-@@ -1363,6 +1410,7 @@ static struct of_device_id const bcm963x
+@@ -1059,6 +1105,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-4.4/525-board_96348w3.patch b/target/linux/brcm63xx/patches-4.4/525-board_96348w3.patch
index 7f9b3ca..8fd0e85 100644
--- a/target/linux/brcm63xx/patches-4.4/525-board_96348w3.patch
+++ b/target/linux/brcm63xx/patches-4.4/525-board_96348w3.patch
@@ -1,6 +1,6 @@
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -837,6 +837,25 @@ static struct board_info __initdata boar
+@@ -600,6 +600,24 @@ static struct board_info __initdata boar
  	.has_ohci0 = 1,
  };
  
@@ -9,7 +9,6 @@
 + 	.name	 			= "96348W3",
 +	.expected_cpu_id		= 0x6348,
 +
-+	.has_uart0	 		= 1,
 +	.has_enet1			= 1,
 +	.has_pci			= 1,
 +
@@ -26,7 +25,7 @@
  static struct board_info __initdata board_96348_D4PW = {
  	.name				= "D-4P-W",
  	.expected_cpu_id		= 0x6348,
-@@ -1381,6 +1400,7 @@ static const struct board_info __initcon
+@@ -1076,6 +1094,7 @@ static const struct board_info __initcon
  	&board_ct536_ct5621,
  	&board_96348A_122,
  	&board_CPVA502plus,
@@ -34,7 +33,7 @@
  #endif
  
  #ifdef CONFIG_BCM63XX_CPU_6358
-@@ -1436,6 +1456,7 @@ static struct of_device_id const bcm963x
+@@ -1131,6 +1150,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-4.4/526-board_CT6373-1.patch b/target/linux/brcm63xx/patches-4.4/526-board_CT6373-1.patch
index 52839a3..f9257d2 100644
--- a/target/linux/brcm63xx/patches-4.4/526-board_CT6373-1.patch
+++ b/target/linux/brcm63xx/patches-4.4/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
-@@ -1223,6 +1223,31 @@ static struct board_info __initdata boar
+@@ -922,6 +922,30 @@ static struct board_info __initdata boar
  	.num_usbh_ports			= 2,
  };
  
@@ -8,7 +8,6 @@
 +	.name				= "CT6373-1",
 +	.expected_cpu_id	= 0x6358,
 +
-+	.has_uart0			= 1,
 +	.has_pci			= 1,
 +	.use_fallback_sprom		= 1,
 +	.has_ohci0			= 1,
@@ -32,7 +31,7 @@
  static struct board_info __initdata board_HW553 = {
  	.name                           = "HW553",
  	.expected_cpu_id                = 0x6358,
-@@ -1412,6 +1437,7 @@ static const struct board_info __initcon
+@@ -1106,6 +1130,7 @@ static const struct board_info __initcon
  	&board_dsl_274xb_rev_c,
  	&board_nb4_ser_r0,
  	&board_nb4_fxc_r1,
@@ -40,7 +39,7 @@
  	&board_HW553,
  	&board_spw303v,
  #endif
-@@ -1470,6 +1496,7 @@ static struct of_device_id const bcm963x
+@@ -1164,6 +1189,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-4.4/527-board_dva-g3810bn-tl-1.patch b/target/linux/brcm63xx/patches-4.4/527-board_dva-g3810bn-tl-1.patch
index 7d211f9..6936fa4 100644
--- a/target/linux/brcm63xx/patches-4.4/527-board_dva-g3810bn-tl-1.patch
+++ b/target/linux/brcm63xx/patches-4.4/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
-@@ -1290,6 +1290,36 @@ static struct board_info __initdata boar
+@@ -985,6 +985,35 @@ static struct board_info __initdata boar
  		.use_internal_phy 	= 1,
  	},
  };
@@ -10,7 +10,6 @@
 +	.name			= "DVAG3810BN",
 +	.expected_cpu_id	= 0x6358,
 +
-+	.has_uart0		= 1,
 +	.has_enet0		= 1,
 +	.has_enet1		= 1,
 +	.has_pci		= 1,
@@ -37,7 +36,7 @@
  #endif /* CONFIG_BCM63XX_CPU_6358 */
  
  /*
-@@ -1440,6 +1470,7 @@ static const struct board_info __initcon
+@@ -1133,6 +1162,7 @@ static const struct board_info __initcon
  	&board_ct6373_1,
  	&board_HW553,
  	&board_spw303v,
@@ -45,7 +44,7 @@
  #endif
  
  #ifdef CONFIG_BCM63XX_CPU_6368
-@@ -1499,6 +1530,7 @@ static struct of_device_id const bcm963x
+@@ -1192,6 +1222,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-4.4/528-board_nb6.patch b/target/linux/brcm63xx/patches-4.4/528-board_nb6.patch
index 915d48d..55cc9ab 100644
--- a/target/linux/brcm63xx/patches-4.4/528-board_nb6.patch
+++ b/target/linux/brcm63xx/patches-4.4/528-board_nb6.patch
@@ -1,6 +1,6 @@
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -1322,6 +1322,34 @@ static struct board_info __initdata boar
+@@ -1016,6 +1016,32 @@ static struct board_info __initdata boar
  };
  #endif /* CONFIG_BCM63XX_CPU_6358 */
  
@@ -9,8 +9,6 @@
 +	.name				= "NB6",
 +	.expected_cpu_id		= 0x6362,
 +
-+	.has_uart0			= 1,
-+
 +	.has_ohci0			= 1,
 +	.has_ehci0			= 1,
 +	.num_usbh_ports			= 2,
@@ -35,7 +33,7 @@
  /*
   * known 6368 boards
   */
-@@ -1473,6 +1501,10 @@ static const struct board_info __initcon
+@@ -1165,6 +1191,10 @@ static const struct board_info __initcon
  	&board_DVAG3810BN,
  #endif
  
@@ -46,7 +44,7 @@
  #ifdef CONFIG_BCM63XX_CPU_6368
  	&board_96368mvwg,
  	&board_96368mvngr,
-@@ -1541,6 +1573,9 @@ static struct of_device_id const bcm963x
+@@ -1233,6 +1263,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-4.4/529-board_fast2604.patch b/target/linux/brcm63xx/patches-4.4/529-board_fast2604.patch
index 09cf1b7..2bca04a 100644
--- a/target/linux/brcm63xx/patches-4.4/529-board_fast2604.patch
+++ b/target/linux/brcm63xx/patches-4.4/529-board_fast2604.patch
@@ -1,6 +1,6 @@
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -767,6 +767,23 @@ static struct board_info __initdata boar
+@@ -533,6 +533,22 @@ static struct board_info __initdata boar
  	.has_ehci0			= 1,
  };
  
@@ -8,7 +8,6 @@
 +	.name						= "F at ST2604",
 +	.expected_cpu_id			= 0x6348,
 +
-+	.has_uart0					= 1,
 +	.has_pci					= 1,
 +	.has_ohci0					= 1,
 +
@@ -24,7 +23,7 @@
  static struct board_info __initdata board_rta1025w_16 = {
  	.name				= "RTA1025W_16",
  	.expected_cpu_id		= 0x6348,
-@@ -1472,6 +1489,7 @@ static const struct board_info __initcon
+@@ -1162,6 +1178,7 @@ static const struct board_info __initcon
  	&board_96348gw_10,
  	&board_96348gw_11,
  	&board_FAST2404,
@@ -32,7 +31,7 @@
  	&board_DV201AMR,
  	&board_96348gw_a,
  	&board_rta1025w_16,
-@@ -1547,6 +1565,7 @@ static struct of_device_id const bcm963x
+@@ -1237,6 +1254,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 at st2404", .data = &board_FAST2404, },
diff --git a/target/linux/brcm63xx/patches-4.4/530-board_A4001N1.patch b/target/linux/brcm63xx/patches-4.4/530-board_A4001N1.patch
index 8094c36..ec0695c 100644
--- a/target/linux/brcm63xx/patches-4.4/530-board_A4001N1.patch
+++ b/target/linux/brcm63xx/patches-4.4/530-board_A4001N1.patch
@@ -1,6 +1,6 @@
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -169,6 +169,50 @@ static struct board_info __initdata boar
+@@ -127,6 +127,49 @@ static struct board_info __initdata boar
  	},
  };
  
@@ -8,7 +8,6 @@
 +	.name					= "963281T_TEF",
 +	.expected_cpu_id			= 0x6328,
 +
-+	.has_uart0				= 1,
 +	.has_pci				= 1,
 +	.use_fallback_sprom		= 1,
 +	.has_ohci0				= 1,
@@ -51,7 +50,7 @@
  static struct board_info __initdata board_dsl_274xb_f1 = {
  	.name				= "AW4339U",
  	.expected_cpu_id		= 0x6328,
-@@ -1470,6 +1514,7 @@ static const struct board_info __initcon
+@@ -1159,6 +1202,7 @@ static const struct board_info __initcon
  #ifdef CONFIG_BCM63XX_CPU_6328
  	&board_96328avng,
  	&board_963281TAN,
@@ -59,7 +58,7 @@
  	&board_dsl_274xb_f1,
  #endif
  #ifdef CONFIG_BCM63XX_CPU_6338
-@@ -1535,6 +1580,7 @@ static struct of_device_id const bcm963x
+@@ -1224,6 +1268,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-4.4/531-board_AR-5387un.patch b/target/linux/brcm63xx/patches-4.4/531-board_AR-5387un.patch
index 5cac3be..d38cb3b 100644
--- a/target/linux/brcm63xx/patches-4.4/531-board_AR-5387un.patch
+++ b/target/linux/brcm63xx/patches-4.4/531-board_AR-5387un.patch
@@ -1,6 +1,6 @@
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -134,6 +134,79 @@ static struct board_info __initdata boar
+@@ -93,6 +93,78 @@ static struct board_info __initdata boar
  	},
  };
  
@@ -35,7 +35,6 @@
 +	.name					= "96328A-1441N1",
 +	.expected_cpu_id			= 0x6328,
 +
-+	.has_uart0				= 1,
 +	.has_pci				= 1,
 +	.use_fallback_sprom		= 1,
 +	.has_ohci0				= 1,
@@ -80,7 +79,7 @@
  static struct board_info __initdata board_963281TAN = {
  	.name				= "963281TAN",
  	.expected_cpu_id		= 0x6328,
-@@ -1513,6 +1586,7 @@ static const struct board_info __initcon
+@@ -1201,6 +1273,7 @@ static const struct board_info __initcon
  #endif
  #ifdef CONFIG_BCM63XX_CPU_6328
  	&board_96328avng,
@@ -88,7 +87,7 @@
  	&board_963281TAN,
  	&board_A4001N1,
  	&board_dsl_274xb_f1,
-@@ -1583,6 +1657,7 @@ static struct of_device_id const bcm963x
+@@ -1271,6 +1344,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-4.4/532-board_AR-5381u.patch b/target/linux/brcm63xx/patches-4.4/532-board_AR-5381u.patch
index ef8b220..07015ca 100644
--- a/target/linux/brcm63xx/patches-4.4/532-board_AR-5381u.patch
+++ b/target/linux/brcm63xx/patches-4.4/532-board_AR-5381u.patch
@@ -1,6 +1,6 @@
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -134,6 +134,61 @@ static struct board_info __initdata boar
+@@ -93,6 +93,60 @@ static struct board_info __initdata boar
  	},
  };
  
@@ -17,7 +17,6 @@
 +	.name					= "96328A-1241N",
 +	.expected_cpu_id			= 0x6328,
 +
-+	.has_uart0				= 1,
 +	.has_pci				= 1,
 +	.use_fallback_sprom			= 1,
 +	.has_ohci0				= 1,
@@ -62,7 +61,7 @@
  static struct sprom_fixup __initdata ar5387un_fixups[] = {
  	{ .offset = 2, .value = 0x05bb },
  	{ .offset = 65, .value = 0x1204 },
-@@ -1586,6 +1641,7 @@ static const struct board_info __initcon
+@@ -1273,6 +1327,7 @@ static const struct board_info __initcon
  #endif
  #ifdef CONFIG_BCM63XX_CPU_6328
  	&board_96328avng,
@@ -70,7 +69,7 @@
  	&board_AR5387un,
  	&board_963281TAN,
  	&board_A4001N1,
-@@ -1657,6 +1713,7 @@ static struct of_device_id const bcm963x
+@@ -1344,6 +1399,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-4.4/533-board_rta770bw.patch b/target/linux/brcm63xx/patches-4.4/533-board_rta770bw.patch
index 61f3ee2..3ac6161 100644
--- a/target/linux/brcm63xx/patches-4.4/533-board_rta770bw.patch
+++ b/target/linux/brcm63xx/patches-4.4/533-board_rta770bw.patch
@@ -1,16 +1,14 @@
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -520,6 +520,22 @@ static struct board_info __initdata boar
- 
- 	.has_uart0			= 1,
+@@ -411,6 +411,20 @@ static struct board_info __initdata boar
+ 	.name				= "96345GW2",
+ 	.expected_cpu_id		= 0x6345,
  };
 +
 +static struct board_info __initdata board_rta770bw = {
 +	.name				= "RTA770BW",
 +	.expected_cpu_id		= 0x6345,
 +
-+	.has_uart0			= 1,
-+
 +	.has_enet0			= 1,
 +
 +	.enet0 = {
@@ -23,7 +21,7 @@
  #endif /* CONFIG_BCM63XX_CPU_6345 */
  
  /*
-@@ -1655,6 +1671,7 @@ static const struct board_info __initcon
+@@ -1341,6 +1355,7 @@ static const struct board_info __initcon
  #endif
  #ifdef CONFIG_BCM63XX_CPU_6345
  	&board_96345gw2,
@@ -31,7 +29,7 @@
  #endif
  #ifdef CONFIG_BCM63XX_CPU_6348
  	&board_96348r,
-@@ -1725,6 +1742,7 @@ static struct of_device_id const bcm963x
+@@ -1411,6 +1426,7 @@ static struct of_device_id const bcm963x
  #endif
  #ifdef CONFIG_BCM63XX_CPU_6345
  	{ .compatible = "brcm,bcm96345gw2", .data = &board_96345gw2, },
diff --git a/target/linux/brcm63xx/patches-4.4/534-board_hw556.patch b/target/linux/brcm63xx/patches-4.4/534-board_hw556.patch
index e59f1aa..604ffe7 100644
--- a/target/linux/brcm63xx/patches-4.4/534-board_hw556.patch
+++ b/target/linux/brcm63xx/patches-4.4/534-board_hw556.patch
@@ -8,7 +8,7 @@
  #include <asm/addrspace.h>
  #include <bcm63xx_board.h>
  #include <bcm63xx_cpu.h>
-@@ -1481,6 +1482,95 @@ static struct board_info __initdata boar
+@@ -1171,6 +1172,92 @@ static struct board_info __initdata boar
  	},
  };
  
@@ -16,7 +16,6 @@
 +	.name					= "HW556_C",
 +	.expected_cpu_id			= 0x6358,
 +
-+	.has_uart0				= 1,
 +	.has_pci				= 1,
 +	.has_ohci0				= 1,
 +	.has_ehci0				= 1,
@@ -44,7 +43,6 @@
 +	.name					= "HW556_A",
 +	.expected_cpu_id			= 0x6358,
 +
-+	.has_uart0				= 1,
 +	.has_pci				= 1,
 +	.has_ohci0				= 1,
 +	.has_ehci0				= 1,
@@ -74,7 +72,6 @@
 +	.name					= "HW556_B",
 +	.expected_cpu_id			= 0x6358,
 +
-+	.has_uart0				= 1,
 +	.has_pci				= 1,
 +	.has_ohci0				= 1,
 +	.has_ehci0				= 1,
@@ -104,7 +101,7 @@
   /* T-Home Speedport W 303V Typ B */
  static struct board_info __initdata board_spw303v = {
  	.name			= "96358-502V",
-@@ -1707,6 +1797,9 @@ static const struct board_info __initcon
+@@ -1391,6 +1478,9 @@ static const struct board_info __initcon
  	&board_nb4_fxc_r1,
  	&board_ct6373_1,
  	&board_HW553,
@@ -114,7 +111,7 @@
  	&board_spw303v,
  	&board_DVAG3810BN,
  #endif
-@@ -1779,6 +1872,9 @@ static struct of_device_id const bcm963x
+@@ -1463,6 +1553,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-4.4/535-board_rta770w.patch b/target/linux/brcm63xx/patches-4.4/535-board_rta770w.patch
index e3b7724..7149ed7 100644
--- a/target/linux/brcm63xx/patches-4.4/535-board_rta770w.patch
+++ b/target/linux/brcm63xx/patches-4.4/535-board_rta770w.patch
@@ -1,6 +1,6 @@
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -537,6 +537,27 @@ static struct board_info __initdata boar
+@@ -426,6 +426,25 @@ static struct board_info __initdata boar
  		.force_duplex_full	= 1,
  	},
  };
@@ -14,8 +14,6 @@
 +	.name				= "RTA770W",
 +	.expected_cpu_id		= 0x6345,
 +
-+	.has_uart0			= 1,
-+
 +	.has_enet0			= 1,
 +
 +	.enet0 = {
@@ -28,7 +26,7 @@
  #endif /* CONFIG_BCM63XX_CPU_6345 */
  
  /*
-@@ -1762,6 +1783,7 @@ static const struct board_info __initcon
+@@ -1443,6 +1462,7 @@ static const struct board_info __initcon
  #ifdef CONFIG_BCM63XX_CPU_6345
  	&board_96345gw2,
  	&board_rta770bw,
@@ -36,7 +34,7 @@
  #endif
  #ifdef CONFIG_BCM63XX_CPU_6348
  	&board_96348r,
-@@ -1836,6 +1858,7 @@ static struct of_device_id const bcm963x
+@@ -1517,6 +1537,7 @@ static struct of_device_id const bcm963x
  #ifdef CONFIG_BCM63XX_CPU_6345
  	{ .compatible = "brcm,bcm96345gw2", .data = &board_96345gw2, },
  	{ .compatible = "dynalink,rta770bw", .data = &board_rta770bw, },
diff --git a/target/linux/brcm63xx/patches-4.4/536-board_fast2704.patch b/target/linux/brcm63xx/patches-4.4/536-board_fast2704.patch
index 1cdef8b..888854a 100644
--- a/target/linux/brcm63xx/patches-4.4/536-board_fast2704.patch
+++ b/target/linux/brcm63xx/patches-4.4/536-board_fast2704.patch
@@ -12,7 +12,7 @@ Signed-off-by: Marcin Jurkowski <marcin1j at gmail.com>
 ---
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -387,6 +387,44 @@ static struct board_info __initdata boar
+@@ -341,6 +341,43 @@ static struct board_info __initdata boar
  		},
  	},
  };
@@ -21,7 +21,6 @@ Signed-off-by: Marcin Jurkowski <marcin1j at gmail.com>
 +	.name				= "F at ST2704V2",
 +	.expected_cpu_id		= 0x6328,
 +
-+	.has_uart0			= 1,
 +	.has_pci			= 1,
 +	.has_ohci0			= 1,
 +	.has_ehci0			= 1,
@@ -57,7 +56,7 @@ Signed-off-by: Marcin Jurkowski <marcin1j at gmail.com>
  #endif /* CONFIG_BCM63XX_CPU_6328 */
  
  /*
-@@ -1773,6 +1811,7 @@ static const struct board_info __initcon
+@@ -1452,6 +1489,7 @@ static const struct board_info __initcon
  	&board_963281TAN,
  	&board_A4001N1,
  	&board_dsl_274xb_f1,
@@ -65,7 +64,7 @@ Signed-off-by: Marcin Jurkowski <marcin1j at gmail.com>
  #endif
  #ifdef CONFIG_BCM63XX_CPU_6338
  	&board_96338gw,
-@@ -1848,6 +1887,7 @@ static struct of_device_id const bcm963x
+@@ -1527,6 +1565,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-4.4/537-board_fast2504n.patch b/target/linux/brcm63xx/patches-4.4/537-board_fast2504n.patch
index d5ecc3c..3472d90 100644
--- a/target/linux/brcm63xx/patches-4.4/537-board_fast2504n.patch
+++ b/target/linux/brcm63xx/patches-4.4/537-board_fast2504n.patch
@@ -6,7 +6,7 @@ Signed-off-by: Max Staudt <openwrt.max at enpas.org>
 ---
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -1702,6 +1702,43 @@ static struct board_info __initdata boar
+@@ -1382,6 +1382,41 @@ static struct board_info __initdata boar
  		},
  	},
  };
@@ -15,8 +15,6 @@ Signed-off-by: Max Staudt <openwrt.max at enpas.org>
 +	.name				= "F at ST2504n",
 +	.expected_cpu_id		= 0x6362,
 +
-+	.has_uart0			= 1,
-+
 +	.has_enetsw			= 1,
 +
 +	.enetsw = {
@@ -50,7 +48,7 @@ Signed-off-by: Max Staudt <openwrt.max at enpas.org>
  #endif /* CONFIG_BCM63XX_CPU_6362 */
  
  /*
-@@ -1867,6 +1904,7 @@ static const struct board_info __initcon
+@@ -1545,6 +1580,7 @@ static const struct board_info __initcon
  
  #ifdef CONFIG_BCM63XX_CPU_6362
  	&board_nb6,
@@ -58,7 +56,7 @@ Signed-off-by: Max Staudt <openwrt.max at enpas.org>
  #endif
  
  #ifdef CONFIG_BCM63XX_CPU_6368
-@@ -1948,6 +1986,7 @@ static struct of_device_id const bcm963x
+@@ -1626,6 +1662,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-4.4/555-board_96318ref.patch b/target/linux/brcm63xx/patches-4.4/555-board_96318ref.patch
index f0949f9..c7eadf1 100644
--- a/target/linux/brcm63xx/patches-4.4/555-board_96318ref.patch
+++ b/target/linux/brcm63xx/patches-4.4/555-board_96318ref.patch
@@ -1,6 +1,6 @@
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -53,6 +53,56 @@ static struct board_info __initdata boar
+@@ -50,6 +50,55 @@ static struct board_info __initdata boar
  #endif /* CONFIG_BCM63XX_CPU_3368 */
  
  /*
@@ -11,7 +11,6 @@
 +	.name				= "96318REF",
 +	.expected_cpu_id		= 0x6318,
 +
-+	.has_uart0			= 1,
 +	.has_pci			= 1,
 +
 +	.has_usbd			= 1,
@@ -57,7 +56,7 @@
   * known 6328 boards
   */
  #ifdef CONFIG_BCM63XX_CPU_6328
-@@ -1579,6 +1629,9 @@ static const struct board_info __initcon
+@@ -1517,6 +1566,9 @@ static const struct board_info __initcon
  #ifdef CONFIG_BCM63XX_CPU_3368
  	&board_cvg834g,
  #endif
@@ -67,7 +66,7 @@
  #ifdef CONFIG_BCM63XX_CPU_6328
  	&board_96328avng,
  	&board_AR5381u,
-@@ -1656,6 +1709,9 @@ static struct of_device_id const bcm963x
+@@ -1594,6 +1646,9 @@ static struct of_device_id const bcm963x
  #ifdef CONFIG_BCM63XX_CPU_3368
  	{ .compatible = "netgear,cvg834g", .data = &board_cvg834g, },
  #endif
diff --git a/target/linux/brcm63xx/patches-4.4/556-board_96318ref_p300.patch b/target/linux/brcm63xx/patches-4.4/556-board_96318ref_p300.patch
index eda826e..162ecb7 100644
--- a/target/linux/brcm63xx/patches-4.4/556-board_96318ref_p300.patch
+++ b/target/linux/brcm63xx/patches-4.4/556-board_96318ref_p300.patch
@@ -1,6 +1,6 @@
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -100,6 +100,51 @@ static struct board_info __initdata boar
+@@ -96,6 +96,50 @@ static struct board_info __initdata boar
  		},
  	},
  };
@@ -9,7 +9,6 @@
 +	.name				= "96318REF_P300",
 +	.expected_cpu_id		= 0x6318,
 +
-+	.has_uart0			= 1,
 +	.has_pci			= 1,
 +
 +	.has_usbd			= 1,
@@ -52,7 +51,7 @@
  #endif /* CONFIG_BCM63XX_CPU_6318 */
  
  /*
-@@ -1631,6 +1676,7 @@ static const struct board_info __initcon
+@@ -1568,6 +1612,7 @@ static const struct board_info __initcon
  #endif
  #ifdef CONFIG_BCM63XX_CPU_6318
  	&board_96318ref,
@@ -60,7 +59,7 @@
  #endif
  #ifdef CONFIG_BCM63XX_CPU_6328
  	&board_96328avng,
-@@ -1711,6 +1757,7 @@ static struct of_device_id const bcm963x
+@@ -1648,6 +1693,7 @@ static struct of_device_id const bcm963x
  #endif
  #ifdef CONFIG_BCM63XX_CPU_6318
  	{ .compatible = "brcm,bcm96318ref", .data = &board_96318ref, },
diff --git a/target/linux/brcm63xx/patches-4.4/557-board_bcm963269bhr.patch b/target/linux/brcm63xx/patches-4.4/557-board_bcm963269bhr.patch
index 2d5dc60..be0e7e7 100644
--- a/target/linux/brcm63xx/patches-4.4/557-board_bcm963269bhr.patch
+++ b/target/linux/brcm63xx/patches-4.4/557-board_bcm963269bhr.patch
@@ -1,6 +1,6 @@
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -1668,6 +1668,52 @@ static struct board_info __initdata boar
+@@ -1604,6 +1604,50 @@ static struct board_info __initdata boar
  #endif /* CONFIG_BCM63XX_CPU_6368 */
  
  /*
@@ -11,8 +11,6 @@
 +	.name				= "963269BHR",
 +	.expected_cpu_id		= 0x63268,
 +
-+	.has_uart0			= 1,
-+
 +	.has_pci			= 1,
 +
 +	.has_ehci0			= 1,
@@ -53,7 +51,7 @@
   * all boards
   */
  static const struct board_info __initconst *bcm963xx_boards[] = {
-@@ -1748,6 +1794,9 @@ static const struct board_info __initcon
+@@ -1684,6 +1728,9 @@ static const struct board_info __initcon
  	&board_96368mvwg,
  	&board_96368mvngr,
  #endif
@@ -63,7 +61,7 @@
  };
  
  static struct of_device_id const bcm963xx_boards_dt[] = {
-@@ -1835,6 +1884,7 @@ static struct of_device_id const bcm963x
+@@ -1771,6 +1818,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-4.4/558-board_AR1004G.patch b/target/linux/brcm63xx/patches-4.4/558-board_AR1004G.patch
index a312b41..dc3c13e 100644
--- a/target/linux/brcm63xx/patches-4.4/558-board_AR1004G.patch
+++ b/target/linux/brcm63xx/patches-4.4/558-board_AR1004G.patch
@@ -8,7 +8,7 @@ Signed-off-by: Adrian Feliks <mexit at o2.pl>
 ---
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -679,6 +679,22 @@ static struct board_info __initdata boar
+@@ -655,6 +655,21 @@ static struct board_info __initdata boar
  	.has_ehci0 = 1,
  };
  
@@ -16,7 +16,6 @@ Signed-off-by: Adrian Feliks <mexit at o2.pl>
 +	.name				= "AR1004G",
 +	.expected_cpu_id		= 0x6348,
 +
-+	.has_uart0			= 1,
 +	.has_enet1			= 1,
 +	.has_pci			= 1,
 +	
@@ -31,7 +30,7 @@ Signed-off-by: Adrian Feliks <mexit at o2.pl>
  
  /* BT Voyager 2110 */
  static struct board_info __initdata board_V2110 = {
-@@ -1765,6 +1781,7 @@ static const struct board_info __initcon
+@@ -1699,6 +1714,7 @@ static const struct board_info __initcon
  	&board_96348A_122,
  	&board_CPVA502plus,
  	&board_96348W3,
@@ -39,7 +38,7 @@ Signed-off-by: Adrian Feliks <mexit at o2.pl>
  #endif
  
  #ifdef CONFIG_BCM63XX_CPU_6358
-@@ -1829,6 +1846,7 @@ static struct of_device_id const bcm963x
+@@ -1763,6 +1779,7 @@ static struct of_device_id const bcm963x
  	{ .compatible = "dynalink,rta770w", .data = &board_rta770w, },
  #endif
  #ifdef CONFIG_BCM63XX_CPU_6348
diff --git a/target/linux/brcm63xx/patches-4.4/559-board_vw6339gu.patch b/target/linux/brcm63xx/patches-4.4/559-board_vw6339gu.patch
index b9dd163..dff3012 100644
--- a/target/linux/brcm63xx/patches-4.4/559-board_vw6339gu.patch
+++ b/target/linux/brcm63xx/patches-4.4/559-board_vw6339gu.patch
@@ -1,6 +1,6 @@
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -1727,6 +1727,53 @@ static struct board_info __initdata boar
+@@ -1660,6 +1660,51 @@ static struct board_info __initdata boar
  		},
  	},
  };
@@ -9,8 +9,6 @@
 +	.name				= "VW6339GU",
 +	.expected_cpu_id		= 0x63268,
 +
-+	.has_uart0			= 1,
-+
 +	.has_ehci0			= 1,
 +	.has_ohci0			= 1,
 +	.num_usbh_ports			= 1,
@@ -54,7 +52,7 @@
  #endif /* CONFIG_BCM63XX_CPU_63268 */
  
  /*
-@@ -1813,6 +1860,7 @@ static const struct board_info __initcon
+@@ -1746,6 +1791,7 @@ static const struct board_info __initcon
  #endif
  #ifdef CONFIG_BCM63XX_CPU_63268
  	&board_963269bhr,
@@ -62,7 +60,7 @@
  #endif
  };
  
-@@ -1903,6 +1951,7 @@ static struct of_device_id const bcm963x
+@@ -1836,6 +1882,7 @@ static struct of_device_id const bcm963x
  #endif
  #ifdef CONFIG_BCM63XX_CPU_63268
  	{ .compatible = "brcm,bcm963269bhr", .data = &board_963269bhr, },
diff --git a/target/linux/brcm63xx/patches-4.4/560-board_963268gu_p300.patch b/target/linux/brcm63xx/patches-4.4/560-board_963268gu_p300.patch
index 7a8575e..4819fc5 100644
--- a/target/linux/brcm63xx/patches-4.4/560-board_963268gu_p300.patch
+++ b/target/linux/brcm63xx/patches-4.4/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
-@@ -1687,6 +1687,66 @@ static struct board_info __initdata boar
+@@ -1622,6 +1622,64 @@ static struct board_info __initdata boar
   * known 63268/63269 boards
   */
  #ifdef CONFIG_BCM63XX_CPU_63268
@@ -8,8 +8,6 @@
 +	.name				= "963268BU_P300",
 +	.expected_cpu_id		= 0x63268,
 +
-+	.has_uart0			= 1,
-+
 +	.has_ehci0			= 1,
 +	.has_ohci0			= 1,
 +	.num_usbh_ports			= 1,
@@ -67,7 +65,7 @@
  static struct board_info __initdata board_963269bhr = {
  	.name				= "963269BHR",
  	.expected_cpu_id		= 0x63268,
-@@ -1859,6 +1919,7 @@ static const struct board_info __initcon
+@@ -1790,6 +1848,7 @@ static const struct board_info __initcon
  	&board_96368mvngr,
  #endif
  #ifdef CONFIG_BCM63XX_CPU_63268
@@ -75,7 +73,7 @@
  	&board_963269bhr,
  	&board_vw6339gu,
  #endif
-@@ -1950,6 +2011,7 @@ static struct of_device_id const bcm963x
+@@ -1881,6 +1940,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-4.4/561-board_WAP-5813n.patch b/target/linux/brcm63xx/patches-4.4/561-board_WAP-5813n.patch
index 38c92b1..6751850 100644
--- a/target/linux/brcm63xx/patches-4.4/561-board_WAP-5813n.patch
+++ b/target/linux/brcm63xx/patches-4.4/561-board_WAP-5813n.patch
@@ -9,7 +9,7 @@
  #include <asm/addrspace.h>
  #include <bcm63xx_board.h>
  #include <bcm63xx_cpu.h>
-@@ -1681,6 +1683,48 @@ static struct board_info __initdata boar
+@@ -1616,6 +1618,47 @@ static struct board_info __initdata boar
  	.has_ohci0 = 1,
  	.has_ehci0 = 1,
  };
@@ -27,7 +27,6 @@
 +	.name				= "96369R-1231N",
 +	.expected_cpu_id		= 0x6368,
 +
-+	.has_uart0			= 1,
 +	.has_pci			= 1,
 +	.use_fallback_sprom		= 1,
 +	.has_ohci0			= 1,
@@ -58,7 +57,7 @@
  #endif /* CONFIG_BCM63XX_CPU_6368 */
  
  /*
-@@ -1917,6 +1961,7 @@ static const struct board_info __initcon
+@@ -1846,6 +1889,7 @@ static const struct board_info __initcon
  #ifdef CONFIG_BCM63XX_CPU_6368
  	&board_96368mvwg,
  	&board_96368mvngr,
@@ -66,7 +65,7 @@
  #endif
  #ifdef CONFIG_BCM63XX_CPU_63268
  	&board_963268bu_p300,
-@@ -2009,6 +2054,7 @@ static struct of_device_id const bcm963x
+@@ -1938,6 +1982,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-4.4/562-board_VR-3025u.patch b/target/linux/brcm63xx/patches-4.4/562-board_VR-3025u.patch
index 5f56c0e..29413e9 100644
--- a/target/linux/brcm63xx/patches-4.4/562-board_VR-3025u.patch
+++ b/target/linux/brcm63xx/patches-4.4/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
-@@ -1684,6 +1684,60 @@ static struct board_info __initdata boar
+@@ -1619,6 +1619,59 @@ static struct board_info __initdata boar
  	.has_ehci0 = 1,
  };
  
@@ -17,7 +17,6 @@
 +	.name					= "96368M-1541N",
 +	.expected_cpu_id		= 0x6368,
 +
-+	.has_uart0				= 1,
 +	.has_pci				= 1,
 +	.use_fallback_sprom			= 1,
 +	.has_ohci0				= 1,
@@ -61,7 +60,7 @@
  static struct sprom_fixup __initdata wap5813n_fixups[] = {
  	{ .offset = 97, .value = 0xfeed },
  	{ .offset = 98, .value = 0x15d1 },
-@@ -1961,6 +2015,7 @@ static const struct board_info __initcon
+@@ -1889,6 +1942,7 @@ static const struct board_info __initcon
  #ifdef CONFIG_BCM63XX_CPU_6368
  	&board_96368mvwg,
  	&board_96368mvngr,
@@ -69,7 +68,7 @@
  	&board_WAP5813n,
  #endif
  #ifdef CONFIG_BCM63XX_CPU_63268
-@@ -2054,6 +2109,7 @@ static struct of_device_id const bcm963x
+@@ -1982,6 +2036,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-4.4/563-board_VR-3025un.patch b/target/linux/brcm63xx/patches-4.4/563-board_VR-3025un.patch
index c2c17fd..81ac702 100644
--- a/target/linux/brcm63xx/patches-4.4/563-board_VR-3025un.patch
+++ b/target/linux/brcm63xx/patches-4.4/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
-@@ -1738,6 +1738,60 @@ static struct board_info __initdata boar
+@@ -1672,6 +1672,59 @@ static struct board_info __initdata boar
  	},
  };
  
@@ -17,7 +17,6 @@
 +	.name					= "96368M-1341N",
 +	.expected_cpu_id		= 0x6368,
 +
-+	.has_uart0				= 1,
 +	.has_pci				= 1,
 +	.use_fallback_sprom			= 1,
 +	.has_ohci0				= 1,
@@ -61,7 +60,7 @@
  static struct sprom_fixup __initdata wap5813n_fixups[] = {
  	{ .offset = 97, .value = 0xfeed },
  	{ .offset = 98, .value = 0x15d1 },
-@@ -2016,6 +2070,7 @@ static const struct board_info __initcon
+@@ -1943,6 +1996,7 @@ static const struct board_info __initcon
  	&board_96368mvwg,
  	&board_96368mvngr,
  	&board_VR3025u,
@@ -69,7 +68,7 @@
  	&board_WAP5813n,
  #endif
  #ifdef CONFIG_BCM63XX_CPU_63268
-@@ -2110,6 +2165,7 @@ static struct of_device_id const bcm963x
+@@ -2037,6 +2091,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-4.4/564-board_P870HW-51a_v2.patch b/target/linux/brcm63xx/patches-4.4/564-board_P870HW-51a_v2.patch
index 2fd368a..cdab8de 100644
--- a/target/linux/brcm63xx/patches-4.4/564-board_P870HW-51a_v2.patch
+++ b/target/linux/brcm63xx/patches-4.4/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
-@@ -1693,6 +1693,49 @@ static struct sprom_fixup __initdata vr3
+@@ -1628,6 +1628,48 @@ static struct sprom_fixup __initdata vr3
  	{ .offset = 115, .value = 0xfad9 },
  };
  
@@ -8,7 +8,6 @@
 +	.name				= "P870HW-51a_v2",
 +	.expected_cpu_id		= 0x6368,
 +
-+	.has_uart0			= 1,
 +	.has_pci			= 1,
 +	.use_fallback_sprom		= 1,
 +	.has_ohci0			= 1,
@@ -50,7 +49,7 @@
  static struct board_info __initdata board_VR3025u = {
  	.name					= "96368M-1541N",
  	.expected_cpu_id		= 0x6368,
-@@ -2069,6 +2112,7 @@ static const struct board_info __initcon
+@@ -1995,6 +2037,7 @@ static const struct board_info __initcon
  #ifdef CONFIG_BCM63XX_CPU_6368
  	&board_96368mvwg,
  	&board_96368mvngr,
@@ -58,7 +57,7 @@
  	&board_VR3025u,
  	&board_VR3025un,
  	&board_WAP5813n,
-@@ -2167,6 +2211,7 @@ static struct of_device_id const bcm963x
+@@ -2093,6 +2136,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-4.4/565-board_hw520.patch b/target/linux/brcm63xx/patches-4.4/565-board_hw520.patch
index 070e3ec..75b7ef9 100644
--- a/target/linux/brcm63xx/patches-4.4/565-board_hw520.patch
+++ b/target/linux/brcm63xx/patches-4.4/565-board_hw520.patch
@@ -1,6 +1,6 @@
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -1364,6 +1364,37 @@ static struct board_info __initdata boar
+@@ -1312,6 +1312,36 @@ static struct board_info __initdata boar
  	},
  };
  
@@ -8,7 +8,6 @@
 +	.name				= "HW6358GW_B",
 +	.expected_cpu_id		= 0x6358,
 +
-+	.has_uart0			= 1,
 +	.has_pci			= 1,
 +	.use_fallback_sprom		= 1,
 +	.has_ohci0			= 1,
@@ -38,7 +37,7 @@
  static struct board_info __initdata board_HW553 = {
  	.name                           = "HW553",
  	.expected_cpu_id                = 0x6358,
-@@ -2096,6 +2127,7 @@ static const struct board_info __initcon
+@@ -2021,6 +2051,7 @@ static const struct board_info __initcon
  	&board_nb4_ser_r0,
  	&board_nb4_fxc_r1,
  	&board_ct6373_1,
@@ -46,7 +45,7 @@
  	&board_HW553,
  	&board_HW556_A,
  	&board_HW556_B,
-@@ -2188,6 +2220,7 @@ static struct of_device_id const bcm963x
+@@ -2113,6 +2144,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-4.4/566-board_A4001N.patch b/target/linux/brcm63xx/patches-4.4/566-board_A4001N.patch
index dfddf19..2e194a5 100644
--- a/target/linux/brcm63xx/patches-4.4/566-board_A4001N.patch
+++ b/target/linux/brcm63xx/patches-4.4/566-board_A4001N.patch
@@ -1,6 +1,6 @@
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -358,6 +358,50 @@ static struct board_info __initdata boar
+@@ -349,6 +349,49 @@ static struct board_info __initdata boar
  	},
  };
  
@@ -8,7 +8,6 @@
 +	.name				= "96328dg2x2",
 +	.expected_cpu_id		= 0x6328,
 +
-+	.has_uart0			= 1,
 +	.has_pci			= 1,
 +	.use_fallback_sprom		= 1,
 +	.has_ohci0			= 1,
@@ -51,7 +50,7 @@
  static struct board_info __initdata board_A4001N1 = {
  	.name					= "963281T_TEF",
  	.expected_cpu_id			= 0x6328,
-@@ -2078,6 +2122,7 @@ static const struct board_info __initcon
+@@ -2002,6 +2045,7 @@ static const struct board_info __initcon
  	&board_AR5381u,
  	&board_AR5387un,
  	&board_963281TAN,
@@ -59,7 +58,7 @@
  	&board_A4001N1,
  	&board_dsl_274xb_f1,
  	&board_FAST2704V2,
-@@ -2166,6 +2211,7 @@ static struct of_device_id const bcm963x
+@@ -2090,6 +2134,7 @@ static struct of_device_id const bcm963x
  	{ .compatible = "brcm,bcm96318ref_p300", .data = &board_96318ref_p300, },
  #endif
  #ifdef CONFIG_BCM63XX_CPU_6328
diff --git a/target/linux/brcm63xx/patches-4.4/567-board_dsl-2751b_e1.patch b/target/linux/brcm63xx/patches-4.4/567-board_dsl-2751b_e1.patch
index 24c15fd..9852f34 100644
--- a/target/linux/brcm63xx/patches-4.4/567-board_dsl-2751b_e1.patch
+++ b/target/linux/brcm63xx/patches-4.4/567-board_dsl-2751b_e1.patch
@@ -1,6 +1,6 @@
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -147,6 +147,75 @@ static struct board_info __initdata boar
+@@ -142,6 +142,74 @@ static struct board_info __initdata boar
  		},
  	},
  };
@@ -30,7 +30,6 @@
 +	.name				= "AW5200B",
 +	.expected_cpu_id		= 0x6318,
 +
-+	.has_uart0			= 1,
 +	.has_pci			= 1,
 +	.use_fallback_sprom		= 1,
 +
@@ -76,7 +75,7 @@
  #endif /* CONFIG_BCM63XX_CPU_6318 */
  
  /*
-@@ -2116,6 +2185,7 @@ static const struct board_info __initcon
+@@ -2039,6 +2107,7 @@ static const struct board_info __initcon
  #ifdef CONFIG_BCM63XX_CPU_6318
  	&board_96318ref,
  	&board_96318ref_p300,
@@ -84,7 +83,7 @@
  #endif
  #ifdef CONFIG_BCM63XX_CPU_6328
  	&board_96328avng,
-@@ -2209,6 +2279,7 @@ static struct of_device_id const bcm963x
+@@ -2132,6 +2201,7 @@ static struct of_device_id const bcm963x
  #ifdef CONFIG_BCM63XX_CPU_6318
  	{ .compatible = "brcm,bcm96318ref", .data = &board_96318ref, },
  	{ .compatible = "brcm,bcm96318ref_p300", .data = &board_96318ref_p300, },
diff --git a/target/linux/brcm63xx/patches-4.4/568-board_DGND3700v1_3800B.patch b/target/linux/brcm63xx/patches-4.4/568-board_DGND3700v1_3800B.patch
index a07ebdb..cc31a81 100644
--- a/target/linux/brcm63xx/patches-4.4/568-board_DGND3700v1_3800B.patch
+++ b/target/linux/brcm63xx/patches-4.4/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
-@@ -1828,6 +1828,31 @@ static struct board_info __initdata boar
+@@ -1760,6 +1760,30 @@ static struct board_info __initdata boar
  	.has_ehci0 = 1,
  };
  
@@ -8,7 +8,6 @@
 +	.name				= "DGND3700v1_3800B",
 +	.expected_cpu_id		= 0x6368,
 +
-+	.has_uart0			= 1,
 +	.has_pci			= 1,
 +	.has_ohci0			= 1,
 +	.has_ehci0			= 1,
@@ -32,7 +31,7 @@
  static struct sprom_fixup __initdata vr3025u_fixups[] = {
  	{ .offset = 97, .value = 0xfeb3 },
  	{ .offset = 98, .value = 0x1618 },
-@@ -2259,6 +2284,7 @@ static const struct board_info __initcon
+@@ -2181,6 +2205,7 @@ static const struct board_info __initcon
  #ifdef CONFIG_BCM63XX_CPU_6368
  	&board_96368mvwg,
  	&board_96368mvngr,
@@ -40,7 +39,7 @@
  	&board_P870HW51A_V2,
  	&board_VR3025u,
  	&board_VR3025un,
-@@ -2361,6 +2387,7 @@ static struct of_device_id const bcm963x
+@@ -2283,6 +2308,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-4.4/569-board_homehub2a.patch b/target/linux/brcm63xx/patches-4.4/569-board_homehub2a.patch
index e094882..8dca586 100644
--- a/target/linux/brcm63xx/patches-4.4/569-board_homehub2a.patch
+++ b/target/linux/brcm63xx/patches-4.4/569-board_homehub2a.patch
@@ -1,6 +1,6 @@
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -1477,6 +1477,32 @@ static struct board_info __initdata boar
+@@ -1423,6 +1423,31 @@ static struct board_info __initdata boar
  	},
  };
  
@@ -8,7 +8,6 @@
 +	.name				= "HOMEHUB2A",
 +	.expected_cpu_id		= 0x6358,
 +
-+	.has_uart0			= 1,
 +	.has_pci			= 1,
 +	.use_fallback_sprom		= 1,
 +	.has_ohci0			= 1,
@@ -33,7 +32,7 @@
  static struct board_info __initdata board_HW520 = {
  	.name				= "HW6358GW_B",
  	.expected_cpu_id		= 0x6358,
-@@ -2267,6 +2293,7 @@ static const struct board_info __initcon
+@@ -2188,6 +2213,7 @@ static const struct board_info __initcon
  	&board_nb4_ser_r0,
  	&board_nb4_fxc_r1,
  	&board_ct6373_1,
@@ -41,7 +40,7 @@
  	&board_HW520,
  	&board_HW553,
  	&board_HW556_A,
-@@ -2376,6 +2403,7 @@ static struct of_device_id const bcm963x
+@@ -2297,6 +2323,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/patches-4.4/570-board_HG655b.patch b/target/linux/brcm63xx/patches-4.4/570-board_HG655b.patch
index 2a13400..8fa9112 100644
--- a/target/linux/brcm63xx/patches-4.4/570-board_HG655b.patch
+++ b/target/linux/brcm63xx/patches-4.4/570-board_HG655b.patch
@@ -1,6 +1,6 @@
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -1879,6 +1879,53 @@ static struct board_info __initdata boar
+@@ -1809,6 +1809,52 @@ static struct board_info __initdata boar
  	},
  };
  
@@ -8,7 +8,6 @@
 +	.name				= "HW65x",
 +	.expected_cpu_id		= 0x6368,
 +
-+	.has_uart0			= 1,
 +	.has_pci			= 1,
 +	.has_ohci0			= 1,
 +	.has_ehci0			= 1,
@@ -54,7 +53,7 @@
  static struct sprom_fixup __initdata vr3025u_fixups[] = {
  	{ .offset = 97, .value = 0xfeb3 },
  	{ .offset = 98, .value = 0x1618 },
-@@ -2312,6 +2359,7 @@ static const struct board_info __initcon
+@@ -2232,6 +2278,7 @@ static const struct board_info __initcon
  	&board_96368mvwg,
  	&board_96368mvngr,
  	&board_DGND3700v1_3800B,
@@ -62,7 +61,7 @@
  	&board_P870HW51A_V2,
  	&board_VR3025u,
  	&board_VR3025un,
-@@ -2415,6 +2463,7 @@ static struct of_device_id const bcm963x
+@@ -2335,6 +2382,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-4.4/571-board_fast2704n.patch b/target/linux/brcm63xx/patches-4.4/571-board_fast2704n.patch
index c62f2ac..bdae1a7 100644
--- a/target/linux/brcm63xx/patches-4.4/571-board_fast2704n.patch
+++ b/target/linux/brcm63xx/patches-4.4/571-board_fast2704n.patch
@@ -1,6 +1,6 @@
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -216,6 +216,46 @@ static struct board_info __initdata boar
+@@ -210,6 +210,45 @@ static struct board_info __initdata boar
  		.num_board_fixups		= ARRAY_SIZE(dsl2751b_e1_fixups),
  	},
  };
@@ -9,7 +9,6 @@
 +	.name				= "F at ST2704N",
 +	.expected_cpu_id		= 0x6318,
 +
-+	.has_uart0			= 1,
 +	.has_pci			= 1,
 +	.use_fallback_sprom		= 1,
 +
@@ -47,7 +46,7 @@
  #endif /* CONFIG_BCM63XX_CPU_6318 */
  
  /*
-@@ -2284,6 +2324,7 @@ static const struct board_info __initcon
+@@ -2203,6 +2242,7 @@ static const struct board_info __initcon
  	&board_96318ref,
  	&board_96318ref_p300,
  	&board_dsl_2751b_d1,
@@ -55,7 +54,7 @@
  #endif
  #ifdef CONFIG_BCM63XX_CPU_6328
  	&board_96328avng,
-@@ -2381,6 +2422,7 @@ static struct of_device_id const bcm963x
+@@ -2300,6 +2340,7 @@ static struct of_device_id const bcm963x
  	{ .compatible = "brcm,bcm96318ref", .data = &board_96318ref, },
  	{ .compatible = "brcm,bcm96318ref_p300", .data = &board_96318ref_p300, },
  	{ .compatible = "d-link,dsl-275xb-d", .data = &board_dsl_2751b_d1, },
diff --git a/target/linux/brcm63xx/patches-4.4/572-board_VR-3026e.patch b/target/linux/brcm63xx/patches-4.4/572-board_VR-3026e.patch
index 5a7d200..260424b 100644
--- a/target/linux/brcm63xx/patches-4.4/572-board_VR-3026e.patch
+++ b/target/linux/brcm63xx/patches-4.4/572-board_VR-3026e.patch
@@ -1,6 +1,6 @@
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -2117,6 +2117,60 @@ static struct board_info __initdata boar
+@@ -2042,6 +2042,59 @@ static struct board_info __initdata boar
  	},
  };
  
@@ -17,7 +17,6 @@
 +	.name					= "96368MT-1341N1",
 +	.expected_cpu_id		= 0x6368,
 +
-+	.has_uart0				= 1,
 +	.has_pci				= 1,
 +	.use_fallback_sprom			= 1,
 +	.has_ohci0				= 1,
@@ -61,7 +60,7 @@
  static struct sprom_fixup __initdata wap5813n_fixups[] = {
  	{ .offset = 97, .value = 0xfeed },
  	{ .offset = 98, .value = 0x15d1 },
-@@ -2404,6 +2458,7 @@ static const struct board_info __initcon
+@@ -2322,6 +2375,7 @@ static const struct board_info __initcon
  	&board_P870HW51A_V2,
  	&board_VR3025u,
  	&board_VR3025un,
@@ -69,7 +68,7 @@
  	&board_WAP5813n,
  #endif
  #ifdef CONFIG_BCM63XX_CPU_63268
-@@ -2504,6 +2559,7 @@ static struct of_device_id const bcm963x
+@@ -2422,6 +2476,7 @@ static struct of_device_id const bcm963x
  	{ .compatible = "brcm,bcm96368mvwg", .data = &board_96368mvwg, },
  	{ .compatible = "comtrend,vr-3025u", .data = &board_VR3025u, },
  	{ .compatible = "comtrend,vr-3025un", .data = &board_VR3025un, },
diff --git a/target/linux/brcm63xx/patches-4.4/573-board_R5010UNv2.patch b/target/linux/brcm63xx/patches-4.4/573-board_R5010UNv2.patch
index cda9c41..2764846 100644
--- a/target/linux/brcm63xx/patches-4.4/573-board_R5010UNv2.patch
+++ b/target/linux/brcm63xx/patches-4.4/573-board_R5010UNv2.patch
@@ -1,6 +1,6 @@
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -638,6 +638,51 @@ static struct board_info __initdata boar
+@@ -623,6 +623,50 @@ static struct board_info __initdata boar
  		},
  	},
  };
@@ -9,7 +9,6 @@
 +	.name					= "96328ang",
 +	.expected_cpu_id			= 0x6328,
 +
-+	.has_uart0				= 1,
 +	.has_pci				= 1,
 +	.use_fallback_sprom			= 1,
 +	.has_ohci0				= 1,
@@ -52,7 +51,7 @@
  #endif /* CONFIG_BCM63XX_CPU_6328 */
  
  /*
-@@ -2389,6 +2434,7 @@ static const struct board_info __initcon
+@@ -2306,6 +2350,7 @@ static const struct board_info __initcon
  	&board_A4001N1,
  	&board_dsl_274xb_f1,
  	&board_FAST2704V2,
@@ -60,7 +59,7 @@
  #endif
  #ifdef CONFIG_BCM63XX_CPU_6338
  	&board_96338gw,
-@@ -2487,6 +2533,7 @@ static struct of_device_id const bcm963x
+@@ -2404,6 +2449,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-4.4/574-board_HG622.patch b/target/linux/brcm63xx/patches-4.4/574-board_HG622.patch
index 3ec2d13..860c0e7 100644
--- a/target/linux/brcm63xx/patches-4.4/574-board_HG622.patch
+++ b/target/linux/brcm63xx/patches-4.4/574-board_HG622.patch
@@ -1,6 +1,6 @@
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -2011,6 +2011,53 @@ static struct board_info __initdata boar
+@@ -1938,6 +1938,52 @@ static struct board_info __initdata boar
  	},
  };
  
@@ -8,7 +8,6 @@
 +	.name				= "96368MVWG_hg622",
 +	.expected_cpu_id		= 0x6368,
 +
-+	.has_uart0			= 1,
 +	.has_pci			= 1,
 +	.has_ohci0			= 1,
 +	.has_ehci0			= 1,
@@ -54,7 +53,7 @@
  static struct sprom_fixup __initdata vr3025u_fixups[] = {
  	{ .offset = 97, .value = 0xfeb3 },
  	{ .offset = 98, .value = 0x1618 },
-@@ -2500,6 +2547,7 @@ static const struct board_info __initcon
+@@ -2416,6 +2462,7 @@ static const struct board_info __initcon
  	&board_96368mvwg,
  	&board_96368mvngr,
  	&board_DGND3700v1_3800B,
@@ -62,7 +61,7 @@
  	&board_HG655b,
  	&board_P870HW51A_V2,
  	&board_VR3025u,
-@@ -2608,6 +2656,7 @@ static struct of_device_id const bcm963x
+@@ -2524,6 +2571,7 @@ static struct of_device_id const bcm963x
  	{ .compatible = "comtrend,vr-3025un", .data = &board_VR3025un, },
  	{ .compatible = "comtrend,vr-3026e", .data = &board_VR3026e, },
  	{ .compatible = "comtrend,wap-5813n", .data = &board_WAP5813n, },
diff --git a/target/linux/brcm63xx/patches-4.4/575-board_EVG2000.patch b/target/linux/brcm63xx/patches-4.4/575-board_EVG2000.patch
index cbec949..4c9d19a 100644
--- a/target/linux/brcm63xx/patches-4.4/575-board_EVG2000.patch
+++ b/target/linux/brcm63xx/patches-4.4/575-board_EVG2000.patch
@@ -1,6 +1,6 @@
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -1964,6 +1964,43 @@ static struct board_info __initdata boar
+@@ -1892,6 +1892,42 @@ static struct board_info __initdata boar
  	},
  };
  
@@ -12,7 +12,6 @@
 +	.name				= "96369PVG",
 +	.expected_cpu_id		= 0x6368,
 +
-+	.has_uart0			= 1,
 +	.has_pci			= 1,
 +	.has_ohci0			= 1,
 +	.has_ehci0			= 1,
@@ -44,7 +43,7 @@
  static struct board_info __initdata board_HG655b = {
  	.name				= "HW65x",
  	.expected_cpu_id		= 0x6368,
-@@ -2547,6 +2584,7 @@ static const struct board_info __initcon
+@@ -2462,6 +2498,7 @@ static const struct board_info __initcon
  	&board_96368mvwg,
  	&board_96368mvngr,
  	&board_DGND3700v1_3800B,
@@ -52,7 +51,7 @@
  	&board_HG622,
  	&board_HG655b,
  	&board_P870HW51A_V2,
-@@ -2659,6 +2697,7 @@ static struct of_device_id const bcm963x
+@@ -2574,6 +2611,7 @@ static struct of_device_id const bcm963x
  	{ .compatible = "huawei,hg622", .data = &board_HG622, },
  	{ .compatible = "huawei,hg655b", .data = &board_HG655b, },
  	{ .compatible = "netgear,dgnd3700v1", .data = &board_DGND3700v1_3800B, },
diff --git a/target/linux/brcm63xx/patches-4.4/576-board_AV4202N.patch b/target/linux/brcm63xx/patches-4.4/576-board_AV4202N.patch
index f3d08eb..927ce27 100644
--- a/target/linux/brcm63xx/patches-4.4/576-board_AV4202N.patch
+++ b/target/linux/brcm63xx/patches-4.4/576-board_AV4202N.patch
@@ -1,6 +1,6 @@
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -1851,6 +1851,52 @@ static struct board_info __initdata boar
+@@ -1782,6 +1782,51 @@ static struct board_info __initdata boar
   * known 6368 boards
   */
  #ifdef CONFIG_BCM63XX_CPU_6368
@@ -8,7 +8,6 @@
 +	.name				= "96368_Swiss_S1",
 +	.expected_cpu_id		= 0x6368,
 +
-+	.has_uart0			= 1,
 +	.has_pci			= 1,
 +	.has_ohci0			= 1,
 +	.has_ehci0			= 1,
@@ -53,7 +52,7 @@
  static struct board_info __initdata board_96368mvwg = {
  	.name				= "96368MVWG",
  	.expected_cpu_id		= 0x6368,
-@@ -2581,6 +2627,7 @@ static const struct board_info __initcon
+@@ -2495,6 +2540,7 @@ static const struct board_info __initcon
  #endif
  
  #ifdef CONFIG_BCM63XX_CPU_6368
@@ -61,7 +60,7 @@
  	&board_96368mvwg,
  	&board_96368mvngr,
  	&board_DGND3700v1_3800B,
-@@ -2688,6 +2735,7 @@ static struct of_device_id const bcm963x
+@@ -2602,6 +2648,7 @@ static struct of_device_id const bcm963x
  	{ .compatible = "sfr,nb6-ser-r0", .data = &board_nb6, },
  #endif
  #ifdef CONFIG_BCM63XX_CPU_6368
diff --git a/target/linux/brcm63xx/patches-4.4/577-board_VH4032N.patch b/target/linux/brcm63xx/patches-4.4/577-board_VH4032N.patch
index 74f1b50..e9bf9a7 100644
--- a/target/linux/brcm63xx/patches-4.4/577-board_VH4032N.patch
+++ b/target/linux/brcm63xx/patches-4.4/577-board_VH4032N.patch
@@ -1,6 +1,6 @@
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -2346,6 +2346,45 @@ static struct board_info __initdata boar
+@@ -2266,6 +2266,44 @@ static struct board_info __initdata boar
  	},
  };
  
@@ -8,7 +8,6 @@
 +	.name				= "VH4032N",
 +	.expected_cpu_id		= 0x6368,
 +
-+	.has_uart0			= 1,
 +	.has_pci			= 1,
 +	.has_ohci0			= 1,
 +	.has_ehci0			= 1,
@@ -46,7 +45,7 @@
  static struct sprom_fixup __initdata wap5813n_fixups[] = {
  	{ .offset = 97, .value = 0xfeed },
  	{ .offset = 98, .value = 0x15d1 },
-@@ -2635,6 +2674,7 @@ static const struct board_info __initcon
+@@ -2548,6 +2586,7 @@ static const struct board_info __initcon
  	&board_HG622,
  	&board_HG655b,
  	&board_P870HW51A_V2,
@@ -54,7 +53,7 @@
  	&board_VR3025u,
  	&board_VR3025un,
  	&board_VR3026e,
-@@ -2746,6 +2786,7 @@ static struct of_device_id const bcm963x
+@@ -2659,6 +2698,7 @@ static struct of_device_id const bcm963x
  	{ .compatible = "huawei,hg655b", .data = &board_HG655b, },
  	{ .compatible = "netgear,dgnd3700v1", .data = &board_DGND3700v1_3800B, },
  	{ .compatible = "netgear,evg2000", .data = &board_EVG2000, },
diff --git a/target/linux/brcm63xx/patches-4.4/578-board_R1000H.patch b/target/linux/brcm63xx/patches-4.4/578-board_R1000H.patch
index d1a1b03..4b4b1a0 100644
--- a/target/linux/brcm63xx/patches-4.4/578-board_R1000H.patch
+++ b/target/linux/brcm63xx/patches-4.4/578-board_R1000H.patch
@@ -1,6 +1,6 @@
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -2193,6 +2193,31 @@ static struct board_info __initdata boar
+@@ -2116,6 +2116,29 @@ static struct board_info __initdata boar
  	},
  };
  
@@ -8,8 +8,6 @@
 +	.name				= "R1000H",
 +	.expected_cpu_id		= 0x6368,
 +
-+	.has_uart0			= 1,
-+	.has_uart1			= 1,
 +	.has_pci			= 1,
 +	.has_ohci0			= 1,
 +	.has_ehci0			= 1,
@@ -32,7 +30,7 @@
  static struct board_info __initdata board_VR3025u = {
  	.name					= "96368M-1541N",
  	.expected_cpu_id		= 0x6368,
-@@ -2674,6 +2699,7 @@ static const struct board_info __initcon
+@@ -2586,6 +2609,7 @@ static const struct board_info __initcon
  	&board_HG622,
  	&board_HG655b,
  	&board_P870HW51A_V2,
@@ -40,7 +38,7 @@
  	&board_VH4032N,
  	&board_VR3025u,
  	&board_VR3025un,
-@@ -2775,6 +2801,7 @@ static struct of_device_id const bcm963x
+@@ -2687,6 +2711,7 @@ static struct of_device_id const bcm963x
  	{ .compatible = "sfr,nb6-ser-r0", .data = &board_nb6, },
  #endif
  #ifdef CONFIG_BCM63XX_CPU_6368
diff --git a/target/linux/brcm63xx/patches-4.4/579-board_AR-5315u.patch b/target/linux/brcm63xx/patches-4.4/579-board_AR-5315u.patch
index 6f7f26c..1974ccd 100644
--- a/target/linux/brcm63xx/patches-4.4/579-board_AR-5315u.patch
+++ b/target/linux/brcm63xx/patches-4.4/579-board_AR-5315u.patch
@@ -1,6 +1,6 @@
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -148,6 +148,68 @@ static struct board_info __initdata boar
+@@ -143,6 +143,67 @@ static struct board_info __initdata boar
  	},
  };
  
@@ -22,7 +22,6 @@
 +	.name				= "96318A-1441N1",
 +	.expected_cpu_id		= 0x6318,
 +
-+	.has_uart0			= 1,
 +	.has_pci			= 1,
 +	.use_fallback_sprom		= 1,
 +
@@ -69,7 +68,7 @@
  static struct sprom_fixup __initdata dsl2751b_e1_fixups[] = {
  	{ .offset = 96, .value = 0x2046 },
  	{ .offset = 97, .value = 0xfe9d },
-@@ -2616,6 +2678,7 @@ static const struct board_info __initcon
+@@ -2526,6 +2587,7 @@ static const struct board_info __initcon
  #ifdef CONFIG_BCM63XX_CPU_6318
  	&board_96318ref,
  	&board_96318ref_p300,
@@ -77,7 +76,7 @@
  	&board_dsl_2751b_d1,
  	&board_FAST2704N,
  #endif
-@@ -2721,6 +2784,7 @@ static struct of_device_id const bcm963x
+@@ -2631,6 +2693,7 @@ static struct of_device_id const bcm963x
  #ifdef CONFIG_BCM63XX_CPU_6318
  	{ .compatible = "brcm,bcm96318ref", .data = &board_96318ref, },
  	{ .compatible = "brcm,bcm96318ref_p300", .data = &board_96318ref_p300, },
diff --git a/target/linux/brcm63xx/patches-4.4/580-board_AD1018.patch b/target/linux/brcm63xx/patches-4.4/580-board_AD1018.patch
index c08e00d..7b28a24 100644
--- a/target/linux/brcm63xx/patches-4.4/580-board_AD1018.patch
+++ b/target/linux/brcm63xx/patches-4.4/580-board_AD1018.patch
@@ -1,6 +1,6 @@
 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -366,6 +366,74 @@ static struct board_info __initdata boar
+@@ -357,6 +357,73 @@ static struct board_info __initdata boar
  	},
  };
  
@@ -28,7 +28,6 @@
 +	.name					= "96328avngr",
 +	.expected_cpu_id			= 0x6328,
 +
-+	.has_uart0				= 1,
 +	.has_pci				= 1,
 +	.use_fallback_sprom			= 1,
 +
@@ -75,7 +74,7 @@
  static struct sprom_fixup __initdata ar5381u_fixups[] = {
  	{ .offset = 97, .value = 0xfee5 },
  	{ .offset = 98, .value = 0x157c },
-@@ -2684,6 +2752,7 @@ static const struct board_info __initcon
+@@ -2593,6 +2660,7 @@ static const struct board_info __initcon
  #endif
  #ifdef CONFIG_BCM63XX_CPU_6328
  	&board_96328avng,
@@ -83,7 +82,7 @@
  	&board_AR5381u,
  	&board_AR5387un,
  	&board_963281TAN,
-@@ -2798,6 +2867,7 @@ static struct of_device_id const bcm963x
+@@ -2707,6 +2775,7 @@ static struct of_device_id const bcm963x
  	{ .compatible = "d-link,dsl-274xb-f", .data = &board_dsl_274xb_f1, },
  	{ .compatible = "nucom,r5010unv2", .data = &board_R5010UNV2, },
  	{ .compatible = "sagem,f at st2704v2", .data = &board_FAST2704V2, },



More information about the lede-commits mailing list