arm: bcmbca: add bcm63158 SoC support under CONFIG_ARCH_BCMBCA

BCM63158 is a Broadcom B53 based DSL Gateway SoC. It is part of the
BCA (Broadband Carrier Access origin) chipset family. Like other
Broadband SoC, this patch adds it under CONFIG_BCM63158 chip
config and CONFIG_ARCH_BCMBCA platform config.

This initial support includes a bare-bone implementation and dts with
CPU subsystem, memory and ARM PL011 uart. This SoC is supported in the
linux-next git repository so the dts and dtsi files are copied from
linux.

The u-boot image can be loaded from flash or network to the entry
point address in the memory and boot from there to the console.

Signed-off-by: William Zhang <william.zhang@broadcom.com>
Reviewed-by: Philippe Reynes <philippe.reynes@softathome.com>
diff --git a/arch/arm/dts/bcm963158.dts b/arch/arm/dts/bcm963158.dts
index c2bdd33..eba07e0 100644
--- a/arch/arm/dts/bcm963158.dts
+++ b/arch/arm/dts/bcm963158.dts
@@ -1,6 +1,6 @@
-// SPDX-License-Identifier: GPL-2.0+
+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
 /*
- * Copyright (C) 2019 Philippe Reynes <philippe.reynes@softathome.com>
+ * Copyright 2022 Broadcom Ltd.
  */
 
 /dts-v1/;
@@ -8,8 +8,8 @@
 #include "bcm63158.dtsi"
 
 / {
-	model = "Broadcom bcm963158";
-	compatible = "broadcom,bcm963158", "brcm,bcm63158";
+	model = "Broadcom BCM963158 Reference Board";
+	compatible = "brcm,bcm963158", "brcm,bcm63158", "brcm,bcmbca";
 
 	aliases {
 		serial0 = &uart0;
@@ -19,121 +19,12 @@
 		stdout-path = "serial0:115200n8";
 	};
 
-	memory {
+	memory@0 {
 		device_type = "memory";
-		reg = <0x0 0x0 0x0 0x40000000>;
+		reg = <0x0 0x0 0x0 0x08000000>;
 	};
 };
 
 &uart0 {
-	u-boot,dm-pre-reloc;
 	status = "okay";
 };
-
-&gpio0 {
-	status = "okay";
-};
-
-&gpio1 {
-	status = "okay";
-};
-
-&gpio2 {
-	status = "okay";
-};
-
-&gpio3 {
-	status = "okay";
-};
-
-&gpio4 {
-	status = "okay";
-};
-
-&gpio5 {
-	status = "okay";
-};
-
-&gpio6 {
-	status = "okay";
-};
-
-&gpio7 {
-	status = "okay";
-};
-
-&nand {
-	status = "okay";
-	write-protect = <0>;
-	#address-cells = <1>;
-	#size-cells = <0>;
-
-	nandcs@0 {
-		compatible = "brcm,nandcs";
-		reg = <0>;
-		nand-ecc-strength = <4>;
-		nand-ecc-step-size = <512>;
-		brcm,nand-oob-sector-size = <16>;
-	};
-};
-
-&leds {
-	status = "okay";
-	#address-cells = <1>;
-	#size-cells = <0>;
-	brcm,serial-led-en-pol;
-	brcm,serial-led-data-ppol;
-
-	led@16 {
-		reg = <16>;
-		label = "red:dsl2";
-	};
-
-	led@17 {
-		reg = <17>;
-		label = "green:dsl1";
-	};
-
-	led@18 {
-		reg = <18>;
-		label = "green:fxs2";
-	};
-
-	led@19 {
-		reg = <19>;
-		label = "green:fxs1";
-	};
-
-	led@26 {
-		reg = <26>;
-		label = "green:wan1_act";
-	};
-
-	led@27 {
-		reg = <27>;
-		label = "green:wps";
-	};
-
-	led@28 {
-		reg = <28>;
-		active-low;
-		label = "green:aggregate_act";
-	};
-
-	led@29 {
-		reg = <29>;
-		label = "green:aggregate_link";
-	};
-};
-
-&hsspi {
-	status = "okay";
-
-	flash: mt25@0 {
-		compatible = "jedec,spi-nor";
-		#address-cells = <1>;
-		#size-cells = <1>;
-		reg = <0>;
-		spi-max-frequency = <25000000>;
-	};
-};