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>;
- };
-};