u-boot.lists.denx.de archive mirror
 help / color / mirror / Atom feed
* [PATCH v3 0/5] arm: bcmbca: move bcm63158 support under CONFIG_ARCH_BCMBCA
@ 2022-08-22 18:19 William Zhang
  2022-08-22 18:19 ` [PATCH v3 1/5] arm: bcmbca: add bcm63158 SoC " William Zhang
                   ` (4 more replies)
  0 siblings, 5 replies; 12+ messages in thread
From: William Zhang @ 2022-08-22 18:19 UTC (permalink / raw)
  To: U-Boot Mailing List
  Cc: rafal, anand.gore, joel.peshkin, dan.beygelman, philippe.reynes,
	f.fainelli, kursad.oney, William Zhang, Andre Przywara,
	Christian Hewitt, Fabio Estevam, Marek Vasut, Rick Chen,
	Samuel Holland, Sean Anderson, Simon Glass, Tom Rini,
	Tomer Yacoby, Wolfgang Denk, Ying-Chun Liu (PaulLiu)

[-- Attachment #1: Type: text/plain, Size: 3307 bytes --]

Sorry for another version of patch series with some minor updates.
Please see the change log and specific patch for details.

BCM63158 is one of the Broadcom Broadband origin DSL Gateway router SoC.
It was originally added by Philippe before Broadcom started to upstream
the support for broadband SoCs. The ARM based Broadcom Broadband SoC
family is now supported under the same ARCH_BCMBCA config. This patch
series migrate the BCM63158 support to ARCH_BCMBCA.

This patch series need to apply on top of my previous patch series [1].

[1]: https://lists.denx.de/pipermail/u-boot/2022-August/491061.html

Changes in v3:
-Update subject line to be more clear for patch 3
-Fix reset_cpu function prototype.

Changes in v2:
- Remove extra nodes from bcm963158.dts and keep it as a generic minimun
board support dts following other BCA chip convention.
- Remove bcm963158_ram_defconfig per discussion with Philippe as a
basic config version of bcm963158_defconfig is now added.

William Zhang (5):
  arm: bcmbca: add bcm63158 SoC support under CONFIG_ARCH_BCMBCA
  arm: bcmbca: remove bcm63158 support under CONFIG_ARCH_BCM63158
  arm: bcmbca: replace ARCH_BCM63158 symbols in Kconfig with BCM63158
  MAINTAINERS: Add BCM63158 maintainer to BCMBCA entry
  arm: bcmbca: make reset_cpu function weak

 MAINTAINERS                               |   2 +
 arch/arm/Kconfig                          |   8 +-
 arch/arm/dts/Makefile                     |   5 +-
 arch/arm/dts/bcm63158.dtsi                | 207 +++++++++++++---------
 arch/arm/dts/bcm963158.dts                | 121 +------------
 arch/arm/mach-bcmbca/Kconfig              |   8 +
 arch/arm/mach-bcmbca/Makefile             |   1 +
 arch/arm/mach-bcmbca/bcm63158/Kconfig     |  17 ++
 arch/arm/mach-bcmbca/bcm63158/Makefile    |   5 +
 arch/arm/mach-bcmbca/bcm63158/mmu_table.c |  32 ++++
 board/broadcom/bcm963158/Kconfig          |  17 --
 board/broadcom/bcm963158/MAINTAINERS      |   6 -
 board/broadcom/bcm963158/Makefile         |   3 -
 board/broadcom/bcm963158/bcm963158.c      |  62 -------
 board/broadcom/bcmbca/Kconfig             |   7 +
 board/broadcom/bcmbca/board.c             |   2 +-
 configs/bcm963158_defconfig               |  23 +++
 configs/bcm963158_ram_defconfig           |  67 -------
 drivers/gpio/Kconfig                      |   2 +-
 drivers/led/Kconfig                       |   2 +-
 drivers/mtd/nand/raw/Kconfig              |   2 +-
 drivers/spi/Kconfig                       |   2 +-
 drivers/watchdog/Kconfig                  |   2 +-
 include/configs/bcm963158.h               |  15 ++
 include/configs/broadcom_bcm963158.h      |  32 ----
 25 files changed, 251 insertions(+), 399 deletions(-)
 create mode 100644 arch/arm/mach-bcmbca/bcm63158/Kconfig
 create mode 100644 arch/arm/mach-bcmbca/bcm63158/Makefile
 create mode 100644 arch/arm/mach-bcmbca/bcm63158/mmu_table.c
 delete mode 100644 board/broadcom/bcm963158/Kconfig
 delete mode 100644 board/broadcom/bcm963158/MAINTAINERS
 delete mode 100644 board/broadcom/bcm963158/Makefile
 delete mode 100644 board/broadcom/bcm963158/bcm963158.c
 create mode 100644 configs/bcm963158_defconfig
 delete mode 100644 configs/bcm963158_ram_defconfig
 create mode 100644 include/configs/bcm963158.h
 delete mode 100644 include/configs/broadcom_bcm963158.h

-- 
2.37.1


[-- Attachment #2: S/MIME Cryptographic Signature --]
[-- Type: application/pkcs7-signature, Size: 4212 bytes --]

^ permalink raw reply	[flat|nested] 12+ messages in thread

* [PATCH v3 1/5] arm: bcmbca: add bcm63158 SoC support under CONFIG_ARCH_BCMBCA
  2022-08-22 18:19 [PATCH v3 0/5] arm: bcmbca: move bcm63158 support under CONFIG_ARCH_BCMBCA William Zhang
@ 2022-08-22 18:19 ` William Zhang
  2022-08-24 12:43   ` Philippe REYNES
  2022-10-31 14:45   ` Tom Rini
  2022-08-22 18:19 ` [PATCH v3 2/5] arm: bcmbca: remove bcm63158 support under CONFIG_ARCH_BCM63158 William Zhang
                   ` (3 subsequent siblings)
  4 siblings, 2 replies; 12+ messages in thread
From: William Zhang @ 2022-08-22 18:19 UTC (permalink / raw)
  To: U-Boot Mailing List
  Cc: rafal, anand.gore, joel.peshkin, dan.beygelman, philippe.reynes,
	f.fainelli, kursad.oney, William Zhang, Andre Przywara,
	Christian Hewitt, Fabio Estevam, Marek Vasut, Samuel Holland,
	Simon Glass, Tom Rini, Tomer Yacoby, Ying-Chun Liu (PaulLiu)

[-- Attachment #1: Type: text/plain, Size: 18179 bytes --]

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>

---

(no changes since v2)

Changes in v2:
- Remove extra nodes from bcm963158.dts and keep it as a generic minimun
board support dts following other BCA chip convention.

 MAINTAINERS                               |   1 +
 arch/arm/dts/Makefile                     |   2 +
 arch/arm/dts/bcm63158.dtsi                | 207 +++++++++++++---------
 arch/arm/dts/bcm963158.dts                | 121 +------------
 arch/arm/mach-bcmbca/Kconfig              |   8 +
 arch/arm/mach-bcmbca/Makefile             |   1 +
 arch/arm/mach-bcmbca/bcm63158/Kconfig     |  17 ++
 arch/arm/mach-bcmbca/bcm63158/Makefile    |   5 +
 arch/arm/mach-bcmbca/bcm63158/mmu_table.c |  32 ++++
 board/broadcom/bcmbca/Kconfig             |   7 +
 configs/bcm963158_defconfig               |  23 +++
 include/configs/bcm963158.h               |  11 ++
 12 files changed, 239 insertions(+), 196 deletions(-)
 create mode 100644 arch/arm/mach-bcmbca/bcm63158/Kconfig
 create mode 100644 arch/arm/mach-bcmbca/bcm63158/Makefile
 create mode 100644 arch/arm/mach-bcmbca/bcm63158/mmu_table.c
 create mode 100644 configs/bcm963158_defconfig
 create mode 100644 include/configs/bcm963158.h

diff --git a/MAINTAINERS b/MAINTAINERS
index 3f250942ced1..5b219d62f6bf 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -224,6 +224,7 @@ N:	bcm[9]?4912
 N:	bcm[9]?63138
 N:	bcm[9]?63146
 N:	bcm[9]?63148
+N:	bcm[9]?63158
 N:	bcm[9]?63178
 N:	bcm[9]?6756
 N:	bcm[9]?6813
diff --git a/arch/arm/dts/Makefile b/arch/arm/dts/Makefile
index 9a6582d9c1c8..a7fc3d7d7021 100644
--- a/arch/arm/dts/Makefile
+++ b/arch/arm/dts/Makefile
@@ -1175,6 +1175,8 @@ dtb-$(CONFIG_BCM63146) += \
 	bcm963146.dtb
 dtb-$(CONFIG_BCM63148) += \
 	bcm963148.dtb
+dtb-$(CONFIG_BCM63158) += \
+	bcm963158.dtb
 dtb-$(CONFIG_BCM63178) += \
 	bcm963178.dtb
 dtb-$(CONFIG_BCM6756) += \
diff --git a/arch/arm/dts/bcm63158.dtsi b/arch/arm/dts/bcm63158.dtsi
index 7dd285843849..8b179ba0fca8 100644
--- a/arch/arm/dts/bcm63158.dtsi
+++ b/arch/arm/dts/bcm63158.dtsi
@@ -1,122 +1,167 @@
 // SPDX-License-Identifier: GPL-2.0+
 /*
  * Copyright (C) 2019 Philippe Reynes <philippe.reynes@softathome.com>
+ * Copyright 2022 Broadcom Ltd.
  */
 
-#include "skeleton64.dtsi"
+#include <dt-bindings/interrupt-controller/irq.h>
+#include <dt-bindings/interrupt-controller/arm-gic.h>
 
 / {
-	compatible = "brcm,bcm63158";
+	compatible = "brcm,bcm63158", "brcm,bcmbca";
 	#address-cells = <2>;
 	#size-cells = <2>;
 
-	aliases {
-		spi0 = &hsspi;
-	};
+	interrupt-parent = <&gic>;
 
 	cpus {
 		#address-cells = <2>;
 		#size-cells = <0>;
-		u-boot,dm-pre-reloc;
 
-		cpu0: cpu@0 {
-			compatible = "arm,cortex-a53", "arm,armv8";
+		B53_0: cpu@0 {
+			compatible = "brcm,brahma-b53";
 			device_type = "cpu";
 			reg = <0x0 0x0>;
-			next-level-cache = <&l2>;
-			u-boot,dm-pre-reloc;
+			next-level-cache = <&L2_0>;
+			enable-method = "psci";
 		};
 
-		cpu1: cpu@1 {
-			compatible = "arm,cortex-a53", "arm,armv8";
+		B53_1: cpu@1 {
+			compatible = "brcm,brahma-b53";
 			device_type = "cpu";
 			reg = <0x0 0x1>;
-			next-level-cache = <&l2>;
-			u-boot,dm-pre-reloc;
+			next-level-cache = <&L2_0>;
+			enable-method = "psci";
 		};
 
-		cpu2: cpu@2 {
-			compatible = "arm,cortex-a53", "arm,armv8";
+		B53_2: cpu@2 {
+			compatible = "brcm,brahma-b53";
 			device_type = "cpu";
 			reg = <0x0 0x2>;
-			next-level-cache = <&l2>;
-			u-boot,dm-pre-reloc;
+			next-level-cache = <&L2_0>;
+			enable-method = "psci";
 		};
 
-		cpu3: cpu@3 {
-			compatible = "arm,cortex-a53", "arm,armv8";
+		B53_3: cpu@3 {
+			compatible = "brcm,brahma-b53";
 			device_type = "cpu";
 			reg = <0x0 0x3>;
-			next-level-cache = <&l2>;
-			u-boot,dm-pre-reloc;
+			next-level-cache = <&L2_0>;
+			enable-method = "psci";
 		};
 
-		l2: l2-cache0 {
+		L2_0: l2-cache0 {
 			compatible = "cache";
-			u-boot,dm-pre-reloc;
 		};
 	};
 
+	timer {
+		compatible = "arm,armv8-timer";
+		interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
+			<GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
+			<GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
+			<GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>;
+	};
+
+	pmu: pmu {
+		compatible = "arm,cortex-a53-pmu";
+		interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>,
+			<GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>,
+			<GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>,
+			<GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>;
+		interrupt-affinity = <&B53_0>, <&B53_1>,
+			<&B53_2>, <&B53_3>;
+	};
+
 	clocks {
-		compatible = "simple-bus";
-		#address-cells = <2>;
-		#size-cells = <2>;
-		ranges;
 		u-boot,dm-pre-reloc;
-
-		periph_osc: periph-osc {
+		periph_clk: periph-clk {
 			compatible = "fixed-clock";
 			#clock-cells = <0>;
-			clock-frequency = <0xbebc200>;
-			u-boot,dm-pre-reloc;
+			clock-frequency = <200000000>;
 		};
 
 		hsspi_pll: hsspi-pll {
 			compatible = "fixed-factor-clock";
 			#clock-cells = <0>;
-			clocks = <&periph_osc>;
+			clocks = <&periph_clk>;
 			clock-mult = <2>;
 			clock-div = <1>;
 		};
 
-		refclk50mhz: refclk50mhz {
-			compatible = "fixed-clock";
+		uart_clk: uart-clk {
+			compatible = "fixed-factor-clock";
 			#clock-cells = <0>;
-			clock-frequency = <50000000>;
+			clocks = <&periph_clk>;
+			clock-div = <4>;
+			clock-mult = <1>;
+		};
+
+		wdt_clk: wdt-clk {
+			compatible = "fixed-factor-clock";
+			#clock-cells = <0>;
+			clocks = <&periph_clk>;
+			clock-div = <4>;
+			clock-mult = <1>;
 		};
 	};
 
-	ubus {
+	psci {
+		compatible = "arm,psci-0.2";
+		method = "smc";
+	};
+
+	axi@81000000 {
 		compatible = "simple-bus";
-		#address-cells = <2>;
-		#size-cells = <2>;
+		#address-cells = <1>;
+		#size-cells = <1>;
+		ranges = <0x0 0x0 0x81000000 0x8000>;
+
+		gic: interrupt-controller@1000 {
+			compatible = "arm,gic-400";
+			#interrupt-cells = <3>;
+			interrupt-controller;
+			interrupts = <GIC_PPI 9 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>;
+			reg = <0x1000 0x1000>,
+				<0x2000 0x2000>,
+				<0x4000 0x2000>,
+				<0x6000 0x2000>;
+		};
+	};
+
+	bus@ff800000 {
+		compatible = "simple-bus";
+		#address-cells = <1>;
+		#size-cells = <1>;
+		ranges = <0x0 0x0 0xff800000 0x800000>;
 		u-boot,dm-pre-reloc;
 
-		uart0: serial@ff812000 {
+		uart0: serial@12000 {
 			compatible = "arm,pl011", "arm,primecell";
-			reg = <0x0 0xff812000 0x0 0x1000>;
-			clock = <50000000>;
-
+			reg = <0x12000 0x1000>;
+			interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>;
+			clocks = <&uart_clk>, <&uart_clk>;
+			clock-names = "uartclk", "apb_pclk";
 			status = "disabled";
 		};
 
-		leds: led-controller@ff800800 {
+		leds: led-controller@800 {
 			compatible = "brcm,bcm6858-leds";
-			reg = <0x0 0xff800800 0x0 0xe4>;
+			reg = <0x800 0xe4>;
 
 			status = "disabled";
 		};
 
-		wdt1: watchdog@ff800480 {
+		wdt1: watchdog@480 {
 			compatible = "brcm,bcm6345-wdt";
-			reg = <0x0 0xff800480 0x0 0x14>;
-			clocks = <&refclk50mhz>;
+			reg = <0x480 0x14>;
+			clocks = <&wdt_clk>;
 		};
 
-		wdt2: watchdog@ff8004c0 {
+		wdt2: watchdog@4c0 {
 			compatible = "brcm,bcm6345-wdt";
-			reg = <0x0 0xff8004c0 0x0 0x14>;
-			clocks = <&refclk50mhz>;
+			reg = <0x4c0 0x14>;
+			clocks = <&wdt_clk>;
 		};
 
 		wdt-reboot {
@@ -124,91 +169,91 @@
 			wdt = <&wdt1>;
 		};
 
-		gpio0: gpio-controller@0xff800500 {
+		gpio0: gpio-controller@500 {
 			compatible = "brcm,bcm6345-gpio";
-			reg = <0x0 0xff800500 0x0 0x4>,
-			      <0x0 0xff800520 0x0 0x4>;
+			reg = <0x500 0x4>,
+			      <0x520 0x4>;
 			gpio-controller;
 			#gpio-cells = <2>;
 
 			status = "disabled";
 		};
 
-		gpio1: gpio-controller@0xff800504 {
+		gpio1: gpio-controller@504 {
 			compatible = "brcm,bcm6345-gpio";
-			reg = <0x0 0xff800504 0x0 0x4>,
-			      <0x0 0xff800524 0x0 0x4>;
+			reg = <0x504 0x4>,
+			      <0x524 0x4>;
 			gpio-controller;
 			#gpio-cells = <2>;
 
 			status = "disabled";
 		};
 
-		gpio2: gpio-controller@0xff800508 {
+		gpio2: gpio-controller@508 {
 			compatible = "brcm,bcm6345-gpio";
-			reg = <0x0 0xff800508 0x0 0x4>,
-			      <0x0 0xff800528 0x0 0x4>;
+			reg = <0x508 0x4>,
+			      <0x528 0x4>;
 			gpio-controller;
 			#gpio-cells = <2>;
 
 			status = "disabled";
 		};
 
-		gpio3: gpio-controller@0xff80050c {
+		gpio3: gpio-controller@50c {
 			compatible = "brcm,bcm6345-gpio";
-			reg = <0x0 0xff80050c 0x0 0x4>,
-			      <0x0 0xff80052c 0x0 0x4>;
+			reg = <0x50c 0x4>,
+			      <0x52c 0x4>;
 			gpio-controller;
 			#gpio-cells = <2>;
 
 			status = "disabled";
 		};
 
-		gpio4: gpio-controller@0xff800510 {
+		gpio4: gpio-controller@510 {
 			compatible = "brcm,bcm6345-gpio";
-			reg = <0x0 0xff800510 0x0 0x4>,
-			      <0x0 0xff800530 0x0 0x4>;
+			reg = <0x510 0x4>,
+			      <0x530 0x4>;
 			gpio-controller;
 			#gpio-cells = <2>;
 
 			status = "disabled";
 		};
 
-		gpio5: gpio-controller@0xff800514 {
+		gpio5: gpio-controller@514 {
 			compatible = "brcm,bcm6345-gpio";
-			reg = <0x0 0xff800514 0x0 0x4>,
-			      <0x0 0xff800534 0x0 0x4>;
+			reg = <0x514 0x4>,
+			      <0x534 0x4>;
 			gpio-controller;
 			#gpio-cells = <2>;
 
 			status = "disabled";
 		};
 
-		gpio6: gpio-controller@0xff800518 {
+		gpio6: gpio-controller@518 {
 			compatible = "brcm,bcm6345-gpio";
-			reg = <0x0 0xff800518 0x0 0x4>,
-			      <0x0 0xff800538 0x0 0x4>;
+			reg = <0x518 0x4>,
+			      <0x538 0x4>;
 			gpio-controller;
 			#gpio-cells = <2>;
 
 			status = "disabled";
 		};
 
-		gpio7: gpio-controller@0xff80051c {
+		gpio7: gpio-controller@51c {
 			compatible = "brcm,bcm6345-gpio";
-			reg = <0x0 0xff80051c 0x0 0x4>,
-			      <0x0 0xff80053c 0x0 0x4>;
+			reg = <0x51c 0x4>,
+			      <0x53c 0x4>;
 			gpio-controller;
 			#gpio-cells = <2>;
 
 			status = "disabled";
 		};
 
-		hsspi: spi-controller@ff801000 {
+		hsspi: spi-controller@1000 {
 			compatible = "brcm,bcm6328-hsspi";
 			#address-cells = <1>;
 			#size-cells = <0>;
-			reg = <0x0 0xff801000 0x0 0x600>;
+			reg = <0x1000 0x600>;
 			clocks = <&hsspi_pll>, <&hsspi_pll>;
 			clock-names = "hsspi", "pll";
 			spi-max-frequency = <100000000>;
@@ -217,14 +262,14 @@
 			status = "disabled";
 		};
 
-		nand: nand-controller@ff801800 {
+		nand: nand-controller@1800 {
 			compatible = "brcm,nand-bcm63158",
 				     "brcm,brcmnand-v5.0",
 				     "brcm,brcmnand";
 			reg-names = "nand", "nand-int-base", "nand-cache";
-			reg = <0x0 0xff801800 0x0 0x180>,
-			      <0x0 0xff802000 0x0 0x10>,
-			      <0x0 0xff801c00 0x0 0x200>;
+			reg = <0x1800 0x180>,
+			      <0x2000 0x10>,
+			      <0x1c00 0x200>;
 			parameter-page-big-endian = <0>;
 
 			status = "disabled";
diff --git a/arch/arm/dts/bcm963158.dts b/arch/arm/dts/bcm963158.dts
index c2bdd332745d..eba07e0b1ca6 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>;
-	};
-};
diff --git a/arch/arm/mach-bcmbca/Kconfig b/arch/arm/mach-bcmbca/Kconfig
index eb03ef42b8d2..d78618820b58 100644
--- a/arch/arm/mach-bcmbca/Kconfig
+++ b/arch/arm/mach-bcmbca/Kconfig
@@ -48,6 +48,13 @@ config BCM63148
 	select DM_SERIAL
 	select BCM6345_SERIAL
 
+config BCM63158
+	bool "Support for Broadcom 63158 Family"
+	select ARM64
+	select SYS_ARCH_TIMER
+	select DM_SERIAL
+	select PL01X_SERIAL
+
 config BCM63178
 	bool "Support for Broadcom 63178 Family"
 	select SYS_ARCH_TIMER
@@ -89,6 +96,7 @@ source "arch/arm/mach-bcmbca/bcm4912/Kconfig"
 source "arch/arm/mach-bcmbca/bcm63138/Kconfig"
 source "arch/arm/mach-bcmbca/bcm63146/Kconfig"
 source "arch/arm/mach-bcmbca/bcm63148/Kconfig"
+source "arch/arm/mach-bcmbca/bcm63158/Kconfig"
 source "arch/arm/mach-bcmbca/bcm63178/Kconfig"
 source "arch/arm/mach-bcmbca/bcm6756/Kconfig"
 source "arch/arm/mach-bcmbca/bcm6813/Kconfig"
diff --git a/arch/arm/mach-bcmbca/Makefile b/arch/arm/mach-bcmbca/Makefile
index c8c344ba7271..e5df60e7648b 100644
--- a/arch/arm/mach-bcmbca/Makefile
+++ b/arch/arm/mach-bcmbca/Makefile
@@ -9,6 +9,7 @@ obj-$(CONFIG_BCM4912) += bcm4912/
 obj-$(CONFIG_BCM63138) += bcm63138/
 obj-$(CONFIG_BCM63146) += bcm63146/
 obj-$(CONFIG_BCM63148) += bcm63148/
+obj-$(CONFIG_BCM63158) += bcm63158/
 obj-$(CONFIG_BCM63178) += bcm63178/
 obj-$(CONFIG_BCM6756) += bcm6756/
 obj-$(CONFIG_BCM6813) += bcm6813/
diff --git a/arch/arm/mach-bcmbca/bcm63158/Kconfig b/arch/arm/mach-bcmbca/bcm63158/Kconfig
new file mode 100644
index 000000000000..b77444369ec9
--- /dev/null
+++ b/arch/arm/mach-bcmbca/bcm63158/Kconfig
@@ -0,0 +1,17 @@
+# SPDX-License-Identifier: GPL-2.0+
+#
+# (C) Copyright 2022 Broadcom Ltd
+#
+
+if BCM63158
+
+config TARGET_BCM963158
+	bool "Broadcom 63158 Reference Board"
+	depends on ARCH_BCMBCA
+
+config SYS_SOC
+	default "bcm63158"
+
+source "board/broadcom/bcmbca/Kconfig"
+
+endif
diff --git a/arch/arm/mach-bcmbca/bcm63158/Makefile b/arch/arm/mach-bcmbca/bcm63158/Makefile
new file mode 100644
index 000000000000..62624977034b
--- /dev/null
+++ b/arch/arm/mach-bcmbca/bcm63158/Makefile
@@ -0,0 +1,5 @@
+# SPDX-License-Identifier: GPL-2.0+
+#
+# (C) Copyright 2022 Broadcom Ltd
+#
+obj-y += mmu_table.o
diff --git a/arch/arm/mach-bcmbca/bcm63158/mmu_table.c b/arch/arm/mach-bcmbca/bcm63158/mmu_table.c
new file mode 100644
index 000000000000..fe7efb30e22b
--- /dev/null
+++ b/arch/arm/mach-bcmbca/bcm63158/mmu_table.c
@@ -0,0 +1,32 @@
+// SPDX-License-Identifier: GPL-2.0+
+/*
+ *  Copyright 2022 Broadcom Ltd.
+ */
+#include <common.h>
+#include <asm/armv8/mmu.h>
+#include <linux/sizes.h>
+
+static struct mm_region bcm963158_mem_map[] = {
+		{
+				.virt = 0x00000000UL,
+				.phys = 0x00000000UL,
+				.size = 1UL * SZ_1G,
+				.attrs = PTE_BLOCK_MEMTYPE(MT_NORMAL) |
+						PTE_BLOCK_INNER_SHARE
+		},
+		{
+				/* SoC peripheral */
+				.virt = 0xff800000UL,
+				.phys = 0xff800000UL,
+				.size = 0x100000,
+				.attrs = PTE_BLOCK_MEMTYPE(MT_DEVICE_NGNRNE) |
+						PTE_BLOCK_NON_SHARE |
+						PTE_BLOCK_PXN | PTE_BLOCK_UXN
+		},
+		{
+				/* List terminator */
+				0,
+		}
+};
+
+struct mm_region *mem_map = bcm963158_mem_map;
diff --git a/board/broadcom/bcmbca/Kconfig b/board/broadcom/bcmbca/Kconfig
index c9155fb48e0a..13815fd7975f 100644
--- a/board/broadcom/bcmbca/Kconfig
+++ b/board/broadcom/bcmbca/Kconfig
@@ -51,6 +51,13 @@ config SYS_CONFIG_NAME
 
 endif
 
+if TARGET_BCM963158
+
+config SYS_CONFIG_NAME
+	default "bcm963158"
+
+endif
+
 if TARGET_BCM963178
 
 config SYS_CONFIG_NAME
diff --git a/configs/bcm963158_defconfig b/configs/bcm963158_defconfig
new file mode 100644
index 000000000000..b585adbd9b37
--- /dev/null
+++ b/configs/bcm963158_defconfig
@@ -0,0 +1,23 @@
+CONFIG_ARM=y
+CONFIG_COUNTER_FREQUENCY=50000000
+CONFIG_ARCH_BCMBCA=y
+CONFIG_SYS_TEXT_BASE=0x01000000
+CONFIG_SYS_MALLOC_LEN=0x2000000
+CONFIG_SYS_MALLOC_F_LEN=0x8000
+CONFIG_BCM63158=y
+CONFIG_TARGET_BCM963158=y
+CONFIG_NR_DRAM_BANKS=2
+CONFIG_DEFAULT_DEVICE_TREE="bcm963158"
+CONFIG_IDENT_STRING=" Broadcom BCM63158"
+CONFIG_SYS_LOAD_ADDR=0x01000000
+CONFIG_ENV_VARS_UBOOT_CONFIG=y
+CONFIG_HAS_CUSTOM_SYS_INIT_SP_ADDR=y
+CONFIG_CUSTOM_SYS_INIT_SP_ADDR=0x2000000
+CONFIG_OF_STDOUT_VIA_ALIAS=y
+CONFIG_DISPLAY_BOARDINFO_LATE=y
+CONFIG_HUSH_PARSER=y
+CONFIG_SYS_MAXARGS=64
+CONFIG_SYS_BOOTM_LEN=0x4000000
+CONFIG_CMD_CACHE=y
+CONFIG_OF_EMBED=y
+CONFIG_CLK=y
diff --git a/include/configs/bcm963158.h b/include/configs/bcm963158.h
new file mode 100644
index 000000000000..b15c4111c967
--- /dev/null
+++ b/include/configs/bcm963158.h
@@ -0,0 +1,11 @@
+/* SPDX-License-Identifier: GPL-2.0+ */
+/*
+ * (C) Copyright 2022 Broadcom Ltd.
+ */
+
+#ifndef __BCM963158_H
+#define __BCM963158_H
+
+#define CONFIG_SYS_SDRAM_BASE		0x00000000
+
+#endif
-- 
2.37.1


[-- Attachment #2: S/MIME Cryptographic Signature --]
[-- Type: application/pkcs7-signature, Size: 4212 bytes --]

^ permalink raw reply related	[flat|nested] 12+ messages in thread

* [PATCH v3 2/5] arm: bcmbca: remove bcm63158 support under CONFIG_ARCH_BCM63158
  2022-08-22 18:19 [PATCH v3 0/5] arm: bcmbca: move bcm63158 support under CONFIG_ARCH_BCMBCA William Zhang
  2022-08-22 18:19 ` [PATCH v3 1/5] arm: bcmbca: add bcm63158 SoC " William Zhang
@ 2022-08-22 18:19 ` William Zhang
  2022-08-24 12:44   ` Philippe REYNES
  2022-08-22 18:19 ` [PATCH v3 3/5] arm: bcmbca: replace ARCH_BCM63158 symbols in Kconfig with BCM63158 William Zhang
                   ` (2 subsequent siblings)
  4 siblings, 1 reply; 12+ messages in thread
From: William Zhang @ 2022-08-22 18:19 UTC (permalink / raw)
  To: U-Boot Mailing List
  Cc: rafal, anand.gore, joel.peshkin, dan.beygelman, philippe.reynes,
	f.fainelli, kursad.oney, William Zhang, Andre Przywara,
	Bharat Gooty, Christian Hewitt, Fabio Estevam,
	Rayagonda Kokatanur, Rick Chen, Samuel Holland, Sean Anderson,
	Simon Glass, Tom Rini, Tomer Yacoby, Wolfgang Denk,
	Ying-Chun Liu (PaulLiu)

[-- Attachment #1: Type: text/plain, Size: 8097 bytes --]

Now that BCM63158 is supported under CONFIG_ARCH_BCMBCA and
CONFIG_BCM63158, remove the original ARCH_BCM63158 support and migrate
configuration settings.

Signed-off-by: William Zhang <william.zhang@broadcom.com>

---

(no changes since v2)

Changes in v2:
- Remove bcm963158_ram_defconfig per discussion with Philippe as a
basic config version of bcm963158_defconfig is now added.

 arch/arm/Kconfig                     |  8 +---
 arch/arm/dts/Makefile                |  3 --
 board/broadcom/bcm963158/Kconfig     | 17 -------
 board/broadcom/bcm963158/MAINTAINERS |  6 ---
 board/broadcom/bcm963158/Makefile    |  3 --
 board/broadcom/bcm963158/bcm963158.c | 62 -------------------------
 configs/bcm963158_ram_defconfig      | 67 ----------------------------
 include/configs/bcm963158.h          |  4 ++
 include/configs/broadcom_bcm963158.h | 32 -------------
 9 files changed, 5 insertions(+), 197 deletions(-)
 delete mode 100644 board/broadcom/bcm963158/Kconfig
 delete mode 100644 board/broadcom/bcm963158/MAINTAINERS
 delete mode 100644 board/broadcom/bcm963158/Makefile
 delete mode 100644 board/broadcom/bcm963158/bcm963158.c
 delete mode 100644 configs/bcm963158_ram_defconfig
 delete mode 100644 include/configs/broadcom_bcm963158.h

diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 0d4903a2eb5b..da4defa08466 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -665,12 +665,6 @@ config ARCH_BCM283X
 	imply CMD_DM
 	imply FAT_WRITE
 
-config ARCH_BCM63158
-	bool "Broadcom BCM63158 family"
-	select DM
-	select OF_CONTROL
-	imply CMD_DM
-
 config ARCH_BCM6753
 	bool "Broadcom BCM6753 family"
 	select CPU_V7A
@@ -706,6 +700,7 @@ config ARCH_BCMBCA
 	bool "Broadcom broadband chip family"
 	select DM
 	select OF_CONTROL
+	imply CMD_DM
 
 config TARGET_VEXPRESS_CA9X4
 	bool "Support vexpress_ca9x4"
@@ -2284,7 +2279,6 @@ source "board/Marvell/octeontx2/Kconfig"
 source "board/armltd/vexpress/Kconfig"
 source "board/armltd/vexpress64/Kconfig"
 source "board/cortina/presidio-asic/Kconfig"
-source "board/broadcom/bcm963158/Kconfig"
 source "board/broadcom/bcm96753ref/Kconfig"
 source "board/broadcom/bcm968360bg/Kconfig"
 source "board/broadcom/bcm968580xref/Kconfig"
diff --git a/arch/arm/dts/Makefile b/arch/arm/dts/Makefile
index a7fc3d7d7021..c55bc3569662 100644
--- a/arch/arm/dts/Makefile
+++ b/arch/arm/dts/Makefile
@@ -1147,9 +1147,6 @@ dtb-$(CONFIG_ARCH_BCM283X) += \
 	bcm2837-rpi-cm3-io3.dtb \
 	bcm2711-rpi-4-b.dtb
 
-dtb-$(CONFIG_ARCH_BCM63158) += \
-	bcm963158.dtb
-
 dtb-$(CONFIG_ARCH_BCM68360) += \
 	bcm968360bg.dtb
 
diff --git a/board/broadcom/bcm963158/Kconfig b/board/broadcom/bcm963158/Kconfig
deleted file mode 100644
index 08a8bc1c14d3..000000000000
--- a/board/broadcom/bcm963158/Kconfig
+++ /dev/null
@@ -1,17 +0,0 @@
-if TARGET_BCM963158
-
-config SYS_VENDOR
-	default "broadcom"
-
-config SYS_BOARD
-	default "bcm963158"
-
-config SYS_CONFIG_NAME
-	default "broadcom_bcm963158"
-
-endif
-
-config TARGET_BCM963158
-	bool "Support Broadcom bcm963158"
-	depends on ARCH_BCM63158
-	select ARM64
diff --git a/board/broadcom/bcm963158/MAINTAINERS b/board/broadcom/bcm963158/MAINTAINERS
deleted file mode 100644
index d28d971f9d36..000000000000
--- a/board/broadcom/bcm963158/MAINTAINERS
+++ /dev/null
@@ -1,6 +0,0 @@
-BROADCOM BCM963158
-M:	Philippe Reynes <philippe.reynes@softathome.com>
-S:	Maintained
-F:	board/broadcom/bcm963158/
-F:	include/configs/broadcom_bcm963158.h
-F:	configs/bcm963158_ram_defconfig
diff --git a/board/broadcom/bcm963158/Makefile b/board/broadcom/bcm963158/Makefile
deleted file mode 100644
index 0a902c9cf618..000000000000
--- a/board/broadcom/bcm963158/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-# SPDX-License-Identifier: GPL-2.0+
-
-obj-y	+= bcm963158.o
diff --git a/board/broadcom/bcm963158/bcm963158.c b/board/broadcom/bcm963158/bcm963158.c
deleted file mode 100644
index 9feaee3c0fc4..000000000000
--- a/board/broadcom/bcm963158/bcm963158.c
+++ /dev/null
@@ -1,62 +0,0 @@
-// SPDX-License-Identifier: GPL-2.0+
-/*
- * Copyright (C) 2019 Philippe Reynes <philippe.reynes@softathome.com>
- */
-
-#include <common.h>
-#include <fdtdec.h>
-#include <init.h>
-#include <linux/io.h>
-
-#ifdef CONFIG_ARM64
-#include <asm/armv8/mmu.h>
-
-static struct mm_region broadcom_bcm963158_mem_map[] = {
-	{
-		/* RAM */
-		.virt = 0x00000000UL,
-		.phys = 0x00000000UL,
-		.size = 8UL * SZ_1G,
-		.attrs = PTE_BLOCK_MEMTYPE(MT_NORMAL) |
-			 PTE_BLOCK_INNER_SHARE
-	}, {
-		/* SoC */
-		.virt = 0x80000000UL,
-		.phys = 0x80000000UL,
-		.size = 0xff80000000UL,
-		.attrs = PTE_BLOCK_MEMTYPE(MT_DEVICE_NGNRNE) |
-			 PTE_BLOCK_NON_SHARE |
-			 PTE_BLOCK_PXN | PTE_BLOCK_UXN
-	}, {
-		/* List terminator */
-		0,
-	}
-};
-
-struct mm_region *mem_map = broadcom_bcm963158_mem_map;
-#endif
-
-int board_init(void)
-{
-	return 0;
-}
-
-int dram_init(void)
-{
-	if (fdtdec_setup_mem_size_base() != 0)
-		printf("fdtdec_setup_mem_size_base() has failed\n");
-
-	return 0;
-}
-
-int dram_init_banksize(void)
-{
-	fdtdec_setup_memory_banksize();
-
-	return 0;
-}
-
-int print_cpuinfo(void)
-{
-	return 0;
-}
diff --git a/configs/bcm963158_ram_defconfig b/configs/bcm963158_ram_defconfig
deleted file mode 100644
index 424eca7946b8..000000000000
--- a/configs/bcm963158_ram_defconfig
+++ /dev/null
@@ -1,67 +0,0 @@
-CONFIG_ARM=y
-CONFIG_SKIP_LOWLEVEL_INIT=y
-# CONFIG_ARM64_SUPPORT_AARCH32 is not set
-CONFIG_ARCH_BCM63158=y
-CONFIG_SYS_TEXT_BASE=0x10000000
-CONFIG_SYS_MALLOC_LEN=0x100000
-CONFIG_SYS_MALLOC_F_LEN=0x8000
-CONFIG_NR_DRAM_BANKS=1
-CONFIG_ENV_SIZE=0x2000
-CONFIG_DM_GPIO=y
-CONFIG_DEFAULT_DEVICE_TREE="bcm963158"
-CONFIG_SYS_LOAD_ADDR=0x10000000
-CONFIG_TARGET_BCM963158=y
-CONFIG_ENV_VARS_UBOOT_CONFIG=y
-CONFIG_HAS_CUSTOM_SYS_INIT_SP_ADDR=y
-CONFIG_CUSTOM_SYS_INIT_SP_ADDR=0x11000000
-CONFIG_FIT=y
-CONFIG_FIT_SIGNATURE=y
-CONFIG_FIT_RSASSA_PSS=y
-CONFIG_FIT_VERBOSE=y
-CONFIG_LEGACY_IMAGE_FORMAT=y
-CONFIG_SUPPORT_RAW_INITRD=y
-CONFIG_DISPLAY_BOARDINFO_LATE=y
-CONFIG_HUSH_PARSER=y
-CONFIG_SYS_MAXARGS=24
-CONFIG_SYS_CBSIZE=256
-CONFIG_SYS_PBSIZE=276
-CONFIG_SYS_BOOTM_LEN=0x1000000
-# CONFIG_CMD_LZMADEC is not set
-# CONFIG_CMD_UNZIP is not set
-# CONFIG_CMD_FLASH is not set
-CONFIG_CMD_GPIO=y
-CONFIG_CMD_MTD=y
-CONFIG_CMD_NAND=y
-CONFIG_CMD_CACHE=y
-CONFIG_DOS_PARTITION=y
-CONFIG_ISO_PARTITION=y
-CONFIG_EFI_PARTITION=y
-CONFIG_SYS_RELOC_GD_ENV_ADDR=y
-# CONFIG_NET is not set
-CONFIG_BLK=y
-CONFIG_CLK=y
-CONFIG_BCM6345_GPIO=y
-CONFIG_LED=y
-CONFIG_LED_BCM6858=y
-CONFIG_LED_BLINK=y
-# CONFIG_MMC is not set
-CONFIG_MTD=y
-CONFIG_DM_MTD=y
-CONFIG_MTD_RAW_NAND=y
-CONFIG_NAND_BRCMNAND=y
-CONFIG_NAND_BRCMNAND_63158=y
-CONFIG_SYS_NAND_ONFI_DETECTION=y
-CONFIG_DM_SPI_FLASH=y
-CONFIG_SPI_FLASH_MACRONIX=y
-CONFIG_SPECIFY_CONSOLE_INDEX=y
-CONFIG_CONS_INDEX=0
-CONFIG_DM_SERIAL=y
-CONFIG_SERIAL_SEARCH_ALL=y
-CONFIG_PL01X_SERIAL=y
-CONFIG_SPI=y
-CONFIG_DM_SPI=y
-CONFIG_BCM63XX_HSSPI=y
-CONFIG_SYSRESET=y
-CONFIG_SYSRESET_WATCHDOG=y
-CONFIG_WDT_BCM6345=y
-# CONFIG_GENERATE_SMBIOS_TABLE is not set
diff --git a/include/configs/bcm963158.h b/include/configs/bcm963158.h
index b15c4111c967..f47396335868 100644
--- a/include/configs/bcm963158.h
+++ b/include/configs/bcm963158.h
@@ -8,4 +8,8 @@
 
 #define CONFIG_SYS_SDRAM_BASE		0x00000000
 
+#ifdef CONFIG_MTD_RAW_NAND
+#define CONFIG_SYS_MAX_NAND_DEVICE	1
+#endif /* CONFIG_MTD_RAW_NAND */
+
 #endif
diff --git a/include/configs/broadcom_bcm963158.h b/include/configs/broadcom_bcm963158.h
deleted file mode 100644
index 0c8d352be97c..000000000000
--- a/include/configs/broadcom_bcm963158.h
+++ /dev/null
@@ -1,32 +0,0 @@
-/* SPDX-License-Identifier: GPL-2.0+ */
-/*
- * Copyright (C) 2019 Philippe Reynes <philippe.reynes@softathome.com>
- */
-
-#include <linux/sizes.h>
-
-/*
- * common
- */
-
-/* UART */
-#define CONFIG_SYS_BAUDRATE_TABLE	{ 9600, 19200, 38400, 57600, 115200, \
-					  230400, 500000, 1500000 }
-/* Memory usage */
-
-/*
- * 63158
- */
-
-/* RAM */
-#define CONFIG_SYS_SDRAM_BASE		0x00000000
-
-/* U-Boot */
-
-#ifdef CONFIG_MTD_RAW_NAND
-#define CONFIG_SYS_MAX_NAND_DEVICE	1
-#endif /* CONFIG_MTD_RAW_NAND */
-
-/*
- * bcm963158
- */
-- 
2.37.1


[-- Attachment #2: S/MIME Cryptographic Signature --]
[-- Type: application/pkcs7-signature, Size: 4212 bytes --]

^ permalink raw reply related	[flat|nested] 12+ messages in thread

* [PATCH v3 3/5] arm: bcmbca: replace ARCH_BCM63158 symbols in Kconfig with BCM63158
  2022-08-22 18:19 [PATCH v3 0/5] arm: bcmbca: move bcm63158 support under CONFIG_ARCH_BCMBCA William Zhang
  2022-08-22 18:19 ` [PATCH v3 1/5] arm: bcmbca: add bcm63158 SoC " William Zhang
  2022-08-22 18:19 ` [PATCH v3 2/5] arm: bcmbca: remove bcm63158 support under CONFIG_ARCH_BCM63158 William Zhang
@ 2022-08-22 18:19 ` William Zhang
  2022-08-24 12:44   ` Philippe REYNES
  2022-08-22 18:19 ` [PATCH v3 4/5] MAINTAINERS: Add BCM63158 maintainer to BCMBCA entry William Zhang
  2022-08-22 18:19 ` [PATCH v3 5/5] arm: bcmbca: make reset_cpu function weak William Zhang
  4 siblings, 1 reply; 12+ messages in thread
From: William Zhang @ 2022-08-22 18:19 UTC (permalink / raw)
  To: U-Boot Mailing List
  Cc: rafal, anand.gore, joel.peshkin, dan.beygelman, philippe.reynes,
	f.fainelli, kursad.oney, William Zhang, Andre Przywara,
	Dario Binacchi, Eddie James, Hannes Schmelzer, Ivan Vozvakhov,
	Jagan Teki, Michael Trimarchi, Michal Simek, Simon Glass,
	Stefan Roese, T Karthik Reddy, Tom Rini

[-- Attachment #1: Type: text/plain, Size: 2928 bytes --]

As CONFIG_ARCH_BCM63158 is replaced with CONFIG_BCM63158, update the
Kconfig to use the new config symbol.

Signed-off-by: William Zhang <william.zhang@broadcom.com>

---

Changes in v3:
-Update subject line to be more clear

 drivers/gpio/Kconfig         | 2 +-
 drivers/led/Kconfig          | 2 +-
 drivers/mtd/nand/raw/Kconfig | 2 +-
 drivers/spi/Kconfig          | 2 +-
 drivers/watchdog/Kconfig     | 2 +-
 5 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/drivers/gpio/Kconfig b/drivers/gpio/Kconfig
index aaa152fae73b..83f4f5089992 100644
--- a/drivers/gpio/Kconfig
+++ b/drivers/gpio/Kconfig
@@ -111,7 +111,7 @@ config BCM2835_GPIO
 config BCM6345_GPIO
 	bool "BCM6345 GPIO driver"
 	depends on DM_GPIO && (ARCH_BMIPS || ARCH_BCM68360 || \
-			       ARCH_BCM6858 || ARCH_BCM63158 || \
+			       ARCH_BCM6858 || BCM63158 || \
 			       ARCH_BCM6753)
 	help
 	  This driver supports the GPIO banks on BCM6345 SoCs.
diff --git a/drivers/led/Kconfig b/drivers/led/Kconfig
index ccdd7d7395c8..d777414dda8d 100644
--- a/drivers/led/Kconfig
+++ b/drivers/led/Kconfig
@@ -37,7 +37,7 @@ config LED_BCM6753
 
 config LED_BCM6858
 	bool "LED Support for BCM6858"
-	depends on LED && (ARCH_BCM68360 || ARCH_BCM6858 || ARCH_BCM63158)
+	depends on LED && (ARCH_BCM68360 || ARCH_BCM6858 || BCM63158)
 	help
 	  This option enables support for LEDs connected to the BCM6858
 	  HW has blinking capabilities and up to 32 LEDs can be controlled.
diff --git a/drivers/mtd/nand/raw/Kconfig b/drivers/mtd/nand/raw/Kconfig
index ce67d1abde25..24c27b6ecf7f 100644
--- a/drivers/mtd/nand/raw/Kconfig
+++ b/drivers/mtd/nand/raw/Kconfig
@@ -121,7 +121,7 @@ config NAND_BRCMNAND_6858
 
 config NAND_BRCMNAND_63158
        bool "Support Broadcom NAND controller on bcm63158"
-       depends on NAND_BRCMNAND && ARCH_BCM63158
+       depends on NAND_BRCMNAND && BCM63158
        help
          Enable support for broadcom nand driver on bcm63158.
 
diff --git a/drivers/spi/Kconfig b/drivers/spi/Kconfig
index 75b794548b22..0a666eee80e7 100644
--- a/drivers/spi/Kconfig
+++ b/drivers/spi/Kconfig
@@ -92,7 +92,7 @@ config ATMEL_SPI
 config BCM63XX_HSSPI
 	bool "BCM63XX HSSPI driver"
 	depends on (ARCH_BMIPS || ARCH_BCM68360 || \
-		    ARCH_BCM6858 || ARCH_BCM63158)
+		    ARCH_BCM6858 || BCM63158)
 	help
 	  Enable the BCM6328 HSSPI driver. This driver can be used to
 	  access the SPI NOR flash on platforms embedding this Broadcom
diff --git a/drivers/watchdog/Kconfig b/drivers/watchdog/Kconfig
index 50e6a1efba51..ff4d1ee530d2 100644
--- a/drivers/watchdog/Kconfig
+++ b/drivers/watchdog/Kconfig
@@ -129,7 +129,7 @@ config WDT_AT91
 config WDT_BCM6345
 	bool "BCM6345 watchdog timer support"
 	depends on WDT && (ARCH_BMIPS || ARCH_BCM68360 || \
-			   ARCH_BCM6858 || ARCH_BCM63158 || \
+			   ARCH_BCM6858 || BCM63158 || \
 			   ARCH_BCM6753)
 	help
 	  Select this to enable watchdog timer for BCM6345 SoCs.
-- 
2.37.1


[-- Attachment #2: S/MIME Cryptographic Signature --]
[-- Type: application/pkcs7-signature, Size: 4212 bytes --]

^ permalink raw reply related	[flat|nested] 12+ messages in thread

* [PATCH v3 4/5] MAINTAINERS: Add BCM63158 maintainer to BCMBCA entry
  2022-08-22 18:19 [PATCH v3 0/5] arm: bcmbca: move bcm63158 support under CONFIG_ARCH_BCMBCA William Zhang
                   ` (2 preceding siblings ...)
  2022-08-22 18:19 ` [PATCH v3 3/5] arm: bcmbca: replace ARCH_BCM63158 symbols in Kconfig with BCM63158 William Zhang
@ 2022-08-22 18:19 ` William Zhang
  2022-08-24 12:44   ` Philippe REYNES
  2022-08-22 18:19 ` [PATCH v3 5/5] arm: bcmbca: make reset_cpu function weak William Zhang
  4 siblings, 1 reply; 12+ messages in thread
From: William Zhang @ 2022-08-22 18:19 UTC (permalink / raw)
  To: U-Boot Mailing List
  Cc: rafal, anand.gore, joel.peshkin, dan.beygelman, philippe.reynes,
	f.fainelli, kursad.oney, William Zhang

[-- Attachment #1: Type: text/plain, Size: 702 bytes --]

Since ARCH_BCM63158 SoC support is merged into ARCH_BCMBCA, add BCM63158
maintainer Philippe to bcmbca maintainer list.

Signed-off-by: William Zhang <william.zhang@broadcom.com>
---

(no changes since v1)

 MAINTAINERS | 1 +
 1 file changed, 1 insertion(+)

diff --git a/MAINTAINERS b/MAINTAINERS
index 5b219d62f6bf..d0a5b2352cc8 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -213,6 +213,7 @@ M:	Anand Gore <anand.gore@broadcom.com>
 M:	William Zhang <william.zhang@broadcom.com>
 M:	Kursad Oney <kursad.oney@broadcom.com>
 M:	Joel Peshkin <joel.peshkin@broadcom.com>
+M:	Philippe Reynes <philippe.reynes@softathome.com>
 S:	Maintained
 F:	arch/arm/mach-bcmbca/
 F:	board/broadcom/bcmbca/
-- 
2.37.1


[-- Attachment #2: S/MIME Cryptographic Signature --]
[-- Type: application/pkcs7-signature, Size: 4212 bytes --]

^ permalink raw reply related	[flat|nested] 12+ messages in thread

* [PATCH v3 5/5] arm: bcmbca: make reset_cpu function weak
  2022-08-22 18:19 [PATCH v3 0/5] arm: bcmbca: move bcm63158 support under CONFIG_ARCH_BCMBCA William Zhang
                   ` (3 preceding siblings ...)
  2022-08-22 18:19 ` [PATCH v3 4/5] MAINTAINERS: Add BCM63158 maintainer to BCMBCA entry William Zhang
@ 2022-08-22 18:19 ` William Zhang
  2022-08-24 12:44   ` Philippe REYNES
  4 siblings, 1 reply; 12+ messages in thread
From: William Zhang @ 2022-08-22 18:19 UTC (permalink / raw)
  To: U-Boot Mailing List
  Cc: rafal, anand.gore, joel.peshkin, dan.beygelman, philippe.reynes,
	f.fainelli, kursad.oney, William Zhang, Tom Rini

[-- Attachment #1: Type: text/plain, Size: 731 bytes --]

BCM63158 carries the CONFIG_SYSRESET from the original configuration. It
provide reset_cpu function already so need to define weak version of the
dummy reset_cpu for other BCMBCA SoCs to avoid linking error.

Signed-off-by: William Zhang <william.zhang@broadcom.com>

---

Changes in v3:
-Fix reset_cpu function prototype.

 board/broadcom/bcmbca/board.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/board/broadcom/bcmbca/board.c b/board/broadcom/bcmbca/board.c
index 4aa1d659d5c7..bcecb4d78392 100644
--- a/board/broadcom/bcmbca/board.c
+++ b/board/broadcom/bcmbca/board.c
@@ -30,6 +30,6 @@ int print_cpuinfo(void)
 	return 0;
 }
 
-void reset_cpu(ulong addr)
+__weak void reset_cpu(void)
 {
 }
-- 
2.37.1


[-- Attachment #2: S/MIME Cryptographic Signature --]
[-- Type: application/pkcs7-signature, Size: 4212 bytes --]

^ permalink raw reply related	[flat|nested] 12+ messages in thread

* Re: [PATCH v3 1/5] arm: bcmbca: add bcm63158 SoC support under CONFIG_ARCH_BCMBCA
  2022-08-22 18:19 ` [PATCH v3 1/5] arm: bcmbca: add bcm63158 SoC " William Zhang
@ 2022-08-24 12:43   ` Philippe REYNES
  2022-10-31 14:45   ` Tom Rini
  1 sibling, 0 replies; 12+ messages in thread
From: Philippe REYNES @ 2022-08-24 12:43 UTC (permalink / raw)
  To: William Zhang, U-Boot Mailing List
  Cc: rafal, anand.gore, joel.peshkin, dan.beygelman, f.fainelli,
	kursad.oney, Andre Przywara, Christian Hewitt, Fabio Estevam,
	Marek Vasut, Samuel Holland, Simon Glass, Tom Rini, Tomer Yacoby,
	Ying-Chun Liu (PaulLiu)

Hi William,


Le 22/08/2022 à 20:19, William Zhang a écrit :
> 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>


>
> ---
>
> (no changes since v2)
>
> Changes in v2:
> - Remove extra nodes from bcm963158.dts and keep it as a generic minimun
> board support dts following other BCA chip convention.
>
>   MAINTAINERS                               |   1 +
>   arch/arm/dts/Makefile                     |   2 +
>   arch/arm/dts/bcm63158.dtsi                | 207 +++++++++++++---------
>   arch/arm/dts/bcm963158.dts                | 121 +------------
>   arch/arm/mach-bcmbca/Kconfig              |   8 +
>   arch/arm/mach-bcmbca/Makefile             |   1 +
>   arch/arm/mach-bcmbca/bcm63158/Kconfig     |  17 ++
>   arch/arm/mach-bcmbca/bcm63158/Makefile    |   5 +
>   arch/arm/mach-bcmbca/bcm63158/mmu_table.c |  32 ++++
>   board/broadcom/bcmbca/Kconfig             |   7 +
>   configs/bcm963158_defconfig               |  23 +++
>   include/configs/bcm963158.h               |  11 ++
>   12 files changed, 239 insertions(+), 196 deletions(-)
>   create mode 100644 arch/arm/mach-bcmbca/bcm63158/Kconfig
>   create mode 100644 arch/arm/mach-bcmbca/bcm63158/Makefile
>   create mode 100644 arch/arm/mach-bcmbca/bcm63158/mmu_table.c
>   create mode 100644 configs/bcm963158_defconfig
>   create mode 100644 include/configs/bcm963158.h
>
> diff --git a/MAINTAINERS b/MAINTAINERS
> index 3f250942ced1..5b219d62f6bf 100644
> --- a/MAINTAINERS
> +++ b/MAINTAINERS
> @@ -224,6 +224,7 @@ N:	bcm[9]?4912
>   N:	bcm[9]?63138
>   N:	bcm[9]?63146
>   N:	bcm[9]?63148
> +N:	bcm[9]?63158
>   N:	bcm[9]?63178
>   N:	bcm[9]?6756
>   N:	bcm[9]?6813
> diff --git a/arch/arm/dts/Makefile b/arch/arm/dts/Makefile
> index 9a6582d9c1c8..a7fc3d7d7021 100644
> --- a/arch/arm/dts/Makefile
> +++ b/arch/arm/dts/Makefile
> @@ -1175,6 +1175,8 @@ dtb-$(CONFIG_BCM63146) += \
>   	bcm963146.dtb
>   dtb-$(CONFIG_BCM63148) += \
>   	bcm963148.dtb
> +dtb-$(CONFIG_BCM63158) += \
> +	bcm963158.dtb
>   dtb-$(CONFIG_BCM63178) += \
>   	bcm963178.dtb
>   dtb-$(CONFIG_BCM6756) += \
> diff --git a/arch/arm/dts/bcm63158.dtsi b/arch/arm/dts/bcm63158.dtsi
> index 7dd285843849..8b179ba0fca8 100644
> --- a/arch/arm/dts/bcm63158.dtsi
> +++ b/arch/arm/dts/bcm63158.dtsi
> @@ -1,122 +1,167 @@
>   // SPDX-License-Identifier: GPL-2.0+
>   /*
>    * Copyright (C) 2019 Philippe Reynes <philippe.reynes@softathome.com>
> + * Copyright 2022 Broadcom Ltd.
>    */
>   
> -#include "skeleton64.dtsi"
> +#include <dt-bindings/interrupt-controller/irq.h>
> +#include <dt-bindings/interrupt-controller/arm-gic.h>
>   
>   / {
> -	compatible = "brcm,bcm63158";
> +	compatible = "brcm,bcm63158", "brcm,bcmbca";
>   	#address-cells = <2>;
>   	#size-cells = <2>;
>   
> -	aliases {
> -		spi0 = &hsspi;
> -	};
> +	interrupt-parent = <&gic>;
>   
>   	cpus {
>   		#address-cells = <2>;
>   		#size-cells = <0>;
> -		u-boot,dm-pre-reloc;
>   
> -		cpu0: cpu@0 {
> -			compatible = "arm,cortex-a53", "arm,armv8";
> +		B53_0: cpu@0 {
> +			compatible = "brcm,brahma-b53";
>   			device_type = "cpu";
>   			reg = <0x0 0x0>;
> -			next-level-cache = <&l2>;
> -			u-boot,dm-pre-reloc;
> +			next-level-cache = <&L2_0>;
> +			enable-method = "psci";
>   		};
>   
> -		cpu1: cpu@1 {
> -			compatible = "arm,cortex-a53", "arm,armv8";
> +		B53_1: cpu@1 {
> +			compatible = "brcm,brahma-b53";
>   			device_type = "cpu";
>   			reg = <0x0 0x1>;
> -			next-level-cache = <&l2>;
> -			u-boot,dm-pre-reloc;
> +			next-level-cache = <&L2_0>;
> +			enable-method = "psci";
>   		};
>   
> -		cpu2: cpu@2 {
> -			compatible = "arm,cortex-a53", "arm,armv8";
> +		B53_2: cpu@2 {
> +			compatible = "brcm,brahma-b53";
>   			device_type = "cpu";
>   			reg = <0x0 0x2>;
> -			next-level-cache = <&l2>;
> -			u-boot,dm-pre-reloc;
> +			next-level-cache = <&L2_0>;
> +			enable-method = "psci";
>   		};
>   
> -		cpu3: cpu@3 {
> -			compatible = "arm,cortex-a53", "arm,armv8";
> +		B53_3: cpu@3 {
> +			compatible = "brcm,brahma-b53";
>   			device_type = "cpu";
>   			reg = <0x0 0x3>;
> -			next-level-cache = <&l2>;
> -			u-boot,dm-pre-reloc;
> +			next-level-cache = <&L2_0>;
> +			enable-method = "psci";
>   		};
>   
> -		l2: l2-cache0 {
> +		L2_0: l2-cache0 {
>   			compatible = "cache";
> -			u-boot,dm-pre-reloc;
>   		};
>   	};
>   
> +	timer {
> +		compatible = "arm,armv8-timer";
> +		interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
> +			<GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
> +			<GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
> +			<GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>;
> +	};
> +
> +	pmu: pmu {
> +		compatible = "arm,cortex-a53-pmu";
> +		interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>,
> +			<GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>,
> +			<GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>,
> +			<GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>;
> +		interrupt-affinity = <&B53_0>, <&B53_1>,
> +			<&B53_2>, <&B53_3>;
> +	};
> +
>   	clocks {
> -		compatible = "simple-bus";
> -		#address-cells = <2>;
> -		#size-cells = <2>;
> -		ranges;
>   		u-boot,dm-pre-reloc;
> -
> -		periph_osc: periph-osc {
> +		periph_clk: periph-clk {
>   			compatible = "fixed-clock";
>   			#clock-cells = <0>;
> -			clock-frequency = <0xbebc200>;
> -			u-boot,dm-pre-reloc;
> +			clock-frequency = <200000000>;
>   		};
>   
>   		hsspi_pll: hsspi-pll {
>   			compatible = "fixed-factor-clock";
>   			#clock-cells = <0>;
> -			clocks = <&periph_osc>;
> +			clocks = <&periph_clk>;
>   			clock-mult = <2>;
>   			clock-div = <1>;
>   		};
>   
> -		refclk50mhz: refclk50mhz {
> -			compatible = "fixed-clock";
> +		uart_clk: uart-clk {
> +			compatible = "fixed-factor-clock";
>   			#clock-cells = <0>;
> -			clock-frequency = <50000000>;
> +			clocks = <&periph_clk>;
> +			clock-div = <4>;
> +			clock-mult = <1>;
> +		};
> +
> +		wdt_clk: wdt-clk {
> +			compatible = "fixed-factor-clock";
> +			#clock-cells = <0>;
> +			clocks = <&periph_clk>;
> +			clock-div = <4>;
> +			clock-mult = <1>;
>   		};
>   	};
>   
> -	ubus {
> +	psci {
> +		compatible = "arm,psci-0.2";
> +		method = "smc";
> +	};
> +
> +	axi@81000000 {
>   		compatible = "simple-bus";
> -		#address-cells = <2>;
> -		#size-cells = <2>;
> +		#address-cells = <1>;
> +		#size-cells = <1>;
> +		ranges = <0x0 0x0 0x81000000 0x8000>;
> +
> +		gic: interrupt-controller@1000 {
> +			compatible = "arm,gic-400";
> +			#interrupt-cells = <3>;
> +			interrupt-controller;
> +			interrupts = <GIC_PPI 9 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>;
> +			reg = <0x1000 0x1000>,
> +				<0x2000 0x2000>,
> +				<0x4000 0x2000>,
> +				<0x6000 0x2000>;
> +		};
> +	};
> +
> +	bus@ff800000 {
> +		compatible = "simple-bus";
> +		#address-cells = <1>;
> +		#size-cells = <1>;
> +		ranges = <0x0 0x0 0xff800000 0x800000>;
>   		u-boot,dm-pre-reloc;
>   
> -		uart0: serial@ff812000 {
> +		uart0: serial@12000 {
>   			compatible = "arm,pl011", "arm,primecell";
> -			reg = <0x0 0xff812000 0x0 0x1000>;
> -			clock = <50000000>;
> -
> +			reg = <0x12000 0x1000>;
> +			interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>;
> +			clocks = <&uart_clk>, <&uart_clk>;
> +			clock-names = "uartclk", "apb_pclk";
>   			status = "disabled";
>   		};
>   
> -		leds: led-controller@ff800800 {
> +		leds: led-controller@800 {
>   			compatible = "brcm,bcm6858-leds";
> -			reg = <0x0 0xff800800 0x0 0xe4>;
> +			reg = <0x800 0xe4>;
>   
>   			status = "disabled";
>   		};
>   
> -		wdt1: watchdog@ff800480 {
> +		wdt1: watchdog@480 {
>   			compatible = "brcm,bcm6345-wdt";
> -			reg = <0x0 0xff800480 0x0 0x14>;
> -			clocks = <&refclk50mhz>;
> +			reg = <0x480 0x14>;
> +			clocks = <&wdt_clk>;
>   		};
>   
> -		wdt2: watchdog@ff8004c0 {
> +		wdt2: watchdog@4c0 {
>   			compatible = "brcm,bcm6345-wdt";
> -			reg = <0x0 0xff8004c0 0x0 0x14>;
> -			clocks = <&refclk50mhz>;
> +			reg = <0x4c0 0x14>;
> +			clocks = <&wdt_clk>;
>   		};
>   
>   		wdt-reboot {
> @@ -124,91 +169,91 @@
>   			wdt = <&wdt1>;
>   		};
>   
> -		gpio0: gpio-controller@0xff800500 {
> +		gpio0: gpio-controller@500 {
>   			compatible = "brcm,bcm6345-gpio";
> -			reg = <0x0 0xff800500 0x0 0x4>,
> -			      <0x0 0xff800520 0x0 0x4>;
> +			reg = <0x500 0x4>,
> +			      <0x520 0x4>;
>   			gpio-controller;
>   			#gpio-cells = <2>;
>   
>   			status = "disabled";
>   		};
>   
> -		gpio1: gpio-controller@0xff800504 {
> +		gpio1: gpio-controller@504 {
>   			compatible = "brcm,bcm6345-gpio";
> -			reg = <0x0 0xff800504 0x0 0x4>,
> -			      <0x0 0xff800524 0x0 0x4>;
> +			reg = <0x504 0x4>,
> +			      <0x524 0x4>;
>   			gpio-controller;
>   			#gpio-cells = <2>;
>   
>   			status = "disabled";
>   		};
>   
> -		gpio2: gpio-controller@0xff800508 {
> +		gpio2: gpio-controller@508 {
>   			compatible = "brcm,bcm6345-gpio";
> -			reg = <0x0 0xff800508 0x0 0x4>,
> -			      <0x0 0xff800528 0x0 0x4>;
> +			reg = <0x508 0x4>,
> +			      <0x528 0x4>;
>   			gpio-controller;
>   			#gpio-cells = <2>;
>   
>   			status = "disabled";
>   		};
>   
> -		gpio3: gpio-controller@0xff80050c {
> +		gpio3: gpio-controller@50c {
>   			compatible = "brcm,bcm6345-gpio";
> -			reg = <0x0 0xff80050c 0x0 0x4>,
> -			      <0x0 0xff80052c 0x0 0x4>;
> +			reg = <0x50c 0x4>,
> +			      <0x52c 0x4>;
>   			gpio-controller;
>   			#gpio-cells = <2>;
>   
>   			status = "disabled";
>   		};
>   
> -		gpio4: gpio-controller@0xff800510 {
> +		gpio4: gpio-controller@510 {
>   			compatible = "brcm,bcm6345-gpio";
> -			reg = <0x0 0xff800510 0x0 0x4>,
> -			      <0x0 0xff800530 0x0 0x4>;
> +			reg = <0x510 0x4>,
> +			      <0x530 0x4>;
>   			gpio-controller;
>   			#gpio-cells = <2>;
>   
>   			status = "disabled";
>   		};
>   
> -		gpio5: gpio-controller@0xff800514 {
> +		gpio5: gpio-controller@514 {
>   			compatible = "brcm,bcm6345-gpio";
> -			reg = <0x0 0xff800514 0x0 0x4>,
> -			      <0x0 0xff800534 0x0 0x4>;
> +			reg = <0x514 0x4>,
> +			      <0x534 0x4>;
>   			gpio-controller;
>   			#gpio-cells = <2>;
>   
>   			status = "disabled";
>   		};
>   
> -		gpio6: gpio-controller@0xff800518 {
> +		gpio6: gpio-controller@518 {
>   			compatible = "brcm,bcm6345-gpio";
> -			reg = <0x0 0xff800518 0x0 0x4>,
> -			      <0x0 0xff800538 0x0 0x4>;
> +			reg = <0x518 0x4>,
> +			      <0x538 0x4>;
>   			gpio-controller;
>   			#gpio-cells = <2>;
>   
>   			status = "disabled";
>   		};
>   
> -		gpio7: gpio-controller@0xff80051c {
> +		gpio7: gpio-controller@51c {
>   			compatible = "brcm,bcm6345-gpio";
> -			reg = <0x0 0xff80051c 0x0 0x4>,
> -			      <0x0 0xff80053c 0x0 0x4>;
> +			reg = <0x51c 0x4>,
> +			      <0x53c 0x4>;
>   			gpio-controller;
>   			#gpio-cells = <2>;
>   
>   			status = "disabled";
>   		};
>   
> -		hsspi: spi-controller@ff801000 {
> +		hsspi: spi-controller@1000 {
>   			compatible = "brcm,bcm6328-hsspi";
>   			#address-cells = <1>;
>   			#size-cells = <0>;
> -			reg = <0x0 0xff801000 0x0 0x600>;
> +			reg = <0x1000 0x600>;
>   			clocks = <&hsspi_pll>, <&hsspi_pll>;
>   			clock-names = "hsspi", "pll";
>   			spi-max-frequency = <100000000>;
> @@ -217,14 +262,14 @@
>   			status = "disabled";
>   		};
>   
> -		nand: nand-controller@ff801800 {
> +		nand: nand-controller@1800 {
>   			compatible = "brcm,nand-bcm63158",
>   				     "brcm,brcmnand-v5.0",
>   				     "brcm,brcmnand";
>   			reg-names = "nand", "nand-int-base", "nand-cache";
> -			reg = <0x0 0xff801800 0x0 0x180>,
> -			      <0x0 0xff802000 0x0 0x10>,
> -			      <0x0 0xff801c00 0x0 0x200>;
> +			reg = <0x1800 0x180>,
> +			      <0x2000 0x10>,
> +			      <0x1c00 0x200>;
>   			parameter-page-big-endian = <0>;
>   
>   			status = "disabled";
> diff --git a/arch/arm/dts/bcm963158.dts b/arch/arm/dts/bcm963158.dts
> index c2bdd332745d..eba07e0b1ca6 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>;
> -	};
> -};
> diff --git a/arch/arm/mach-bcmbca/Kconfig b/arch/arm/mach-bcmbca/Kconfig
> index eb03ef42b8d2..d78618820b58 100644
> --- a/arch/arm/mach-bcmbca/Kconfig
> +++ b/arch/arm/mach-bcmbca/Kconfig
> @@ -48,6 +48,13 @@ config BCM63148
>   	select DM_SERIAL
>   	select BCM6345_SERIAL
>   
> +config BCM63158
> +	bool "Support for Broadcom 63158 Family"
> +	select ARM64
> +	select SYS_ARCH_TIMER
> +	select DM_SERIAL
> +	select PL01X_SERIAL
> +
>   config BCM63178
>   	bool "Support for Broadcom 63178 Family"
>   	select SYS_ARCH_TIMER
> @@ -89,6 +96,7 @@ source "arch/arm/mach-bcmbca/bcm4912/Kconfig"
>   source "arch/arm/mach-bcmbca/bcm63138/Kconfig"
>   source "arch/arm/mach-bcmbca/bcm63146/Kconfig"
>   source "arch/arm/mach-bcmbca/bcm63148/Kconfig"
> +source "arch/arm/mach-bcmbca/bcm63158/Kconfig"
>   source "arch/arm/mach-bcmbca/bcm63178/Kconfig"
>   source "arch/arm/mach-bcmbca/bcm6756/Kconfig"
>   source "arch/arm/mach-bcmbca/bcm6813/Kconfig"
> diff --git a/arch/arm/mach-bcmbca/Makefile b/arch/arm/mach-bcmbca/Makefile
> index c8c344ba7271..e5df60e7648b 100644
> --- a/arch/arm/mach-bcmbca/Makefile
> +++ b/arch/arm/mach-bcmbca/Makefile
> @@ -9,6 +9,7 @@ obj-$(CONFIG_BCM4912) += bcm4912/
>   obj-$(CONFIG_BCM63138) += bcm63138/
>   obj-$(CONFIG_BCM63146) += bcm63146/
>   obj-$(CONFIG_BCM63148) += bcm63148/
> +obj-$(CONFIG_BCM63158) += bcm63158/
>   obj-$(CONFIG_BCM63178) += bcm63178/
>   obj-$(CONFIG_BCM6756) += bcm6756/
>   obj-$(CONFIG_BCM6813) += bcm6813/
> diff --git a/arch/arm/mach-bcmbca/bcm63158/Kconfig b/arch/arm/mach-bcmbca/bcm63158/Kconfig
> new file mode 100644
> index 000000000000..b77444369ec9
> --- /dev/null
> +++ b/arch/arm/mach-bcmbca/bcm63158/Kconfig
> @@ -0,0 +1,17 @@
> +# SPDX-License-Identifier: GPL-2.0+
> +#
> +# (C) Copyright 2022 Broadcom Ltd
> +#
> +
> +if BCM63158
> +
> +config TARGET_BCM963158
> +	bool "Broadcom 63158 Reference Board"
> +	depends on ARCH_BCMBCA
> +
> +config SYS_SOC
> +	default "bcm63158"
> +
> +source "board/broadcom/bcmbca/Kconfig"
> +
> +endif
> diff --git a/arch/arm/mach-bcmbca/bcm63158/Makefile b/arch/arm/mach-bcmbca/bcm63158/Makefile
> new file mode 100644
> index 000000000000..62624977034b
> --- /dev/null
> +++ b/arch/arm/mach-bcmbca/bcm63158/Makefile
> @@ -0,0 +1,5 @@
> +# SPDX-License-Identifier: GPL-2.0+
> +#
> +# (C) Copyright 2022 Broadcom Ltd
> +#
> +obj-y += mmu_table.o
> diff --git a/arch/arm/mach-bcmbca/bcm63158/mmu_table.c b/arch/arm/mach-bcmbca/bcm63158/mmu_table.c
> new file mode 100644
> index 000000000000..fe7efb30e22b
> --- /dev/null
> +++ b/arch/arm/mach-bcmbca/bcm63158/mmu_table.c
> @@ -0,0 +1,32 @@
> +// SPDX-License-Identifier: GPL-2.0+
> +/*
> + *  Copyright 2022 Broadcom Ltd.
> + */
> +#include <common.h>
> +#include <asm/armv8/mmu.h>
> +#include <linux/sizes.h>
> +
> +static struct mm_region bcm963158_mem_map[] = {
> +		{
> +				.virt = 0x00000000UL,
> +				.phys = 0x00000000UL,
> +				.size = 1UL * SZ_1G,
> +				.attrs = PTE_BLOCK_MEMTYPE(MT_NORMAL) |
> +						PTE_BLOCK_INNER_SHARE
> +		},
> +		{
> +				/* SoC peripheral */
> +				.virt = 0xff800000UL,
> +				.phys = 0xff800000UL,
> +				.size = 0x100000,
> +				.attrs = PTE_BLOCK_MEMTYPE(MT_DEVICE_NGNRNE) |
> +						PTE_BLOCK_NON_SHARE |
> +						PTE_BLOCK_PXN | PTE_BLOCK_UXN
> +		},
> +		{
> +				/* List terminator */
> +				0,
> +		}
> +};
> +
> +struct mm_region *mem_map = bcm963158_mem_map;
> diff --git a/board/broadcom/bcmbca/Kconfig b/board/broadcom/bcmbca/Kconfig
> index c9155fb48e0a..13815fd7975f 100644
> --- a/board/broadcom/bcmbca/Kconfig
> +++ b/board/broadcom/bcmbca/Kconfig
> @@ -51,6 +51,13 @@ config SYS_CONFIG_NAME
>   
>   endif
>   
> +if TARGET_BCM963158
> +
> +config SYS_CONFIG_NAME
> +	default "bcm963158"
> +
> +endif
> +
>   if TARGET_BCM963178
>   
>   config SYS_CONFIG_NAME
> diff --git a/configs/bcm963158_defconfig b/configs/bcm963158_defconfig
> new file mode 100644
> index 000000000000..b585adbd9b37
> --- /dev/null
> +++ b/configs/bcm963158_defconfig
> @@ -0,0 +1,23 @@
> +CONFIG_ARM=y
> +CONFIG_COUNTER_FREQUENCY=50000000
> +CONFIG_ARCH_BCMBCA=y
> +CONFIG_SYS_TEXT_BASE=0x01000000
> +CONFIG_SYS_MALLOC_LEN=0x2000000
> +CONFIG_SYS_MALLOC_F_LEN=0x8000
> +CONFIG_BCM63158=y
> +CONFIG_TARGET_BCM963158=y
> +CONFIG_NR_DRAM_BANKS=2
> +CONFIG_DEFAULT_DEVICE_TREE="bcm963158"
> +CONFIG_IDENT_STRING=" Broadcom BCM63158"
> +CONFIG_SYS_LOAD_ADDR=0x01000000
> +CONFIG_ENV_VARS_UBOOT_CONFIG=y
> +CONFIG_HAS_CUSTOM_SYS_INIT_SP_ADDR=y
> +CONFIG_CUSTOM_SYS_INIT_SP_ADDR=0x2000000
> +CONFIG_OF_STDOUT_VIA_ALIAS=y
> +CONFIG_DISPLAY_BOARDINFO_LATE=y
> +CONFIG_HUSH_PARSER=y
> +CONFIG_SYS_MAXARGS=64
> +CONFIG_SYS_BOOTM_LEN=0x4000000
> +CONFIG_CMD_CACHE=y
> +CONFIG_OF_EMBED=y
> +CONFIG_CLK=y
> diff --git a/include/configs/bcm963158.h b/include/configs/bcm963158.h
> new file mode 100644
> index 000000000000..b15c4111c967
> --- /dev/null
> +++ b/include/configs/bcm963158.h
> @@ -0,0 +1,11 @@
> +/* SPDX-License-Identifier: GPL-2.0+ */
> +/*
> + * (C) Copyright 2022 Broadcom Ltd.
> + */
> +
> +#ifndef __BCM963158_H
> +#define __BCM963158_H
> +
> +#define CONFIG_SYS_SDRAM_BASE		0x00000000
> +
> +#endif

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH v3 2/5] arm: bcmbca: remove bcm63158 support under CONFIG_ARCH_BCM63158
  2022-08-22 18:19 ` [PATCH v3 2/5] arm: bcmbca: remove bcm63158 support under CONFIG_ARCH_BCM63158 William Zhang
@ 2022-08-24 12:44   ` Philippe REYNES
  0 siblings, 0 replies; 12+ messages in thread
From: Philippe REYNES @ 2022-08-24 12:44 UTC (permalink / raw)
  To: William Zhang, U-Boot Mailing List
  Cc: rafal, anand.gore, joel.peshkin, dan.beygelman, f.fainelli,
	kursad.oney, Andre Przywara, Bharat Gooty, Christian Hewitt,
	Fabio Estevam, Rayagonda Kokatanur, Rick Chen, Samuel Holland,
	Sean Anderson, Simon Glass, Tom Rini, Tomer Yacoby,
	Wolfgang Denk, Ying-Chun Liu (PaulLiu)

Hi William,


Le 22/08/2022 à 20:19, William Zhang a écrit :
> Now that BCM63158 is supported under CONFIG_ARCH_BCMBCA and
> CONFIG_BCM63158, remove the original ARCH_BCM63158 support and migrate
> configuration settings.
>
> Signed-off-by: William Zhang <william.zhang@broadcom.com>


Reviewed-by: Philippe Reynes <philippe.reynes@softathome.com>


>
> ---
>
> (no changes since v2)
>
> Changes in v2:
> - Remove bcm963158_ram_defconfig per discussion with Philippe as a
> basic config version of bcm963158_defconfig is now added.
>
>   arch/arm/Kconfig                     |  8 +---
>   arch/arm/dts/Makefile                |  3 --
>   board/broadcom/bcm963158/Kconfig     | 17 -------
>   board/broadcom/bcm963158/MAINTAINERS |  6 ---
>   board/broadcom/bcm963158/Makefile    |  3 --
>   board/broadcom/bcm963158/bcm963158.c | 62 -------------------------
>   configs/bcm963158_ram_defconfig      | 67 ----------------------------
>   include/configs/bcm963158.h          |  4 ++
>   include/configs/broadcom_bcm963158.h | 32 -------------
>   9 files changed, 5 insertions(+), 197 deletions(-)
>   delete mode 100644 board/broadcom/bcm963158/Kconfig
>   delete mode 100644 board/broadcom/bcm963158/MAINTAINERS
>   delete mode 100644 board/broadcom/bcm963158/Makefile
>   delete mode 100644 board/broadcom/bcm963158/bcm963158.c
>   delete mode 100644 configs/bcm963158_ram_defconfig
>   delete mode 100644 include/configs/broadcom_bcm963158.h
>
> diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
> index 0d4903a2eb5b..da4defa08466 100644
> --- a/arch/arm/Kconfig
> +++ b/arch/arm/Kconfig
> @@ -665,12 +665,6 @@ config ARCH_BCM283X
>   	imply CMD_DM
>   	imply FAT_WRITE
>   
> -config ARCH_BCM63158
> -	bool "Broadcom BCM63158 family"
> -	select DM
> -	select OF_CONTROL
> -	imply CMD_DM
> -
>   config ARCH_BCM6753
>   	bool "Broadcom BCM6753 family"
>   	select CPU_V7A
> @@ -706,6 +700,7 @@ config ARCH_BCMBCA
>   	bool "Broadcom broadband chip family"
>   	select DM
>   	select OF_CONTROL
> +	imply CMD_DM
>   
>   config TARGET_VEXPRESS_CA9X4
>   	bool "Support vexpress_ca9x4"
> @@ -2284,7 +2279,6 @@ source "board/Marvell/octeontx2/Kconfig"
>   source "board/armltd/vexpress/Kconfig"
>   source "board/armltd/vexpress64/Kconfig"
>   source "board/cortina/presidio-asic/Kconfig"
> -source "board/broadcom/bcm963158/Kconfig"
>   source "board/broadcom/bcm96753ref/Kconfig"
>   source "board/broadcom/bcm968360bg/Kconfig"
>   source "board/broadcom/bcm968580xref/Kconfig"
> diff --git a/arch/arm/dts/Makefile b/arch/arm/dts/Makefile
> index a7fc3d7d7021..c55bc3569662 100644
> --- a/arch/arm/dts/Makefile
> +++ b/arch/arm/dts/Makefile
> @@ -1147,9 +1147,6 @@ dtb-$(CONFIG_ARCH_BCM283X) += \
>   	bcm2837-rpi-cm3-io3.dtb \
>   	bcm2711-rpi-4-b.dtb
>   
> -dtb-$(CONFIG_ARCH_BCM63158) += \
> -	bcm963158.dtb
> -
>   dtb-$(CONFIG_ARCH_BCM68360) += \
>   	bcm968360bg.dtb
>   
> diff --git a/board/broadcom/bcm963158/Kconfig b/board/broadcom/bcm963158/Kconfig
> deleted file mode 100644
> index 08a8bc1c14d3..000000000000
> --- a/board/broadcom/bcm963158/Kconfig
> +++ /dev/null
> @@ -1,17 +0,0 @@
> -if TARGET_BCM963158
> -
> -config SYS_VENDOR
> -	default "broadcom"
> -
> -config SYS_BOARD
> -	default "bcm963158"
> -
> -config SYS_CONFIG_NAME
> -	default "broadcom_bcm963158"
> -
> -endif
> -
> -config TARGET_BCM963158
> -	bool "Support Broadcom bcm963158"
> -	depends on ARCH_BCM63158
> -	select ARM64
> diff --git a/board/broadcom/bcm963158/MAINTAINERS b/board/broadcom/bcm963158/MAINTAINERS
> deleted file mode 100644
> index d28d971f9d36..000000000000
> --- a/board/broadcom/bcm963158/MAINTAINERS
> +++ /dev/null
> @@ -1,6 +0,0 @@
> -BROADCOM BCM963158
> -M:	Philippe Reynes <philippe.reynes@softathome.com>
> -S:	Maintained
> -F:	board/broadcom/bcm963158/
> -F:	include/configs/broadcom_bcm963158.h
> -F:	configs/bcm963158_ram_defconfig
> diff --git a/board/broadcom/bcm963158/Makefile b/board/broadcom/bcm963158/Makefile
> deleted file mode 100644
> index 0a902c9cf618..000000000000
> --- a/board/broadcom/bcm963158/Makefile
> +++ /dev/null
> @@ -1,3 +0,0 @@
> -# SPDX-License-Identifier: GPL-2.0+
> -
> -obj-y	+= bcm963158.o
> diff --git a/board/broadcom/bcm963158/bcm963158.c b/board/broadcom/bcm963158/bcm963158.c
> deleted file mode 100644
> index 9feaee3c0fc4..000000000000
> --- a/board/broadcom/bcm963158/bcm963158.c
> +++ /dev/null
> @@ -1,62 +0,0 @@
> -// SPDX-License-Identifier: GPL-2.0+
> -/*
> - * Copyright (C) 2019 Philippe Reynes <philippe.reynes@softathome.com>
> - */
> -
> -#include <common.h>
> -#include <fdtdec.h>
> -#include <init.h>
> -#include <linux/io.h>
> -
> -#ifdef CONFIG_ARM64
> -#include <asm/armv8/mmu.h>
> -
> -static struct mm_region broadcom_bcm963158_mem_map[] = {
> -	{
> -		/* RAM */
> -		.virt = 0x00000000UL,
> -		.phys = 0x00000000UL,
> -		.size = 8UL * SZ_1G,
> -		.attrs = PTE_BLOCK_MEMTYPE(MT_NORMAL) |
> -			 PTE_BLOCK_INNER_SHARE
> -	}, {
> -		/* SoC */
> -		.virt = 0x80000000UL,
> -		.phys = 0x80000000UL,
> -		.size = 0xff80000000UL,
> -		.attrs = PTE_BLOCK_MEMTYPE(MT_DEVICE_NGNRNE) |
> -			 PTE_BLOCK_NON_SHARE |
> -			 PTE_BLOCK_PXN | PTE_BLOCK_UXN
> -	}, {
> -		/* List terminator */
> -		0,
> -	}
> -};
> -
> -struct mm_region *mem_map = broadcom_bcm963158_mem_map;
> -#endif
> -
> -int board_init(void)
> -{
> -	return 0;
> -}
> -
> -int dram_init(void)
> -{
> -	if (fdtdec_setup_mem_size_base() != 0)
> -		printf("fdtdec_setup_mem_size_base() has failed\n");
> -
> -	return 0;
> -}
> -
> -int dram_init_banksize(void)
> -{
> -	fdtdec_setup_memory_banksize();
> -
> -	return 0;
> -}
> -
> -int print_cpuinfo(void)
> -{
> -	return 0;
> -}
> diff --git a/configs/bcm963158_ram_defconfig b/configs/bcm963158_ram_defconfig
> deleted file mode 100644
> index 424eca7946b8..000000000000
> --- a/configs/bcm963158_ram_defconfig
> +++ /dev/null
> @@ -1,67 +0,0 @@
> -CONFIG_ARM=y
> -CONFIG_SKIP_LOWLEVEL_INIT=y
> -# CONFIG_ARM64_SUPPORT_AARCH32 is not set
> -CONFIG_ARCH_BCM63158=y
> -CONFIG_SYS_TEXT_BASE=0x10000000
> -CONFIG_SYS_MALLOC_LEN=0x100000
> -CONFIG_SYS_MALLOC_F_LEN=0x8000
> -CONFIG_NR_DRAM_BANKS=1
> -CONFIG_ENV_SIZE=0x2000
> -CONFIG_DM_GPIO=y
> -CONFIG_DEFAULT_DEVICE_TREE="bcm963158"
> -CONFIG_SYS_LOAD_ADDR=0x10000000
> -CONFIG_TARGET_BCM963158=y
> -CONFIG_ENV_VARS_UBOOT_CONFIG=y
> -CONFIG_HAS_CUSTOM_SYS_INIT_SP_ADDR=y
> -CONFIG_CUSTOM_SYS_INIT_SP_ADDR=0x11000000
> -CONFIG_FIT=y
> -CONFIG_FIT_SIGNATURE=y
> -CONFIG_FIT_RSASSA_PSS=y
> -CONFIG_FIT_VERBOSE=y
> -CONFIG_LEGACY_IMAGE_FORMAT=y
> -CONFIG_SUPPORT_RAW_INITRD=y
> -CONFIG_DISPLAY_BOARDINFO_LATE=y
> -CONFIG_HUSH_PARSER=y
> -CONFIG_SYS_MAXARGS=24
> -CONFIG_SYS_CBSIZE=256
> -CONFIG_SYS_PBSIZE=276
> -CONFIG_SYS_BOOTM_LEN=0x1000000
> -# CONFIG_CMD_LZMADEC is not set
> -# CONFIG_CMD_UNZIP is not set
> -# CONFIG_CMD_FLASH is not set
> -CONFIG_CMD_GPIO=y
> -CONFIG_CMD_MTD=y
> -CONFIG_CMD_NAND=y
> -CONFIG_CMD_CACHE=y
> -CONFIG_DOS_PARTITION=y
> -CONFIG_ISO_PARTITION=y
> -CONFIG_EFI_PARTITION=y
> -CONFIG_SYS_RELOC_GD_ENV_ADDR=y
> -# CONFIG_NET is not set
> -CONFIG_BLK=y
> -CONFIG_CLK=y
> -CONFIG_BCM6345_GPIO=y
> -CONFIG_LED=y
> -CONFIG_LED_BCM6858=y
> -CONFIG_LED_BLINK=y
> -# CONFIG_MMC is not set
> -CONFIG_MTD=y
> -CONFIG_DM_MTD=y
> -CONFIG_MTD_RAW_NAND=y
> -CONFIG_NAND_BRCMNAND=y
> -CONFIG_NAND_BRCMNAND_63158=y
> -CONFIG_SYS_NAND_ONFI_DETECTION=y
> -CONFIG_DM_SPI_FLASH=y
> -CONFIG_SPI_FLASH_MACRONIX=y
> -CONFIG_SPECIFY_CONSOLE_INDEX=y
> -CONFIG_CONS_INDEX=0
> -CONFIG_DM_SERIAL=y
> -CONFIG_SERIAL_SEARCH_ALL=y
> -CONFIG_PL01X_SERIAL=y
> -CONFIG_SPI=y
> -CONFIG_DM_SPI=y
> -CONFIG_BCM63XX_HSSPI=y
> -CONFIG_SYSRESET=y
> -CONFIG_SYSRESET_WATCHDOG=y
> -CONFIG_WDT_BCM6345=y
> -# CONFIG_GENERATE_SMBIOS_TABLE is not set
> diff --git a/include/configs/bcm963158.h b/include/configs/bcm963158.h
> index b15c4111c967..f47396335868 100644
> --- a/include/configs/bcm963158.h
> +++ b/include/configs/bcm963158.h
> @@ -8,4 +8,8 @@
>   
>   #define CONFIG_SYS_SDRAM_BASE		0x00000000
>   
> +#ifdef CONFIG_MTD_RAW_NAND
> +#define CONFIG_SYS_MAX_NAND_DEVICE	1
> +#endif /* CONFIG_MTD_RAW_NAND */
> +
>   #endif
> diff --git a/include/configs/broadcom_bcm963158.h b/include/configs/broadcom_bcm963158.h
> deleted file mode 100644
> index 0c8d352be97c..000000000000
> --- a/include/configs/broadcom_bcm963158.h
> +++ /dev/null
> @@ -1,32 +0,0 @@
> -/* SPDX-License-Identifier: GPL-2.0+ */
> -/*
> - * Copyright (C) 2019 Philippe Reynes <philippe.reynes@softathome.com>
> - */
> -
> -#include <linux/sizes.h>
> -
> -/*
> - * common
> - */
> -
> -/* UART */
> -#define CONFIG_SYS_BAUDRATE_TABLE	{ 9600, 19200, 38400, 57600, 115200, \
> -					  230400, 500000, 1500000 }
> -/* Memory usage */
> -
> -/*
> - * 63158
> - */
> -
> -/* RAM */
> -#define CONFIG_SYS_SDRAM_BASE		0x00000000
> -
> -/* U-Boot */
> -
> -#ifdef CONFIG_MTD_RAW_NAND
> -#define CONFIG_SYS_MAX_NAND_DEVICE	1
> -#endif /* CONFIG_MTD_RAW_NAND */
> -
> -/*
> - * bcm963158
> - */

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH v3 3/5] arm: bcmbca: replace ARCH_BCM63158 symbols in Kconfig with BCM63158
  2022-08-22 18:19 ` [PATCH v3 3/5] arm: bcmbca: replace ARCH_BCM63158 symbols in Kconfig with BCM63158 William Zhang
@ 2022-08-24 12:44   ` Philippe REYNES
  0 siblings, 0 replies; 12+ messages in thread
From: Philippe REYNES @ 2022-08-24 12:44 UTC (permalink / raw)
  To: William Zhang, U-Boot Mailing List
  Cc: rafal, anand.gore, joel.peshkin, dan.beygelman, f.fainelli,
	kursad.oney, Andre Przywara, Dario Binacchi, Eddie James,
	Hannes Schmelzer, Ivan Vozvakhov, Jagan Teki, Michael Trimarchi,
	Michal Simek, Simon Glass, Stefan Roese, T Karthik Reddy,
	Tom Rini

Hi William,


Le 22/08/2022 à 20:19, William Zhang a écrit :
> As CONFIG_ARCH_BCM63158 is replaced with CONFIG_BCM63158, update the
> Kconfig to use the new config symbol.
>
> Signed-off-by: William Zhang <william.zhang@broadcom.com>


Reviewed-by: Philippe Reynes <philippe.reynes@softathome.com>


>
> ---
>
> Changes in v3:
> -Update subject line to be more clear
>
>   drivers/gpio/Kconfig         | 2 +-
>   drivers/led/Kconfig          | 2 +-
>   drivers/mtd/nand/raw/Kconfig | 2 +-
>   drivers/spi/Kconfig          | 2 +-
>   drivers/watchdog/Kconfig     | 2 +-
>   5 files changed, 5 insertions(+), 5 deletions(-)
>
> diff --git a/drivers/gpio/Kconfig b/drivers/gpio/Kconfig
> index aaa152fae73b..83f4f5089992 100644
> --- a/drivers/gpio/Kconfig
> +++ b/drivers/gpio/Kconfig
> @@ -111,7 +111,7 @@ config BCM2835_GPIO
>   config BCM6345_GPIO
>   	bool "BCM6345 GPIO driver"
>   	depends on DM_GPIO && (ARCH_BMIPS || ARCH_BCM68360 || \
> -			       ARCH_BCM6858 || ARCH_BCM63158 || \
> +			       ARCH_BCM6858 || BCM63158 || \
>   			       ARCH_BCM6753)
>   	help
>   	  This driver supports the GPIO banks on BCM6345 SoCs.
> diff --git a/drivers/led/Kconfig b/drivers/led/Kconfig
> index ccdd7d7395c8..d777414dda8d 100644
> --- a/drivers/led/Kconfig
> +++ b/drivers/led/Kconfig
> @@ -37,7 +37,7 @@ config LED_BCM6753
>   
>   config LED_BCM6858
>   	bool "LED Support for BCM6858"
> -	depends on LED && (ARCH_BCM68360 || ARCH_BCM6858 || ARCH_BCM63158)
> +	depends on LED && (ARCH_BCM68360 || ARCH_BCM6858 || BCM63158)
>   	help
>   	  This option enables support for LEDs connected to the BCM6858
>   	  HW has blinking capabilities and up to 32 LEDs can be controlled.
> diff --git a/drivers/mtd/nand/raw/Kconfig b/drivers/mtd/nand/raw/Kconfig
> index ce67d1abde25..24c27b6ecf7f 100644
> --- a/drivers/mtd/nand/raw/Kconfig
> +++ b/drivers/mtd/nand/raw/Kconfig
> @@ -121,7 +121,7 @@ config NAND_BRCMNAND_6858
>   
>   config NAND_BRCMNAND_63158
>          bool "Support Broadcom NAND controller on bcm63158"
> -       depends on NAND_BRCMNAND && ARCH_BCM63158
> +       depends on NAND_BRCMNAND && BCM63158
>          help
>            Enable support for broadcom nand driver on bcm63158.
>   
> diff --git a/drivers/spi/Kconfig b/drivers/spi/Kconfig
> index 75b794548b22..0a666eee80e7 100644
> --- a/drivers/spi/Kconfig
> +++ b/drivers/spi/Kconfig
> @@ -92,7 +92,7 @@ config ATMEL_SPI
>   config BCM63XX_HSSPI
>   	bool "BCM63XX HSSPI driver"
>   	depends on (ARCH_BMIPS || ARCH_BCM68360 || \
> -		    ARCH_BCM6858 || ARCH_BCM63158)
> +		    ARCH_BCM6858 || BCM63158)
>   	help
>   	  Enable the BCM6328 HSSPI driver. This driver can be used to
>   	  access the SPI NOR flash on platforms embedding this Broadcom
> diff --git a/drivers/watchdog/Kconfig b/drivers/watchdog/Kconfig
> index 50e6a1efba51..ff4d1ee530d2 100644
> --- a/drivers/watchdog/Kconfig
> +++ b/drivers/watchdog/Kconfig
> @@ -129,7 +129,7 @@ config WDT_AT91
>   config WDT_BCM6345
>   	bool "BCM6345 watchdog timer support"
>   	depends on WDT && (ARCH_BMIPS || ARCH_BCM68360 || \
> -			   ARCH_BCM6858 || ARCH_BCM63158 || \
> +			   ARCH_BCM6858 || BCM63158 || \
>   			   ARCH_BCM6753)
>   	help
>   	  Select this to enable watchdog timer for BCM6345 SoCs.

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH v3 4/5] MAINTAINERS: Add BCM63158 maintainer to BCMBCA entry
  2022-08-22 18:19 ` [PATCH v3 4/5] MAINTAINERS: Add BCM63158 maintainer to BCMBCA entry William Zhang
@ 2022-08-24 12:44   ` Philippe REYNES
  0 siblings, 0 replies; 12+ messages in thread
From: Philippe REYNES @ 2022-08-24 12:44 UTC (permalink / raw)
  To: William Zhang, U-Boot Mailing List
  Cc: rafal, anand.gore, joel.peshkin, dan.beygelman, f.fainelli, kursad.oney

Hi William,


Le 22/08/2022 à 20:19, William Zhang a écrit :
> Since ARCH_BCM63158 SoC support is merged into ARCH_BCMBCA, add BCM63158
> maintainer Philippe to bcmbca maintainer list.
>
> Signed-off-by: William Zhang <william.zhang@broadcom.com>


Reviewed-by: Philippe Reynes <philippe.reynes@softathome.com>


> ---
>
> (no changes since v1)
>
>   MAINTAINERS | 1 +
>   1 file changed, 1 insertion(+)
>
> diff --git a/MAINTAINERS b/MAINTAINERS
> index 5b219d62f6bf..d0a5b2352cc8 100644
> --- a/MAINTAINERS
> +++ b/MAINTAINERS
> @@ -213,6 +213,7 @@ M:	Anand Gore <anand.gore@broadcom.com>
>   M:	William Zhang <william.zhang@broadcom.com>
>   M:	Kursad Oney <kursad.oney@broadcom.com>
>   M:	Joel Peshkin <joel.peshkin@broadcom.com>
> +M:	Philippe Reynes <philippe.reynes@softathome.com>
>   S:	Maintained
>   F:	arch/arm/mach-bcmbca/
>   F:	board/broadcom/bcmbca/

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH v3 5/5] arm: bcmbca: make reset_cpu function weak
  2022-08-22 18:19 ` [PATCH v3 5/5] arm: bcmbca: make reset_cpu function weak William Zhang
@ 2022-08-24 12:44   ` Philippe REYNES
  0 siblings, 0 replies; 12+ messages in thread
From: Philippe REYNES @ 2022-08-24 12:44 UTC (permalink / raw)
  To: William Zhang, U-Boot Mailing List
  Cc: rafal, anand.gore, joel.peshkin, dan.beygelman, f.fainelli,
	kursad.oney, Tom Rini

Hi William


Le 22/08/2022 à 20:19, William Zhang a écrit :
> BCM63158 carries the CONFIG_SYSRESET from the original configuration. It
> provide reset_cpu function already so need to define weak version of the
> dummy reset_cpu for other BCMBCA SoCs to avoid linking error.
>
> Signed-off-by: William Zhang <william.zhang@broadcom.com>


Reviewed-by: Philippe Reynes <philippe.reynes@softathome.com>


>
> ---
>
> Changes in v3:
> -Fix reset_cpu function prototype.
>
>   board/broadcom/bcmbca/board.c | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/board/broadcom/bcmbca/board.c b/board/broadcom/bcmbca/board.c
> index 4aa1d659d5c7..bcecb4d78392 100644
> --- a/board/broadcom/bcmbca/board.c
> +++ b/board/broadcom/bcmbca/board.c
> @@ -30,6 +30,6 @@ int print_cpuinfo(void)
>   	return 0;
>   }
>   
> -void reset_cpu(ulong addr)
> +__weak void reset_cpu(void)
>   {
>   }

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH v3 1/5] arm: bcmbca: add bcm63158 SoC support under CONFIG_ARCH_BCMBCA
  2022-08-22 18:19 ` [PATCH v3 1/5] arm: bcmbca: add bcm63158 SoC " William Zhang
  2022-08-24 12:43   ` Philippe REYNES
@ 2022-10-31 14:45   ` Tom Rini
  1 sibling, 0 replies; 12+ messages in thread
From: Tom Rini @ 2022-10-31 14:45 UTC (permalink / raw)
  To: William Zhang
  Cc: U-Boot Mailing List, rafal, anand.gore, joel.peshkin,
	dan.beygelman, philippe.reynes, f.fainelli, kursad.oney,
	Andre Przywara, Christian Hewitt, Fabio Estevam, Marek Vasut,
	Samuel Holland, Simon Glass, Tomer Yacoby,
	Ying-Chun Liu (PaulLiu)

[-- Attachment #1: Type: text/plain, Size: 886 bytes --]

On Mon, Aug 22, 2022 at 11:19:44AM -0700, William Zhang wrote:

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

For the series, applied to u-boot/master, thanks!

-- 
Tom

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 659 bytes --]

^ permalink raw reply	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2022-10-31 14:46 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-08-22 18:19 [PATCH v3 0/5] arm: bcmbca: move bcm63158 support under CONFIG_ARCH_BCMBCA William Zhang
2022-08-22 18:19 ` [PATCH v3 1/5] arm: bcmbca: add bcm63158 SoC " William Zhang
2022-08-24 12:43   ` Philippe REYNES
2022-10-31 14:45   ` Tom Rini
2022-08-22 18:19 ` [PATCH v3 2/5] arm: bcmbca: remove bcm63158 support under CONFIG_ARCH_BCM63158 William Zhang
2022-08-24 12:44   ` Philippe REYNES
2022-08-22 18:19 ` [PATCH v3 3/5] arm: bcmbca: replace ARCH_BCM63158 symbols in Kconfig with BCM63158 William Zhang
2022-08-24 12:44   ` Philippe REYNES
2022-08-22 18:19 ` [PATCH v3 4/5] MAINTAINERS: Add BCM63158 maintainer to BCMBCA entry William Zhang
2022-08-24 12:44   ` Philippe REYNES
2022-08-22 18:19 ` [PATCH v3 5/5] arm: bcmbca: make reset_cpu function weak William Zhang
2022-08-24 12:44   ` Philippe REYNES

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).