* [PATCH v2 0/3] arm: bcmbca: move bcm6753 support under CONFIG_ARCH_BCMBCA
@ 2022-08-22 18:49 William Zhang
2022-08-22 18:49 ` [PATCH v2 1/3] arm: bcmbca: add bcm6855 SoC " William Zhang
` (2 more replies)
0 siblings, 3 replies; 8+ messages in thread
From: William Zhang @ 2022-08-22 18:49 UTC (permalink / raw)
To: U-Boot Mailing List
Cc: f.fainelli, anand.gore, rafal, dan.beygelman, kursad.oney,
philippe.reynes, joel.peshkin, William Zhang, Andre Przywara,
Christian Hewitt, Fabio Estevam, Rayagonda Kokatanur, Rick Chen,
Samuel Holland, Sean Anderson, Simon Glass, Tom Rini,
Tomer Yacoby, Ying-Chun Liu (PaulLiu)
[-- Attachment #1: Type: text/plain, Size: 3178 bytes --]
Sorry for another version of patch series with some minor updates.
Please see the change log and specific patch for details.
BCM6753 is essentially same as the main chip BCM6855 with different SKU
number. It is part of the Broadcom BCA (Broadband Carrier Access origin)
chipset family. BCM6753 was originally added by Philippe before Broadcom
started to upstream the support for BCMBCA SoCs. The ARM based broadband
SoC family is now supported under the unified ARCH_BCMBCA config. This
patch series migrate the BCM6753 support under the config of ARCH_BCMBCA
and BCM6855.
This patch series need to apply on top of my previous patch series
[1]. This concludes the addition of BCA SoC support to u-boot at least
for now.
[1]: https://lists.denx.de/pipermail/u-boot/2022-August/492474.html
Changes in v2:
- Add help in BCM6855 Kconfig option to include the list of the
supported chips.
- Update subject line to be more clear for patch 3
William Zhang (3):
arm: bcmbca: add bcm6855 SoC support under CONFIG_ARCH_BCMBCA
arm: bcmbca: remove bcm6753 support under CONFIG_ARCH_BCM6753
arm: bcmbca: replace ARCH_BCM6753 symbols in Kconfig with BCM6855
MAINTAINERS | 1 +
arch/arm/Kconfig | 8 -
arch/arm/dts/Makefile | 6 +-
arch/arm/dts/bcm6753.dtsi | 208 ------------------
arch/arm/dts/bcm6855.dtsi | 257 +++++++++++++++++++++++
arch/arm/dts/bcm96753ref.dts | 6 +-
arch/arm/dts/bcm96855.dts | 30 +++
arch/arm/mach-bcmbca/Kconfig | 11 +
arch/arm/mach-bcmbca/Makefile | 1 +
arch/arm/mach-bcmbca/bcm6855/Kconfig | 17 ++
arch/arm/mach-bcmbca/bcm6855/Makefile | 5 +
board/broadcom/bcm96753ref/Kconfig | 16 --
board/broadcom/bcm96753ref/MAINTAINERS | 6 -
board/broadcom/bcm96753ref/Makefile | 3 -
board/broadcom/bcm96753ref/bcm96753ref.c | 40 ----
board/broadcom/bcmbca/Kconfig | 7 +
configs/bcm96753ref_ram_defconfig | 87 --------
configs/bcm96855_defconfig | 23 ++
drivers/gpio/Kconfig | 2 +-
drivers/led/Kconfig | 2 +-
drivers/mtd/nand/raw/Kconfig | 2 +-
drivers/watchdog/Kconfig | 2 +-
include/configs/bcm96855.h | 15 ++
include/configs/broadcom_bcm96753ref.h | 32 ---
24 files changed, 377 insertions(+), 410 deletions(-)
delete mode 100644 arch/arm/dts/bcm6753.dtsi
create mode 100644 arch/arm/dts/bcm6855.dtsi
create mode 100644 arch/arm/dts/bcm96855.dts
create mode 100644 arch/arm/mach-bcmbca/bcm6855/Kconfig
create mode 100644 arch/arm/mach-bcmbca/bcm6855/Makefile
delete mode 100644 board/broadcom/bcm96753ref/Kconfig
delete mode 100644 board/broadcom/bcm96753ref/MAINTAINERS
delete mode 100644 board/broadcom/bcm96753ref/Makefile
delete mode 100644 board/broadcom/bcm96753ref/bcm96753ref.c
delete mode 100644 configs/bcm96753ref_ram_defconfig
create mode 100644 configs/bcm96855_defconfig
create mode 100644 include/configs/bcm96855.h
delete mode 100644 include/configs/broadcom_bcm96753ref.h
--
2.37.1
[-- Attachment #2: S/MIME Cryptographic Signature --]
[-- Type: application/pkcs7-signature, Size: 4212 bytes --]
^ permalink raw reply [flat|nested] 8+ messages in thread* [PATCH v2 1/3] arm: bcmbca: add bcm6855 SoC support under CONFIG_ARCH_BCMBCA 2022-08-22 18:49 [PATCH v2 0/3] arm: bcmbca: move bcm6753 support under CONFIG_ARCH_BCMBCA William Zhang @ 2022-08-22 18:49 ` William Zhang 2022-08-24 12:41 ` Philippe REYNES 2022-10-31 14:45 ` Tom Rini 2022-08-22 18:49 ` [PATCH v2 2/3] arm: bcmbca: remove bcm6753 support under CONFIG_ARCH_BCM6753 William Zhang 2022-08-22 18:49 ` [PATCH v2 3/3] arm: bcmbca: replace ARCH_BCM6753 symbols in Kconfig with BCM6855 William Zhang 2 siblings, 2 replies; 8+ messages in thread From: William Zhang @ 2022-08-22 18:49 UTC (permalink / raw) To: U-Boot Mailing List Cc: f.fainelli, anand.gore, rafal, dan.beygelman, kursad.oney, philippe.reynes, joel.peshkin, William Zhang, Andre Przywara, Christian Hewitt, Fabio Estevam, Samuel Holland, Simon Glass, Tom Rini, Tomer Yacoby, Ying-Chun Liu (PaulLiu) [-- Attachment #1: Type: text/plain, Size: 9756 bytes --] BCM6855 is a Broadcom ARM A7 based PON Gateway SoC. It is part of the BCA (Broadband Carrier Access origin) chipset family. Like other broadband SoC, this patch adds it under CONFIG_BCM6855 chip config and CONFIG_ARCH_BCMBCA platform config. This initial support includes a bare-bone implementation and dts with CPU subsystem, memory and ARM PL101 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> --- Changes in v2: - Add help in BCM6855 Kconfig option to include the list of the supported chips. MAINTAINERS | 1 + arch/arm/dts/Makefile | 2 + arch/arm/dts/bcm6855.dtsi | 120 ++++++++++++++++++++++++++ arch/arm/dts/bcm96855.dts | 30 +++++++ arch/arm/mach-bcmbca/Kconfig | 11 +++ arch/arm/mach-bcmbca/Makefile | 1 + arch/arm/mach-bcmbca/bcm6855/Kconfig | 17 ++++ arch/arm/mach-bcmbca/bcm6855/Makefile | 5 ++ board/broadcom/bcmbca/Kconfig | 7 ++ configs/bcm96855_defconfig | 23 +++++ include/configs/bcm96855.h | 11 +++ 11 files changed, 228 insertions(+) create mode 100644 arch/arm/dts/bcm6855.dtsi create mode 100644 arch/arm/dts/bcm96855.dts create mode 100644 arch/arm/mach-bcmbca/bcm6855/Kconfig create mode 100644 arch/arm/mach-bcmbca/bcm6855/Makefile create mode 100644 configs/bcm96855_defconfig create mode 100644 include/configs/bcm96855.h diff --git a/MAINTAINERS b/MAINTAINERS index 819fa5b87824..371e84de1bc1 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -230,6 +230,7 @@ N: bcm[9]?63178 N: bcm[9]?6756 N: bcm[9]?6813 N: bcm[9]?6846 +N: bcm[9]?6855 N: bcm[9]?6856 N: bcm[9]?6858 N: bcm[9]?6878 diff --git a/arch/arm/dts/Makefile b/arch/arm/dts/Makefile index 07e6130042f5..5fd38cc63b63 100644 --- a/arch/arm/dts/Makefile +++ b/arch/arm/dts/Makefile @@ -1176,6 +1176,8 @@ dtb-$(CONFIG_BCM6813) += \ bcm96813.dtb dtb-$(CONFIG_BCM6846) += \ bcm96846.dtb +dtb-$(CONFIG_BCM6855) += \ + bcm96855.dtb dtb-$(CONFIG_BCM6856) += \ bcm96856.dtb \ bcm968360bg.dtb diff --git a/arch/arm/dts/bcm6855.dtsi b/arch/arm/dts/bcm6855.dtsi new file mode 100644 index 000000000000..620f51aee1a2 --- /dev/null +++ b/arch/arm/dts/bcm6855.dtsi @@ -0,0 +1,120 @@ +// SPDX-License-Identifier: (GPL-2.0+ OR MIT) +/* + * Copyright 2022 Broadcom Ltd. + */ + +#include <dt-bindings/interrupt-controller/arm-gic.h> +#include <dt-bindings/interrupt-controller/irq.h> + +/ { + compatible = "brcm,bcm6855", "brcm,bcmbca"; + #address-cells = <1>; + #size-cells = <1>; + + interrupt-parent = <&gic>; + + cpus { + #address-cells = <1>; + #size-cells = <0>; + + CA7_0: cpu@0 { + device_type = "cpu"; + compatible = "arm,cortex-a7"; + reg = <0x0>; + next-level-cache = <&L2_0>; + enable-method = "psci"; + }; + + CA7_1: cpu@1 { + device_type = "cpu"; + compatible = "arm,cortex-a7"; + reg = <0x1>; + next-level-cache = <&L2_0>; + enable-method = "psci"; + }; + + CA7_2: cpu@2 { + device_type = "cpu"; + compatible = "arm,cortex-a7"; + reg = <0x2>; + next-level-cache = <&L2_0>; + enable-method = "psci"; + }; + + L2_0: l2-cache0 { + compatible = "cache"; + }; + }; + + timer { + compatible = "arm,armv7-timer"; + interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(3) | IRQ_TYPE_LEVEL_LOW)>, + <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(3) | IRQ_TYPE_LEVEL_LOW)>, + <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(3) | IRQ_TYPE_LEVEL_LOW)>, + <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(3) | IRQ_TYPE_LEVEL_LOW)>; + arm,cpu-registers-not-fw-configured; + }; + + pmu: pmu { + compatible = "arm,cortex-a7-pmu"; + interrupts = <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>; + interrupt-affinity = <&CA7_0>, <&CA7_1>, <&CA7_2>; + }; + + clocks: clocks { + periph_clk: periph-clk { + compatible = "fixed-clock"; + #clock-cells = <0>; + clock-frequency = <200000000>; + }; + + uart_clk: uart-clk { + compatible = "fixed-factor-clock"; + #clock-cells = <0>; + clocks = <&periph_clk>; + clock-div = <4>; + clock-mult = <1>; + }; + }; + + psci { + compatible = "arm,psci-0.2"; + method = "smc"; + }; + + axi@81000000 { + compatible = "simple-bus"; + #address-cells = <1>; + #size-cells = <1>; + ranges = <0 0x81000000 0x8000>; + + gic: interrupt-controller@1000 { + compatible = "arm,cortex-a7-gic"; + #interrupt-cells = <3>; + interrupt-controller; + interrupts = <GIC_PPI 9 (GIC_CPU_MASK_SIMPLE(3) | 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 = <0 0xff800000 0x800000>; + + uart0: serial@12000 { + compatible = "arm,pl011", "arm,primecell"; + reg = <0x12000 0x1000>; + interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>; + clocks = <&uart_clk>, <&uart_clk>; + clock-names = "uartclk", "apb_pclk"; + status = "disabled"; + }; + }; +}; diff --git a/arch/arm/dts/bcm96855.dts b/arch/arm/dts/bcm96855.dts new file mode 100644 index 000000000000..e4e740c73e97 --- /dev/null +++ b/arch/arm/dts/bcm96855.dts @@ -0,0 +1,30 @@ +// SPDX-License-Identifier: (GPL-2.0+ OR MIT) +/* + * Copyright 2022 Broadcom Ltd. + */ + +/dts-v1/; + +#include "bcm6855.dtsi" + +/ { + model = "Broadcom BCM96855 Reference Board"; + compatible = "brcm,bcm96855", "brcm,bcm6855", "brcm,bcmbca"; + + aliases { + serial0 = &uart0; + }; + + chosen { + stdout-path = "serial0:115200n8"; + }; + + memory@0 { + device_type = "memory"; + reg = <0x0 0x08000000>; + }; +}; + +&uart0 { + status = "okay"; +}; diff --git a/arch/arm/mach-bcmbca/Kconfig b/arch/arm/mach-bcmbca/Kconfig index 5b977734df41..27b243cbc3d8 100644 --- a/arch/arm/mach-bcmbca/Kconfig +++ b/arch/arm/mach-bcmbca/Kconfig @@ -83,6 +83,16 @@ config BCM6846 select DM_SERIAL select BCM6345_SERIAL +config BCM6855 + bool "Support for Broadcom 6855 Family" + select SYS_ARCH_TIMER + select CPU_V7A + select DM_SERIAL + select PL01X_SERIAL + help + Broadcom BCM6855 is a triple core Cortex A7 based xPON Gateway + SoC. This SoC family includes BCM6855x, BCM68252 and BCM6753. + config BCM6856 bool "Support for Broadcom 6856 Family" select ARM64 @@ -121,6 +131,7 @@ source "arch/arm/mach-bcmbca/bcm63178/Kconfig" source "arch/arm/mach-bcmbca/bcm6756/Kconfig" source "arch/arm/mach-bcmbca/bcm6813/Kconfig" source "arch/arm/mach-bcmbca/bcm6846/Kconfig" +source "arch/arm/mach-bcmbca/bcm6855/Kconfig" source "arch/arm/mach-bcmbca/bcm6856/Kconfig" source "arch/arm/mach-bcmbca/bcm6858/Kconfig" source "arch/arm/mach-bcmbca/bcm6878/Kconfig" diff --git a/arch/arm/mach-bcmbca/Makefile b/arch/arm/mach-bcmbca/Makefile index c06809417499..7de9450e1924 100644 --- a/arch/arm/mach-bcmbca/Makefile +++ b/arch/arm/mach-bcmbca/Makefile @@ -14,6 +14,7 @@ obj-$(CONFIG_BCM63178) += bcm63178/ obj-$(CONFIG_BCM6756) += bcm6756/ obj-$(CONFIG_BCM6813) += bcm6813/ obj-$(CONFIG_BCM6846) += bcm6846/ +obj-$(CONFIG_BCM6855) += bcm6855/ obj-$(CONFIG_BCM6856) += bcm6856/ obj-$(CONFIG_BCM6858) += bcm6858/ obj-$(CONFIG_BCM6878) += bcm6878/ diff --git a/arch/arm/mach-bcmbca/bcm6855/Kconfig b/arch/arm/mach-bcmbca/bcm6855/Kconfig new file mode 100644 index 000000000000..78087c7dd59d --- /dev/null +++ b/arch/arm/mach-bcmbca/bcm6855/Kconfig @@ -0,0 +1,17 @@ +# SPDX-License-Identifier: GPL-2.0+ +# +# (C) Copyright 2022 Broadcom Ltd +# + +if BCM6855 + +config TARGET_BCM96855 + bool "Broadcom 6855 Reference Board" + depends on ARCH_BCMBCA + +config SYS_SOC + default "bcm6855" + +source "board/broadcom/bcmbca/Kconfig" + +endif diff --git a/arch/arm/mach-bcmbca/bcm6855/Makefile b/arch/arm/mach-bcmbca/bcm6855/Makefile new file mode 100644 index 000000000000..beb979af7520 --- /dev/null +++ b/arch/arm/mach-bcmbca/bcm6855/Makefile @@ -0,0 +1,5 @@ +# SPDX-License-Identifier: GPL-2.0+ +# +# (C) Copyright 2022 Broadcom Ltd +# +obj- += dummy.o diff --git a/board/broadcom/bcmbca/Kconfig b/board/broadcom/bcmbca/Kconfig index 7da9e954d4b2..5903a6a786fb 100644 --- a/board/broadcom/bcmbca/Kconfig +++ b/board/broadcom/bcmbca/Kconfig @@ -86,6 +86,13 @@ config SYS_CONFIG_NAME endif +if TARGET_BCM96855 + +config SYS_CONFIG_NAME + default "bcm96855" + +endif + if TARGET_BCM96856 config SYS_CONFIG_NAME diff --git a/configs/bcm96855_defconfig b/configs/bcm96855_defconfig new file mode 100644 index 000000000000..223c0a139b70 --- /dev/null +++ b/configs/bcm96855_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_BCM6855=y +CONFIG_TARGET_BCM96855=y +CONFIG_NR_DRAM_BANKS=1 +CONFIG_DEFAULT_DEVICE_TREE="bcm96855" +CONFIG_IDENT_STRING=" Broadcom BCM6855" +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/bcm96855.h b/include/configs/bcm96855.h new file mode 100644 index 000000000000..6e420f2c66fb --- /dev/null +++ b/include/configs/bcm96855.h @@ -0,0 +1,11 @@ +/* SPDX-License-Identifier: GPL-2.0+ */ +/* + * (C) Copyright 2022 Broadcom Ltd. + */ + +#ifndef __BCM96855_H +#define __BCM96855_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] 8+ messages in thread
* Re: [PATCH v2 1/3] arm: bcmbca: add bcm6855 SoC support under CONFIG_ARCH_BCMBCA 2022-08-22 18:49 ` [PATCH v2 1/3] arm: bcmbca: add bcm6855 SoC " William Zhang @ 2022-08-24 12:41 ` Philippe REYNES 2022-10-31 14:45 ` Tom Rini 1 sibling, 0 replies; 8+ messages in thread From: Philippe REYNES @ 2022-08-24 12:41 UTC (permalink / raw) To: William Zhang, U-Boot Mailing List Cc: f.fainelli, anand.gore, rafal, dan.beygelman, kursad.oney, joel.peshkin, Andre Przywara, Christian Hewitt, Fabio Estevam, Samuel Holland, Simon Glass, Tom Rini, Tomer Yacoby, Ying-Chun Liu (PaulLiu) Hi William, Le 22/08/2022 à 20:49, William Zhang a écrit : > BCM6855 is a Broadcom ARM A7 based PON Gateway SoC. It is part of the > BCA (Broadband Carrier Access origin) chipset family. Like other > broadband SoC, this patch adds it under CONFIG_BCM6855 chip config and > CONFIG_ARCH_BCMBCA platform config. > > This initial support includes a bare-bone implementation and dts with > CPU subsystem, memory and ARM PL101 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> > > --- > > Changes in v2: > - Add help in BCM6855 Kconfig option to include the list of the > supported chips. > > MAINTAINERS | 1 + > arch/arm/dts/Makefile | 2 + > arch/arm/dts/bcm6855.dtsi | 120 ++++++++++++++++++++++++++ > arch/arm/dts/bcm96855.dts | 30 +++++++ > arch/arm/mach-bcmbca/Kconfig | 11 +++ > arch/arm/mach-bcmbca/Makefile | 1 + > arch/arm/mach-bcmbca/bcm6855/Kconfig | 17 ++++ > arch/arm/mach-bcmbca/bcm6855/Makefile | 5 ++ > board/broadcom/bcmbca/Kconfig | 7 ++ > configs/bcm96855_defconfig | 23 +++++ > include/configs/bcm96855.h | 11 +++ > 11 files changed, 228 insertions(+) > create mode 100644 arch/arm/dts/bcm6855.dtsi > create mode 100644 arch/arm/dts/bcm96855.dts > create mode 100644 arch/arm/mach-bcmbca/bcm6855/Kconfig > create mode 100644 arch/arm/mach-bcmbca/bcm6855/Makefile > create mode 100644 configs/bcm96855_defconfig > create mode 100644 include/configs/bcm96855.h > > diff --git a/MAINTAINERS b/MAINTAINERS > index 819fa5b87824..371e84de1bc1 100644 > --- a/MAINTAINERS > +++ b/MAINTAINERS > @@ -230,6 +230,7 @@ N: bcm[9]?63178 > N: bcm[9]?6756 > N: bcm[9]?6813 > N: bcm[9]?6846 > +N: bcm[9]?6855 > N: bcm[9]?6856 > N: bcm[9]?6858 > N: bcm[9]?6878 > diff --git a/arch/arm/dts/Makefile b/arch/arm/dts/Makefile > index 07e6130042f5..5fd38cc63b63 100644 > --- a/arch/arm/dts/Makefile > +++ b/arch/arm/dts/Makefile > @@ -1176,6 +1176,8 @@ dtb-$(CONFIG_BCM6813) += \ > bcm96813.dtb > dtb-$(CONFIG_BCM6846) += \ > bcm96846.dtb > +dtb-$(CONFIG_BCM6855) += \ > + bcm96855.dtb > dtb-$(CONFIG_BCM6856) += \ > bcm96856.dtb \ > bcm968360bg.dtb > diff --git a/arch/arm/dts/bcm6855.dtsi b/arch/arm/dts/bcm6855.dtsi > new file mode 100644 > index 000000000000..620f51aee1a2 > --- /dev/null > +++ b/arch/arm/dts/bcm6855.dtsi > @@ -0,0 +1,120 @@ > +// SPDX-License-Identifier: (GPL-2.0+ OR MIT) > +/* > + * Copyright 2022 Broadcom Ltd. > + */ > + > +#include <dt-bindings/interrupt-controller/arm-gic.h> > +#include <dt-bindings/interrupt-controller/irq.h> > + > +/ { > + compatible = "brcm,bcm6855", "brcm,bcmbca"; > + #address-cells = <1>; > + #size-cells = <1>; > + > + interrupt-parent = <&gic>; > + > + cpus { > + #address-cells = <1>; > + #size-cells = <0>; > + > + CA7_0: cpu@0 { > + device_type = "cpu"; > + compatible = "arm,cortex-a7"; > + reg = <0x0>; > + next-level-cache = <&L2_0>; > + enable-method = "psci"; > + }; > + > + CA7_1: cpu@1 { > + device_type = "cpu"; > + compatible = "arm,cortex-a7"; > + reg = <0x1>; > + next-level-cache = <&L2_0>; > + enable-method = "psci"; > + }; > + > + CA7_2: cpu@2 { > + device_type = "cpu"; > + compatible = "arm,cortex-a7"; > + reg = <0x2>; > + next-level-cache = <&L2_0>; > + enable-method = "psci"; > + }; > + > + L2_0: l2-cache0 { > + compatible = "cache"; > + }; > + }; > + > + timer { > + compatible = "arm,armv7-timer"; > + interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(3) | IRQ_TYPE_LEVEL_LOW)>, > + <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(3) | IRQ_TYPE_LEVEL_LOW)>, > + <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(3) | IRQ_TYPE_LEVEL_LOW)>, > + <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(3) | IRQ_TYPE_LEVEL_LOW)>; > + arm,cpu-registers-not-fw-configured; > + }; > + > + pmu: pmu { > + compatible = "arm,cortex-a7-pmu"; > + interrupts = <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>, > + <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>, > + <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>; > + interrupt-affinity = <&CA7_0>, <&CA7_1>, <&CA7_2>; > + }; > + > + clocks: clocks { > + periph_clk: periph-clk { > + compatible = "fixed-clock"; > + #clock-cells = <0>; > + clock-frequency = <200000000>; > + }; > + > + uart_clk: uart-clk { > + compatible = "fixed-factor-clock"; > + #clock-cells = <0>; > + clocks = <&periph_clk>; > + clock-div = <4>; > + clock-mult = <1>; > + }; > + }; > + > + psci { > + compatible = "arm,psci-0.2"; > + method = "smc"; > + }; > + > + axi@81000000 { > + compatible = "simple-bus"; > + #address-cells = <1>; > + #size-cells = <1>; > + ranges = <0 0x81000000 0x8000>; > + > + gic: interrupt-controller@1000 { > + compatible = "arm,cortex-a7-gic"; > + #interrupt-cells = <3>; > + interrupt-controller; > + interrupts = <GIC_PPI 9 (GIC_CPU_MASK_SIMPLE(3) | 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 = <0 0xff800000 0x800000>; > + > + uart0: serial@12000 { > + compatible = "arm,pl011", "arm,primecell"; > + reg = <0x12000 0x1000>; > + interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>; > + clocks = <&uart_clk>, <&uart_clk>; > + clock-names = "uartclk", "apb_pclk"; > + status = "disabled"; > + }; > + }; > +}; > diff --git a/arch/arm/dts/bcm96855.dts b/arch/arm/dts/bcm96855.dts > new file mode 100644 > index 000000000000..e4e740c73e97 > --- /dev/null > +++ b/arch/arm/dts/bcm96855.dts > @@ -0,0 +1,30 @@ > +// SPDX-License-Identifier: (GPL-2.0+ OR MIT) > +/* > + * Copyright 2022 Broadcom Ltd. > + */ > + > +/dts-v1/; > + > +#include "bcm6855.dtsi" > + > +/ { > + model = "Broadcom BCM96855 Reference Board"; > + compatible = "brcm,bcm96855", "brcm,bcm6855", "brcm,bcmbca"; > + > + aliases { > + serial0 = &uart0; > + }; > + > + chosen { > + stdout-path = "serial0:115200n8"; > + }; > + > + memory@0 { > + device_type = "memory"; > + reg = <0x0 0x08000000>; > + }; > +}; > + > +&uart0 { > + status = "okay"; > +}; > diff --git a/arch/arm/mach-bcmbca/Kconfig b/arch/arm/mach-bcmbca/Kconfig > index 5b977734df41..27b243cbc3d8 100644 > --- a/arch/arm/mach-bcmbca/Kconfig > +++ b/arch/arm/mach-bcmbca/Kconfig > @@ -83,6 +83,16 @@ config BCM6846 > select DM_SERIAL > select BCM6345_SERIAL > > +config BCM6855 > + bool "Support for Broadcom 6855 Family" > + select SYS_ARCH_TIMER > + select CPU_V7A > + select DM_SERIAL > + select PL01X_SERIAL > + help > + Broadcom BCM6855 is a triple core Cortex A7 based xPON Gateway > + SoC. This SoC family includes BCM6855x, BCM68252 and BCM6753. > + > config BCM6856 > bool "Support for Broadcom 6856 Family" > select ARM64 > @@ -121,6 +131,7 @@ source "arch/arm/mach-bcmbca/bcm63178/Kconfig" > source "arch/arm/mach-bcmbca/bcm6756/Kconfig" > source "arch/arm/mach-bcmbca/bcm6813/Kconfig" > source "arch/arm/mach-bcmbca/bcm6846/Kconfig" > +source "arch/arm/mach-bcmbca/bcm6855/Kconfig" > source "arch/arm/mach-bcmbca/bcm6856/Kconfig" > source "arch/arm/mach-bcmbca/bcm6858/Kconfig" > source "arch/arm/mach-bcmbca/bcm6878/Kconfig" > diff --git a/arch/arm/mach-bcmbca/Makefile b/arch/arm/mach-bcmbca/Makefile > index c06809417499..7de9450e1924 100644 > --- a/arch/arm/mach-bcmbca/Makefile > +++ b/arch/arm/mach-bcmbca/Makefile > @@ -14,6 +14,7 @@ obj-$(CONFIG_BCM63178) += bcm63178/ > obj-$(CONFIG_BCM6756) += bcm6756/ > obj-$(CONFIG_BCM6813) += bcm6813/ > obj-$(CONFIG_BCM6846) += bcm6846/ > +obj-$(CONFIG_BCM6855) += bcm6855/ > obj-$(CONFIG_BCM6856) += bcm6856/ > obj-$(CONFIG_BCM6858) += bcm6858/ > obj-$(CONFIG_BCM6878) += bcm6878/ > diff --git a/arch/arm/mach-bcmbca/bcm6855/Kconfig b/arch/arm/mach-bcmbca/bcm6855/Kconfig > new file mode 100644 > index 000000000000..78087c7dd59d > --- /dev/null > +++ b/arch/arm/mach-bcmbca/bcm6855/Kconfig > @@ -0,0 +1,17 @@ > +# SPDX-License-Identifier: GPL-2.0+ > +# > +# (C) Copyright 2022 Broadcom Ltd > +# > + > +if BCM6855 > + > +config TARGET_BCM96855 > + bool "Broadcom 6855 Reference Board" > + depends on ARCH_BCMBCA > + > +config SYS_SOC > + default "bcm6855" > + > +source "board/broadcom/bcmbca/Kconfig" > + > +endif > diff --git a/arch/arm/mach-bcmbca/bcm6855/Makefile b/arch/arm/mach-bcmbca/bcm6855/Makefile > new file mode 100644 > index 000000000000..beb979af7520 > --- /dev/null > +++ b/arch/arm/mach-bcmbca/bcm6855/Makefile > @@ -0,0 +1,5 @@ > +# SPDX-License-Identifier: GPL-2.0+ > +# > +# (C) Copyright 2022 Broadcom Ltd > +# > +obj- += dummy.o > diff --git a/board/broadcom/bcmbca/Kconfig b/board/broadcom/bcmbca/Kconfig > index 7da9e954d4b2..5903a6a786fb 100644 > --- a/board/broadcom/bcmbca/Kconfig > +++ b/board/broadcom/bcmbca/Kconfig > @@ -86,6 +86,13 @@ config SYS_CONFIG_NAME > > endif > > +if TARGET_BCM96855 > + > +config SYS_CONFIG_NAME > + default "bcm96855" > + > +endif > + > if TARGET_BCM96856 > > config SYS_CONFIG_NAME > diff --git a/configs/bcm96855_defconfig b/configs/bcm96855_defconfig > new file mode 100644 > index 000000000000..223c0a139b70 > --- /dev/null > +++ b/configs/bcm96855_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_BCM6855=y > +CONFIG_TARGET_BCM96855=y > +CONFIG_NR_DRAM_BANKS=1 > +CONFIG_DEFAULT_DEVICE_TREE="bcm96855" > +CONFIG_IDENT_STRING=" Broadcom BCM6855" > +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/bcm96855.h b/include/configs/bcm96855.h > new file mode 100644 > index 000000000000..6e420f2c66fb > --- /dev/null > +++ b/include/configs/bcm96855.h > @@ -0,0 +1,11 @@ > +/* SPDX-License-Identifier: GPL-2.0+ */ > +/* > + * (C) Copyright 2022 Broadcom Ltd. > + */ > + > +#ifndef __BCM96855_H > +#define __BCM96855_H > + > +#define CONFIG_SYS_SDRAM_BASE 0x00000000 > + > +#endif ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH v2 1/3] arm: bcmbca: add bcm6855 SoC support under CONFIG_ARCH_BCMBCA 2022-08-22 18:49 ` [PATCH v2 1/3] arm: bcmbca: add bcm6855 SoC " William Zhang 2022-08-24 12:41 ` Philippe REYNES @ 2022-10-31 14:45 ` Tom Rini 1 sibling, 0 replies; 8+ messages in thread From: Tom Rini @ 2022-10-31 14:45 UTC (permalink / raw) To: William Zhang Cc: U-Boot Mailing List, f.fainelli, anand.gore, rafal, dan.beygelman, kursad.oney, philippe.reynes, joel.peshkin, Andre Przywara, Christian Hewitt, Fabio Estevam, Samuel Holland, Simon Glass, Tomer Yacoby, Ying-Chun Liu (PaulLiu) [-- Attachment #1: Type: text/plain, Size: 884 bytes --] On Mon, Aug 22, 2022 at 11:49:06AM -0700, William Zhang wrote: > BCM6855 is a Broadcom ARM A7 based PON Gateway SoC. It is part of the > BCA (Broadband Carrier Access origin) chipset family. Like other > broadband SoC, this patch adds it under CONFIG_BCM6855 chip config and > CONFIG_ARCH_BCMBCA platform config. > > This initial support includes a bare-bone implementation and dts with > CPU subsystem, memory and ARM PL101 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] 8+ messages in thread
* [PATCH v2 2/3] arm: bcmbca: remove bcm6753 support under CONFIG_ARCH_BCM6753 2022-08-22 18:49 [PATCH v2 0/3] arm: bcmbca: move bcm6753 support under CONFIG_ARCH_BCMBCA William Zhang 2022-08-22 18:49 ` [PATCH v2 1/3] arm: bcmbca: add bcm6855 SoC " William Zhang @ 2022-08-22 18:49 ` William Zhang 2022-08-24 12:42 ` Philippe REYNES 2022-08-22 18:49 ` [PATCH v2 3/3] arm: bcmbca: replace ARCH_BCM6753 symbols in Kconfig with BCM6855 William Zhang 2 siblings, 1 reply; 8+ messages in thread From: William Zhang @ 2022-08-22 18:49 UTC (permalink / raw) To: U-Boot Mailing List Cc: f.fainelli, anand.gore, rafal, dan.beygelman, kursad.oney, philippe.reynes, joel.peshkin, William Zhang, Andre Przywara, Christian Hewitt, Fabio Estevam, Rayagonda Kokatanur, Rick Chen, Samuel Holland, Sean Anderson, Simon Glass, Tom Rini, Tomer Yacoby, Ying-Chun Liu (PaulLiu) [-- Attachment #1: Type: text/plain, Size: 17273 bytes --] BCM6753 is essentially same as the main chip BCM6855 but with different SKU number. Now that BCM6855 is supported under CONFIG_ARCH_BCMBCA and CONFIG_BCM6855, remove the original ARCH_BCM6753 support and migrate its configuration and dts settings. This includes: - Remove the bcm96753ref board folder. It is replaced by the generic bcmbca board folder. - Merge the 6753.dtsi setting to the new 6855.dtsi file. Update 96753ref board dts with the new compatible string. - Delete broadcom_bcm96763ref.h and merge its setting to the new bcm96855.h file. - Delete bcm96753ref_ram_defconfig and use a basic config version of bcm96855_defconfig Signed-off-by: William Zhang <william.zhang@broadcom.com> --- (no changes since v1) arch/arm/Kconfig | 8 - arch/arm/dts/Makefile | 6 +- arch/arm/dts/bcm6753.dtsi | 208 ----------------------- arch/arm/dts/bcm6855.dtsi | 137 +++++++++++++++ arch/arm/dts/bcm96753ref.dts | 6 +- board/broadcom/bcm96753ref/Kconfig | 16 -- board/broadcom/bcm96753ref/MAINTAINERS | 6 - board/broadcom/bcm96753ref/Makefile | 3 - board/broadcom/bcm96753ref/bcm96753ref.c | 40 ----- configs/bcm96753ref_ram_defconfig | 87 ---------- include/configs/bcm96855.h | 4 + include/configs/broadcom_bcm96753ref.h | 32 ---- 12 files changed, 146 insertions(+), 407 deletions(-) delete mode 100644 arch/arm/dts/bcm6753.dtsi delete mode 100644 board/broadcom/bcm96753ref/Kconfig delete mode 100644 board/broadcom/bcm96753ref/MAINTAINERS delete mode 100644 board/broadcom/bcm96753ref/Makefile delete mode 100644 board/broadcom/bcm96753ref/bcm96753ref.c delete mode 100644 configs/bcm96753ref_ram_defconfig delete mode 100644 include/configs/broadcom_bcm96753ref.h diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig index 063616ff8d0b..c1f195e9d106 100644 --- a/arch/arm/Kconfig +++ b/arch/arm/Kconfig @@ -665,13 +665,6 @@ config ARCH_BCM283X imply CMD_DM imply FAT_WRITE -config ARCH_BCM6753 - bool "Broadcom BCM6753 family" - select CPU_V7A - select DM - select OF_CONTROL - imply CMD_DM - config ARCH_BCMSTB bool "Broadcom BCM7XXX family" select CPU_V7A @@ -2267,7 +2260,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/bcm96753ref/Kconfig" source "board/broadcom/bcmns3/Kconfig" source "board/cavium/thunderx/Kconfig" source "board/eets/pdu001/Kconfig" diff --git a/arch/arm/dts/Makefile b/arch/arm/dts/Makefile index 5fd38cc63b63..8fba735cc8ab 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_BCM6753) += \ - bcm96753ref.dtb - dtb-$(CONFIG_TARGET_BCMNS3) += ns3-board.dtb dtb-$(CONFIG_ARCH_BCMSTB) += bcm7xxx.dtb @@ -1177,7 +1174,8 @@ dtb-$(CONFIG_BCM6813) += \ dtb-$(CONFIG_BCM6846) += \ bcm96846.dtb dtb-$(CONFIG_BCM6855) += \ - bcm96855.dtb + bcm96855.dtb \ + bcm96753ref.dtb dtb-$(CONFIG_BCM6856) += \ bcm96856.dtb \ bcm968360bg.dtb diff --git a/arch/arm/dts/bcm6753.dtsi b/arch/arm/dts/bcm6753.dtsi deleted file mode 100644 index e88ab095c290..000000000000 --- a/arch/arm/dts/bcm6753.dtsi +++ /dev/null @@ -1,208 +0,0 @@ -// SPDX-License-Identifier: GPL-2.0+ -/* - * Copyright (C) 2022 Philippe Reynes <philippe.reynes@softathome.com> - */ - -#include "skeleton.dtsi" - -/ { - compatible = "brcm,bcm6753"; - #address-cells = <1>; - #size-cells = <1>; - - cpus { - #address-cells = <1>; - #size-cells = <0>; - u-boot,dm-pre-reloc; - - cpu0: cpu@0 { - compatible = "arm,cortex-a7"; - device_type = "cpu"; - reg = <0x0>; - next-level-cache = <&l2>; - u-boot,dm-pre-reloc; - }; - - cpu1: cpu@1 { - compatible = "arm,cortex-a7"; - device_type = "cpu"; - reg = <0x1>; - next-level-cache = <&l2>; - u-boot,dm-pre-reloc; - }; - - cpu2: cpu@2 { - compatible = "arm,cortex-a7"; - device_type = "cpu"; - reg = <0x2>; - next-level-cache = <&l2>; - u-boot,dm-pre-reloc; - }; - - l2: l2-cache0 { - compatible = "cache"; - u-boot,dm-pre-reloc; - }; - }; - - clocks { - compatible = "simple-bus"; - #address-cells = <1>; - #size-cells = <1>; - ranges; - u-boot,dm-pre-reloc; - - periph_osc: periph-osc { - compatible = "fixed-clock"; - #clock-cells = <0>; - clock-frequency = <200000000>; - u-boot,dm-pre-reloc; - }; - - hsspi_pll: hsspi-pll { - compatible = "fixed-factor-clock"; - #clock-cells = <0>; - clocks = <&periph_osc>; - clock-mult = <2>; - clock-div = <1>; - }; - - refclk50mhz: refclk50mhz { - compatible = "fixed-clock"; - #clock-cells = <0>; - clock-frequency = <50000000>; - }; - }; - - ubus { - compatible = "simple-bus"; - #address-cells = <1>; - #size-cells = <1>; - u-boot,dm-pre-reloc; - - uart0: serial@ff812000 { - compatible = "arm,pl011", "arm,primecell"; - reg = <0xff812000 0x1000>; - clock = <50000000>; - - status = "disabled"; - }; - - wdt1: watchdog@ff800480 { - compatible = "brcm,bcm6345-wdt"; - reg = <0xff800480 0x14>; - clocks = <&refclk50mhz>; - }; - - wdt2: watchdog@ff8004c0 { - compatible = "brcm,bcm6345-wdt"; - reg = <0xff8004c0 0x14>; - clocks = <&refclk50mhz>; - }; - - wdt-reboot { - compatible = "wdt-reboot"; - wdt = <&wdt1>; - }; - - gpio0: gpio-controller@0xff800500 { - compatible = "brcm,bcm6345-gpio"; - reg = <0xff800500 0x4>, - <0xff800520 0x4>; - gpio-controller; - #gpio-cells = <2>; - - status = "disabled"; - }; - - gpio1: gpio-controller@0xff800504 { - compatible = "brcm,bcm6345-gpio"; - reg = <0xff800504 0x4>, - <0xff800524 0x4>; - gpio-controller; - #gpio-cells = <2>; - - status = "disabled"; - }; - - gpio2: gpio-controller@0xff800508 { - compatible = "brcm,bcm6345-gpio"; - reg = <0xff800508 0x4>, - <0xff800528 0x4>; - gpio-controller; - #gpio-cells = <2>; - - status = "disabled"; - }; - - gpio3: gpio-controller@0xff80050c { - compatible = "brcm,bcm6345-gpio"; - reg = <0xff80050c 0x4>, - <0xff80052c 0x4>; - gpio-controller; - #gpio-cells = <2>; - - status = "disabled"; - }; - - gpio4: gpio-controller@0xff800510 { - compatible = "brcm,bcm6345-gpio"; - reg = <0xff800510 0x4>, - <0xff800530 0x4>; - gpio-controller; - #gpio-cells = <2>; - - status = "disabled"; - }; - - gpio5: gpio-controller@0xff800514 { - compatible = "brcm,bcm6345-gpio"; - reg = <0xff800514 0x4>, - <0xff800534 0x4>; - gpio-controller; - #gpio-cells = <2>; - - status = "disabled"; - }; - - gpio6: gpio-controller@0xff800518 { - compatible = "brcm,bcm6345-gpio"; - reg = <0xff800518 0x4>, - <0xff800538 0x4>; - gpio-controller; - #gpio-cells = <2>; - - status = "disabled"; - }; - - gpio7: gpio-controller@0xff80051c { - compatible = "brcm,bcm6345-gpio"; - reg = <0xff80051c 0x4>, - <0xff80053c 0x4>; - gpio-controller; - #gpio-cells = <2>; - - status = "disabled"; - }; - - nand: nand-controller@ff801800 { - compatible = "brcm,nand-bcm6753", - "brcm,brcmnand-v5.0", - "brcm,brcmnand"; - reg-names = "nand", "nand-int-base", "nand-cache"; - reg = <0xff801800 0x180>, - <0xff802000 0x10>, - <0xff801c00 0x200>; - parameter-page-big-endian = <0>; - - status = "disabled"; - }; - - leds: led-controller@ff803000 { - compatible = "brcm,bcm6753-leds"; - reg = <0xff803000 0x3480>; - - status = "disabled"; - }; - }; -}; diff --git a/arch/arm/dts/bcm6855.dtsi b/arch/arm/dts/bcm6855.dtsi index 620f51aee1a2..05e0a4e0da7c 100644 --- a/arch/arm/dts/bcm6855.dtsi +++ b/arch/arm/dts/bcm6855.dtsi @@ -1,5 +1,6 @@ // SPDX-License-Identifier: (GPL-2.0+ OR MIT) /* + * Copyright (C) 2022 Philippe Reynes <philippe.reynes@softathome.com> * Copyright 2022 Broadcom Ltd. */ @@ -64,6 +65,8 @@ }; clocks: clocks { + u-boot,dm-pre-reloc; + periph_clk: periph-clk { compatible = "fixed-clock"; #clock-cells = <0>; @@ -77,6 +80,22 @@ clock-div = <4>; clock-mult = <1>; }; + + hsspi_pll: hsspi-pll { + compatible = "fixed-factor-clock"; + #clock-cells = <0>; + clocks = <&periph_clk>; + clock-mult = <2>; + clock-div = <1>; + }; + + wdt_clk: wdt-clk { + compatible = "fixed-factor-clock"; + #clock-cells = <0>; + clocks = <&periph_clk>; + clock-div = <4>; + clock-mult = <1>; + }; }; psci { @@ -107,6 +126,7 @@ #address-cells = <1>; #size-cells = <1>; ranges = <0 0xff800000 0x800000>; + u-boot,dm-pre-reloc; uart0: serial@12000 { compatible = "arm,pl011", "arm,primecell"; @@ -116,5 +136,122 @@ clock-names = "uartclk", "apb_pclk"; status = "disabled"; }; + + wdt1: watchdog@480 { + compatible = "brcm,bcm6345-wdt"; + reg = <0x480 0x14>; + clocks = <&wdt_clk>; + }; + + wdt2: watchdog@4c0 { + compatible = "brcm,bcm6345-wdt"; + reg = <0x4c0 0x14>; + clocks = <&wdt_clk>; + }; + + wdt-reboot { + compatible = "wdt-reboot"; + wdt = <&wdt1>; + }; + + gpio0: gpio-controller@500 { + compatible = "brcm,bcm6345-gpio"; + reg = <0x500 0x4>, + <0x520 0x4>; + gpio-controller; + #gpio-cells = <2>; + + status = "disabled"; + }; + + gpio1: gpio-controller@504 { + compatible = "brcm,bcm6345-gpio"; + reg = <0x504 0x4>, + <0x524 0x4>; + gpio-controller; + #gpio-cells = <2>; + + status = "disabled"; + }; + + gpio2: gpio-controller@508 { + compatible = "brcm,bcm6345-gpio"; + reg = <0x508 0x4>, + <0x528 0x4>; + gpio-controller; + #gpio-cells = <2>; + + status = "disabled"; + }; + + gpio3: gpio-controller@50c { + compatible = "brcm,bcm6345-gpio"; + reg = <0x50c 0x4>, + <0x52c 0x4>; + gpio-controller; + #gpio-cells = <2>; + + status = "disabled"; + }; + + gpio4: gpio-controller@510 { + compatible = "brcm,bcm6345-gpio"; + reg = <0x510 0x4>, + <0x530 0x4>; + gpio-controller; + #gpio-cells = <2>; + + status = "disabled"; + }; + + gpio5: gpio-controller@514 { + compatible = "brcm,bcm6345-gpio"; + reg = <0x514 0x4>, + <0x534 0x4>; + gpio-controller; + #gpio-cells = <2>; + + status = "disabled"; + }; + + gpio6: gpio-controller@518 { + compatible = "brcm,bcm6345-gpio"; + reg = <0x518 0x4>, + <0x538 0x4>; + gpio-controller; + #gpio-cells = <2>; + + status = "disabled"; + }; + + gpio7: gpio-controller@51c { + compatible = "brcm,bcm6345-gpio"; + reg = <0x51c 0x4>, + <0x53c 0x4>; + gpio-controller; + #gpio-cells = <2>; + + status = "disabled"; + }; + + nand: nand-controller@1800 { + compatible = "brcm,nand-bcm6753", + "brcm,brcmnand-v5.0", + "brcm,brcmnand"; + reg-names = "nand", "nand-int-base", "nand-cache"; + reg = <0x1800 0x180>, + <0x2000 0x10>, + <0x1c00 0x200>; + parameter-page-big-endian = <0>; + + status = "disabled"; + }; + + leds: led-controller@3000 { + compatible = "brcm,bcm6753-leds"; + reg = <0x3000 0x3480>; + + status = "disabled"; + }; }; }; diff --git a/arch/arm/dts/bcm96753ref.dts b/arch/arm/dts/bcm96753ref.dts index ca15ca5f108d..f74137f18f46 100644 --- a/arch/arm/dts/bcm96753ref.dts +++ b/arch/arm/dts/bcm96753ref.dts @@ -5,13 +5,13 @@ /dts-v1/; -#include "bcm6753.dtsi" +#include "bcm6855.dtsi" #include <dt-bindings/gpio/gpio.h> / { - model = "Broadcom bcm6753ref"; - compatible = "broadcom,bcm6753ref", "brcm,bcm6753"; + model = "Broadcom BCM96753REF Reference Board"; + compatible = "brcm,bcm96753ref", "brcm,bcm6855", "brcm,bcmbca"; aliases { serial0 = &uart0; diff --git a/board/broadcom/bcm96753ref/Kconfig b/board/broadcom/bcm96753ref/Kconfig deleted file mode 100644 index 479e7905787b..000000000000 --- a/board/broadcom/bcm96753ref/Kconfig +++ /dev/null @@ -1,16 +0,0 @@ -if TARGET_BCM96753REF - -config SYS_VENDOR - default "broadcom" - -config SYS_BOARD - default "bcm96753ref" - -config SYS_CONFIG_NAME - default "broadcom_bcm96753ref" - -endif - -config TARGET_BCM96753REF - bool "Support Broadcom bcm96753ref" - depends on ARCH_BCM6753 diff --git a/board/broadcom/bcm96753ref/MAINTAINERS b/board/broadcom/bcm96753ref/MAINTAINERS deleted file mode 100644 index be060f5a709c..000000000000 --- a/board/broadcom/bcm96753ref/MAINTAINERS +++ /dev/null @@ -1,6 +0,0 @@ -BROADCOM BCM96753REF -M: Philippe Reynes <philippe.reynes@softathome.com> -S: Maintained -F: board/broadcom/bcm96753ref -F: include/configs/broadcom_bcm96753ref.h -F: configs/bcm96753ref_ram_defconfig diff --git a/board/broadcom/bcm96753ref/Makefile b/board/broadcom/bcm96753ref/Makefile deleted file mode 100644 index a1fa2bff8670..000000000000 --- a/board/broadcom/bcm96753ref/Makefile +++ /dev/null @@ -1,3 +0,0 @@ -# SPDX-License-Identifier: GPL-2.0+ - -obj-y += bcm96753ref.o diff --git a/board/broadcom/bcm96753ref/bcm96753ref.c b/board/broadcom/bcm96753ref/bcm96753ref.c deleted file mode 100644 index bf78d843aa57..000000000000 --- a/board/broadcom/bcm96753ref/bcm96753ref.c +++ /dev/null @@ -1,40 +0,0 @@ -// SPDX-License-Identifier: GPL-2.0+ -/* - * Copyright (C) 2022 Philippe Reynes <philippe.reynes@softathome.com> - */ - -#include <common.h> -#include <fdtdec.h> -#include <linux/io.h> -#include <cpu_func.h> - -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; -} - -void enable_caches(void) -{ - icache_enable(); - dcache_enable(); -} diff --git a/configs/bcm96753ref_ram_defconfig b/configs/bcm96753ref_ram_defconfig deleted file mode 100644 index 59ac1cdf7e1e..000000000000 --- a/configs/bcm96753ref_ram_defconfig +++ /dev/null @@ -1,87 +0,0 @@ -CONFIG_ARM=y -CONFIG_SKIP_LOWLEVEL_INIT=y -CONFIG_SKIP_LOWLEVEL_INIT_ONLY=y -CONFIG_SYS_ARCH_TIMER=y -CONFIG_ARCH_BCM6753=y -CONFIG_SYS_TEXT_BASE=0x1000000 -CONFIG_SYS_MALLOC_F_LEN=0x1000 -CONFIG_NR_DRAM_BANKS=1 -CONFIG_ENV_SIZE=0x20000 -CONFIG_DM_GPIO=y -CONFIG_DEFAULT_DEVICE_TREE="bcm96753ref" -CONFIG_ARMV7_LPAE=y -CONFIG_SYS_LOAD_ADDR=0x1000000 -CONFIG_TARGET_BCM96753REF=y -CONFIG_ENV_VARS_UBOOT_CONFIG=y -CONFIG_HAS_CUSTOM_SYS_INIT_SP_ADDR=y -CONFIG_CUSTOM_SYS_INIT_SP_ADDR=0x2000000 -CONFIG_FIT=y -CONFIG_FIT_SIGNATURE=y -CONFIG_FIT_CIPHER=y -CONFIG_FIT_VERBOSE=y -CONFIG_LEGACY_IMAGE_FORMAT=y -CONFIG_SUPPORT_RAW_INITRD=y -CONFIG_OF_STDOUT_VIA_ALIAS=y -# CONFIG_AUTOBOOT is not set -CONFIG_SYS_CONSOLE_IS_IN_ENV=y -CONFIG_HUSH_PARSER=y -CONFIG_SYS_MAXARGS=24 -CONFIG_SYS_CBSIZE=256 -CONFIG_SYS_PBSIZE=276 -# CONFIG_CMD_BOOTD is not set -# CONFIG_BOOTM_NETBSD is not set -# CONFIG_BOOTM_PLAN9 is not set -# CONFIG_BOOTM_RTEMS is not set -# CONFIG_BOOTM_VXWORKS is not set -# CONFIG_CMD_ELF is not set -# CONFIG_CMD_XIMG is not set -# CONFIG_CMD_EXPORTENV is not set -# CONFIG_CMD_IMPORTENV is not set -# CONFIG_CMD_EDITENV is not set -# CONFIG_CMD_SAVEENV is not set -# CONFIG_CMD_ENV_EXISTS is not set -# CONFIG_CMD_CRC32 is not set -CONFIG_CMD_MEMINFO=y -CONFIG_CMD_CLK=y -CONFIG_CMD_GPIO=y -# CONFIG_CMD_LOADS is not set -CONFIG_CMD_MTD=y -CONFIG_CMD_NAND=y -CONFIG_CMD_SPI=y -CONFIG_CMD_WDT=y -# CONFIG_CMD_SETEXPR is not set -CONFIG_CMD_CACHE=y -CONFIG_CMD_MTDPARTS=y -CONFIG_CMD_UBI=y -# CONFIG_CMD_UBIFS is not set -# CONFIG_NET is not set -CONFIG_REGMAP=y -CONFIG_SYSCON=y -CONFIG_BUTTON=y -CONFIG_BUTTON_GPIO=y -CONFIG_CLK=y -CONFIG_BCM6345_GPIO=y -# CONFIG_INPUT is not set -CONFIG_LED=y -CONFIG_LED_BCM6753=y -CONFIG_LED_BLINK=y -CONFIG_LED_GPIO=y -CONFIG_MISC=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_6753=y -CONFIG_PINCTRL=y -CONFIG_PINCONF=y -CONFIG_SPECIFY_CONSOLE_INDEX=y -CONFIG_DM_SERIAL=y -CONFIG_PL01X_SERIAL=y -CONFIG_SPI=y -CONFIG_DM_SPI=y -CONFIG_SPI_MEM=y -CONFIG_SYSRESET=y -CONFIG_SYSRESET_WATCHDOG=y -CONFIG_WDT_BCM6345=y -CONFIG_REGEX=y diff --git a/include/configs/bcm96855.h b/include/configs/bcm96855.h index 6e420f2c66fb..ba2d8a317d25 100644 --- a/include/configs/bcm96855.h +++ b/include/configs/bcm96855.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_bcm96753ref.h b/include/configs/broadcom_bcm96753ref.h deleted file mode 100644 index 33c70c73c1fc..000000000000 --- a/include/configs/broadcom_bcm96753ref.h +++ /dev/null @@ -1,32 +0,0 @@ -/* SPDX-License-Identifier: GPL-2.0+ */ -/* - * Copyright (C) 2022 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 */ - -/* - * 6853 - */ - -/* 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 */ - -/* - * 96753ref - */ -- 2.37.1 [-- Attachment #2: S/MIME Cryptographic Signature --] [-- Type: application/pkcs7-signature, Size: 4212 bytes --] ^ permalink raw reply related [flat|nested] 8+ messages in thread
* Re: [PATCH v2 2/3] arm: bcmbca: remove bcm6753 support under CONFIG_ARCH_BCM6753 2022-08-22 18:49 ` [PATCH v2 2/3] arm: bcmbca: remove bcm6753 support under CONFIG_ARCH_BCM6753 William Zhang @ 2022-08-24 12:42 ` Philippe REYNES 0 siblings, 0 replies; 8+ messages in thread From: Philippe REYNES @ 2022-08-24 12:42 UTC (permalink / raw) To: William Zhang, U-Boot Mailing List Cc: f.fainelli, anand.gore, rafal, dan.beygelman, kursad.oney, joel.peshkin, Andre Przywara, Christian Hewitt, Fabio Estevam, Rayagonda Kokatanur, Rick Chen, Samuel Holland, Sean Anderson, Simon Glass, Tom Rini, Tomer Yacoby, Ying-Chun Liu (PaulLiu) Hi William, Le 22/08/2022 à 20:49, William Zhang a écrit : > BCM6753 is essentially same as the main chip BCM6855 but with different > SKU number. Now that BCM6855 is supported under CONFIG_ARCH_BCMBCA and > CONFIG_BCM6855, remove the original ARCH_BCM6753 support and migrate its > configuration and dts settings. This includes: > - Remove the bcm96753ref board folder. It is replaced by the > generic bcmbca board folder. > - Merge the 6753.dtsi setting to the new 6855.dtsi file. Update > 96753ref board dts with the new compatible string. > - Delete broadcom_bcm96763ref.h and merge its setting to the new > bcm96855.h file. > - Delete bcm96753ref_ram_defconfig and use a basic config version of > bcm96855_defconfig > > Signed-off-by: William Zhang <william.zhang@broadcom.com> Reviewed-by: Philippe Reynes <philippe.reynes@softathome.com> > --- > > (no changes since v1) > > arch/arm/Kconfig | 8 - > arch/arm/dts/Makefile | 6 +- > arch/arm/dts/bcm6753.dtsi | 208 ----------------------- > arch/arm/dts/bcm6855.dtsi | 137 +++++++++++++++ > arch/arm/dts/bcm96753ref.dts | 6 +- > board/broadcom/bcm96753ref/Kconfig | 16 -- > board/broadcom/bcm96753ref/MAINTAINERS | 6 - > board/broadcom/bcm96753ref/Makefile | 3 - > board/broadcom/bcm96753ref/bcm96753ref.c | 40 ----- > configs/bcm96753ref_ram_defconfig | 87 ---------- > include/configs/bcm96855.h | 4 + > include/configs/broadcom_bcm96753ref.h | 32 ---- > 12 files changed, 146 insertions(+), 407 deletions(-) > delete mode 100644 arch/arm/dts/bcm6753.dtsi > delete mode 100644 board/broadcom/bcm96753ref/Kconfig > delete mode 100644 board/broadcom/bcm96753ref/MAINTAINERS > delete mode 100644 board/broadcom/bcm96753ref/Makefile > delete mode 100644 board/broadcom/bcm96753ref/bcm96753ref.c > delete mode 100644 configs/bcm96753ref_ram_defconfig > delete mode 100644 include/configs/broadcom_bcm96753ref.h > > diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig > index 063616ff8d0b..c1f195e9d106 100644 > --- a/arch/arm/Kconfig > +++ b/arch/arm/Kconfig > @@ -665,13 +665,6 @@ config ARCH_BCM283X > imply CMD_DM > imply FAT_WRITE > > -config ARCH_BCM6753 > - bool "Broadcom BCM6753 family" > - select CPU_V7A > - select DM > - select OF_CONTROL > - imply CMD_DM > - > config ARCH_BCMSTB > bool "Broadcom BCM7XXX family" > select CPU_V7A > @@ -2267,7 +2260,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/bcm96753ref/Kconfig" > source "board/broadcom/bcmns3/Kconfig" > source "board/cavium/thunderx/Kconfig" > source "board/eets/pdu001/Kconfig" > diff --git a/arch/arm/dts/Makefile b/arch/arm/dts/Makefile > index 5fd38cc63b63..8fba735cc8ab 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_BCM6753) += \ > - bcm96753ref.dtb > - > dtb-$(CONFIG_TARGET_BCMNS3) += ns3-board.dtb > > dtb-$(CONFIG_ARCH_BCMSTB) += bcm7xxx.dtb > @@ -1177,7 +1174,8 @@ dtb-$(CONFIG_BCM6813) += \ > dtb-$(CONFIG_BCM6846) += \ > bcm96846.dtb > dtb-$(CONFIG_BCM6855) += \ > - bcm96855.dtb > + bcm96855.dtb \ > + bcm96753ref.dtb > dtb-$(CONFIG_BCM6856) += \ > bcm96856.dtb \ > bcm968360bg.dtb > diff --git a/arch/arm/dts/bcm6753.dtsi b/arch/arm/dts/bcm6753.dtsi > deleted file mode 100644 > index e88ab095c290..000000000000 > --- a/arch/arm/dts/bcm6753.dtsi > +++ /dev/null > @@ -1,208 +0,0 @@ > -// SPDX-License-Identifier: GPL-2.0+ > -/* > - * Copyright (C) 2022 Philippe Reynes <philippe.reynes@softathome.com> > - */ > - > -#include "skeleton.dtsi" > - > -/ { > - compatible = "brcm,bcm6753"; > - #address-cells = <1>; > - #size-cells = <1>; > - > - cpus { > - #address-cells = <1>; > - #size-cells = <0>; > - u-boot,dm-pre-reloc; > - > - cpu0: cpu@0 { > - compatible = "arm,cortex-a7"; > - device_type = "cpu"; > - reg = <0x0>; > - next-level-cache = <&l2>; > - u-boot,dm-pre-reloc; > - }; > - > - cpu1: cpu@1 { > - compatible = "arm,cortex-a7"; > - device_type = "cpu"; > - reg = <0x1>; > - next-level-cache = <&l2>; > - u-boot,dm-pre-reloc; > - }; > - > - cpu2: cpu@2 { > - compatible = "arm,cortex-a7"; > - device_type = "cpu"; > - reg = <0x2>; > - next-level-cache = <&l2>; > - u-boot,dm-pre-reloc; > - }; > - > - l2: l2-cache0 { > - compatible = "cache"; > - u-boot,dm-pre-reloc; > - }; > - }; > - > - clocks { > - compatible = "simple-bus"; > - #address-cells = <1>; > - #size-cells = <1>; > - ranges; > - u-boot,dm-pre-reloc; > - > - periph_osc: periph-osc { > - compatible = "fixed-clock"; > - #clock-cells = <0>; > - clock-frequency = <200000000>; > - u-boot,dm-pre-reloc; > - }; > - > - hsspi_pll: hsspi-pll { > - compatible = "fixed-factor-clock"; > - #clock-cells = <0>; > - clocks = <&periph_osc>; > - clock-mult = <2>; > - clock-div = <1>; > - }; > - > - refclk50mhz: refclk50mhz { > - compatible = "fixed-clock"; > - #clock-cells = <0>; > - clock-frequency = <50000000>; > - }; > - }; > - > - ubus { > - compatible = "simple-bus"; > - #address-cells = <1>; > - #size-cells = <1>; > - u-boot,dm-pre-reloc; > - > - uart0: serial@ff812000 { > - compatible = "arm,pl011", "arm,primecell"; > - reg = <0xff812000 0x1000>; > - clock = <50000000>; > - > - status = "disabled"; > - }; > - > - wdt1: watchdog@ff800480 { > - compatible = "brcm,bcm6345-wdt"; > - reg = <0xff800480 0x14>; > - clocks = <&refclk50mhz>; > - }; > - > - wdt2: watchdog@ff8004c0 { > - compatible = "brcm,bcm6345-wdt"; > - reg = <0xff8004c0 0x14>; > - clocks = <&refclk50mhz>; > - }; > - > - wdt-reboot { > - compatible = "wdt-reboot"; > - wdt = <&wdt1>; > - }; > - > - gpio0: gpio-controller@0xff800500 { > - compatible = "brcm,bcm6345-gpio"; > - reg = <0xff800500 0x4>, > - <0xff800520 0x4>; > - gpio-controller; > - #gpio-cells = <2>; > - > - status = "disabled"; > - }; > - > - gpio1: gpio-controller@0xff800504 { > - compatible = "brcm,bcm6345-gpio"; > - reg = <0xff800504 0x4>, > - <0xff800524 0x4>; > - gpio-controller; > - #gpio-cells = <2>; > - > - status = "disabled"; > - }; > - > - gpio2: gpio-controller@0xff800508 { > - compatible = "brcm,bcm6345-gpio"; > - reg = <0xff800508 0x4>, > - <0xff800528 0x4>; > - gpio-controller; > - #gpio-cells = <2>; > - > - status = "disabled"; > - }; > - > - gpio3: gpio-controller@0xff80050c { > - compatible = "brcm,bcm6345-gpio"; > - reg = <0xff80050c 0x4>, > - <0xff80052c 0x4>; > - gpio-controller; > - #gpio-cells = <2>; > - > - status = "disabled"; > - }; > - > - gpio4: gpio-controller@0xff800510 { > - compatible = "brcm,bcm6345-gpio"; > - reg = <0xff800510 0x4>, > - <0xff800530 0x4>; > - gpio-controller; > - #gpio-cells = <2>; > - > - status = "disabled"; > - }; > - > - gpio5: gpio-controller@0xff800514 { > - compatible = "brcm,bcm6345-gpio"; > - reg = <0xff800514 0x4>, > - <0xff800534 0x4>; > - gpio-controller; > - #gpio-cells = <2>; > - > - status = "disabled"; > - }; > - > - gpio6: gpio-controller@0xff800518 { > - compatible = "brcm,bcm6345-gpio"; > - reg = <0xff800518 0x4>, > - <0xff800538 0x4>; > - gpio-controller; > - #gpio-cells = <2>; > - > - status = "disabled"; > - }; > - > - gpio7: gpio-controller@0xff80051c { > - compatible = "brcm,bcm6345-gpio"; > - reg = <0xff80051c 0x4>, > - <0xff80053c 0x4>; > - gpio-controller; > - #gpio-cells = <2>; > - > - status = "disabled"; > - }; > - > - nand: nand-controller@ff801800 { > - compatible = "brcm,nand-bcm6753", > - "brcm,brcmnand-v5.0", > - "brcm,brcmnand"; > - reg-names = "nand", "nand-int-base", "nand-cache"; > - reg = <0xff801800 0x180>, > - <0xff802000 0x10>, > - <0xff801c00 0x200>; > - parameter-page-big-endian = <0>; > - > - status = "disabled"; > - }; > - > - leds: led-controller@ff803000 { > - compatible = "brcm,bcm6753-leds"; > - reg = <0xff803000 0x3480>; > - > - status = "disabled"; > - }; > - }; > -}; > diff --git a/arch/arm/dts/bcm6855.dtsi b/arch/arm/dts/bcm6855.dtsi > index 620f51aee1a2..05e0a4e0da7c 100644 > --- a/arch/arm/dts/bcm6855.dtsi > +++ b/arch/arm/dts/bcm6855.dtsi > @@ -1,5 +1,6 @@ > // SPDX-License-Identifier: (GPL-2.0+ OR MIT) > /* > + * Copyright (C) 2022 Philippe Reynes <philippe.reynes@softathome.com> > * Copyright 2022 Broadcom Ltd. > */ > > @@ -64,6 +65,8 @@ > }; > > clocks: clocks { > + u-boot,dm-pre-reloc; > + > periph_clk: periph-clk { > compatible = "fixed-clock"; > #clock-cells = <0>; > @@ -77,6 +80,22 @@ > clock-div = <4>; > clock-mult = <1>; > }; > + > + hsspi_pll: hsspi-pll { > + compatible = "fixed-factor-clock"; > + #clock-cells = <0>; > + clocks = <&periph_clk>; > + clock-mult = <2>; > + clock-div = <1>; > + }; > + > + wdt_clk: wdt-clk { > + compatible = "fixed-factor-clock"; > + #clock-cells = <0>; > + clocks = <&periph_clk>; > + clock-div = <4>; > + clock-mult = <1>; > + }; > }; > > psci { > @@ -107,6 +126,7 @@ > #address-cells = <1>; > #size-cells = <1>; > ranges = <0 0xff800000 0x800000>; > + u-boot,dm-pre-reloc; > > uart0: serial@12000 { > compatible = "arm,pl011", "arm,primecell"; > @@ -116,5 +136,122 @@ > clock-names = "uartclk", "apb_pclk"; > status = "disabled"; > }; > + > + wdt1: watchdog@480 { > + compatible = "brcm,bcm6345-wdt"; > + reg = <0x480 0x14>; > + clocks = <&wdt_clk>; > + }; > + > + wdt2: watchdog@4c0 { > + compatible = "brcm,bcm6345-wdt"; > + reg = <0x4c0 0x14>; > + clocks = <&wdt_clk>; > + }; > + > + wdt-reboot { > + compatible = "wdt-reboot"; > + wdt = <&wdt1>; > + }; > + > + gpio0: gpio-controller@500 { > + compatible = "brcm,bcm6345-gpio"; > + reg = <0x500 0x4>, > + <0x520 0x4>; > + gpio-controller; > + #gpio-cells = <2>; > + > + status = "disabled"; > + }; > + > + gpio1: gpio-controller@504 { > + compatible = "brcm,bcm6345-gpio"; > + reg = <0x504 0x4>, > + <0x524 0x4>; > + gpio-controller; > + #gpio-cells = <2>; > + > + status = "disabled"; > + }; > + > + gpio2: gpio-controller@508 { > + compatible = "brcm,bcm6345-gpio"; > + reg = <0x508 0x4>, > + <0x528 0x4>; > + gpio-controller; > + #gpio-cells = <2>; > + > + status = "disabled"; > + }; > + > + gpio3: gpio-controller@50c { > + compatible = "brcm,bcm6345-gpio"; > + reg = <0x50c 0x4>, > + <0x52c 0x4>; > + gpio-controller; > + #gpio-cells = <2>; > + > + status = "disabled"; > + }; > + > + gpio4: gpio-controller@510 { > + compatible = "brcm,bcm6345-gpio"; > + reg = <0x510 0x4>, > + <0x530 0x4>; > + gpio-controller; > + #gpio-cells = <2>; > + > + status = "disabled"; > + }; > + > + gpio5: gpio-controller@514 { > + compatible = "brcm,bcm6345-gpio"; > + reg = <0x514 0x4>, > + <0x534 0x4>; > + gpio-controller; > + #gpio-cells = <2>; > + > + status = "disabled"; > + }; > + > + gpio6: gpio-controller@518 { > + compatible = "brcm,bcm6345-gpio"; > + reg = <0x518 0x4>, > + <0x538 0x4>; > + gpio-controller; > + #gpio-cells = <2>; > + > + status = "disabled"; > + }; > + > + gpio7: gpio-controller@51c { > + compatible = "brcm,bcm6345-gpio"; > + reg = <0x51c 0x4>, > + <0x53c 0x4>; > + gpio-controller; > + #gpio-cells = <2>; > + > + status = "disabled"; > + }; > + > + nand: nand-controller@1800 { > + compatible = "brcm,nand-bcm6753", > + "brcm,brcmnand-v5.0", > + "brcm,brcmnand"; > + reg-names = "nand", "nand-int-base", "nand-cache"; > + reg = <0x1800 0x180>, > + <0x2000 0x10>, > + <0x1c00 0x200>; > + parameter-page-big-endian = <0>; > + > + status = "disabled"; > + }; > + > + leds: led-controller@3000 { > + compatible = "brcm,bcm6753-leds"; > + reg = <0x3000 0x3480>; > + > + status = "disabled"; > + }; > }; > }; > diff --git a/arch/arm/dts/bcm96753ref.dts b/arch/arm/dts/bcm96753ref.dts > index ca15ca5f108d..f74137f18f46 100644 > --- a/arch/arm/dts/bcm96753ref.dts > +++ b/arch/arm/dts/bcm96753ref.dts > @@ -5,13 +5,13 @@ > > /dts-v1/; > > -#include "bcm6753.dtsi" > +#include "bcm6855.dtsi" > > #include <dt-bindings/gpio/gpio.h> > > / { > - model = "Broadcom bcm6753ref"; > - compatible = "broadcom,bcm6753ref", "brcm,bcm6753"; > + model = "Broadcom BCM96753REF Reference Board"; > + compatible = "brcm,bcm96753ref", "brcm,bcm6855", "brcm,bcmbca"; > > aliases { > serial0 = &uart0; > diff --git a/board/broadcom/bcm96753ref/Kconfig b/board/broadcom/bcm96753ref/Kconfig > deleted file mode 100644 > index 479e7905787b..000000000000 > --- a/board/broadcom/bcm96753ref/Kconfig > +++ /dev/null > @@ -1,16 +0,0 @@ > -if TARGET_BCM96753REF > - > -config SYS_VENDOR > - default "broadcom" > - > -config SYS_BOARD > - default "bcm96753ref" > - > -config SYS_CONFIG_NAME > - default "broadcom_bcm96753ref" > - > -endif > - > -config TARGET_BCM96753REF > - bool "Support Broadcom bcm96753ref" > - depends on ARCH_BCM6753 > diff --git a/board/broadcom/bcm96753ref/MAINTAINERS b/board/broadcom/bcm96753ref/MAINTAINERS > deleted file mode 100644 > index be060f5a709c..000000000000 > --- a/board/broadcom/bcm96753ref/MAINTAINERS > +++ /dev/null > @@ -1,6 +0,0 @@ > -BROADCOM BCM96753REF > -M: Philippe Reynes <philippe.reynes@softathome.com> > -S: Maintained > -F: board/broadcom/bcm96753ref > -F: include/configs/broadcom_bcm96753ref.h > -F: configs/bcm96753ref_ram_defconfig > diff --git a/board/broadcom/bcm96753ref/Makefile b/board/broadcom/bcm96753ref/Makefile > deleted file mode 100644 > index a1fa2bff8670..000000000000 > --- a/board/broadcom/bcm96753ref/Makefile > +++ /dev/null > @@ -1,3 +0,0 @@ > -# SPDX-License-Identifier: GPL-2.0+ > - > -obj-y += bcm96753ref.o > diff --git a/board/broadcom/bcm96753ref/bcm96753ref.c b/board/broadcom/bcm96753ref/bcm96753ref.c > deleted file mode 100644 > index bf78d843aa57..000000000000 > --- a/board/broadcom/bcm96753ref/bcm96753ref.c > +++ /dev/null > @@ -1,40 +0,0 @@ > -// SPDX-License-Identifier: GPL-2.0+ > -/* > - * Copyright (C) 2022 Philippe Reynes <philippe.reynes@softathome.com> > - */ > - > -#include <common.h> > -#include <fdtdec.h> > -#include <linux/io.h> > -#include <cpu_func.h> > - > -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; > -} > - > -void enable_caches(void) > -{ > - icache_enable(); > - dcache_enable(); > -} > diff --git a/configs/bcm96753ref_ram_defconfig b/configs/bcm96753ref_ram_defconfig > deleted file mode 100644 > index 59ac1cdf7e1e..000000000000 > --- a/configs/bcm96753ref_ram_defconfig > +++ /dev/null > @@ -1,87 +0,0 @@ > -CONFIG_ARM=y > -CONFIG_SKIP_LOWLEVEL_INIT=y > -CONFIG_SKIP_LOWLEVEL_INIT_ONLY=y > -CONFIG_SYS_ARCH_TIMER=y > -CONFIG_ARCH_BCM6753=y > -CONFIG_SYS_TEXT_BASE=0x1000000 > -CONFIG_SYS_MALLOC_F_LEN=0x1000 > -CONFIG_NR_DRAM_BANKS=1 > -CONFIG_ENV_SIZE=0x20000 > -CONFIG_DM_GPIO=y > -CONFIG_DEFAULT_DEVICE_TREE="bcm96753ref" > -CONFIG_ARMV7_LPAE=y > -CONFIG_SYS_LOAD_ADDR=0x1000000 > -CONFIG_TARGET_BCM96753REF=y > -CONFIG_ENV_VARS_UBOOT_CONFIG=y > -CONFIG_HAS_CUSTOM_SYS_INIT_SP_ADDR=y > -CONFIG_CUSTOM_SYS_INIT_SP_ADDR=0x2000000 > -CONFIG_FIT=y > -CONFIG_FIT_SIGNATURE=y > -CONFIG_FIT_CIPHER=y > -CONFIG_FIT_VERBOSE=y > -CONFIG_LEGACY_IMAGE_FORMAT=y > -CONFIG_SUPPORT_RAW_INITRD=y > -CONFIG_OF_STDOUT_VIA_ALIAS=y > -# CONFIG_AUTOBOOT is not set > -CONFIG_SYS_CONSOLE_IS_IN_ENV=y > -CONFIG_HUSH_PARSER=y > -CONFIG_SYS_MAXARGS=24 > -CONFIG_SYS_CBSIZE=256 > -CONFIG_SYS_PBSIZE=276 > -# CONFIG_CMD_BOOTD is not set > -# CONFIG_BOOTM_NETBSD is not set > -# CONFIG_BOOTM_PLAN9 is not set > -# CONFIG_BOOTM_RTEMS is not set > -# CONFIG_BOOTM_VXWORKS is not set > -# CONFIG_CMD_ELF is not set > -# CONFIG_CMD_XIMG is not set > -# CONFIG_CMD_EXPORTENV is not set > -# CONFIG_CMD_IMPORTENV is not set > -# CONFIG_CMD_EDITENV is not set > -# CONFIG_CMD_SAVEENV is not set > -# CONFIG_CMD_ENV_EXISTS is not set > -# CONFIG_CMD_CRC32 is not set > -CONFIG_CMD_MEMINFO=y > -CONFIG_CMD_CLK=y > -CONFIG_CMD_GPIO=y > -# CONFIG_CMD_LOADS is not set > -CONFIG_CMD_MTD=y > -CONFIG_CMD_NAND=y > -CONFIG_CMD_SPI=y > -CONFIG_CMD_WDT=y > -# CONFIG_CMD_SETEXPR is not set > -CONFIG_CMD_CACHE=y > -CONFIG_CMD_MTDPARTS=y > -CONFIG_CMD_UBI=y > -# CONFIG_CMD_UBIFS is not set > -# CONFIG_NET is not set > -CONFIG_REGMAP=y > -CONFIG_SYSCON=y > -CONFIG_BUTTON=y > -CONFIG_BUTTON_GPIO=y > -CONFIG_CLK=y > -CONFIG_BCM6345_GPIO=y > -# CONFIG_INPUT is not set > -CONFIG_LED=y > -CONFIG_LED_BCM6753=y > -CONFIG_LED_BLINK=y > -CONFIG_LED_GPIO=y > -CONFIG_MISC=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_6753=y > -CONFIG_PINCTRL=y > -CONFIG_PINCONF=y > -CONFIG_SPECIFY_CONSOLE_INDEX=y > -CONFIG_DM_SERIAL=y > -CONFIG_PL01X_SERIAL=y > -CONFIG_SPI=y > -CONFIG_DM_SPI=y > -CONFIG_SPI_MEM=y > -CONFIG_SYSRESET=y > -CONFIG_SYSRESET_WATCHDOG=y > -CONFIG_WDT_BCM6345=y > -CONFIG_REGEX=y > diff --git a/include/configs/bcm96855.h b/include/configs/bcm96855.h > index 6e420f2c66fb..ba2d8a317d25 100644 > --- a/include/configs/bcm96855.h > +++ b/include/configs/bcm96855.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_bcm96753ref.h b/include/configs/broadcom_bcm96753ref.h > deleted file mode 100644 > index 33c70c73c1fc..000000000000 > --- a/include/configs/broadcom_bcm96753ref.h > +++ /dev/null > @@ -1,32 +0,0 @@ > -/* SPDX-License-Identifier: GPL-2.0+ */ > -/* > - * Copyright (C) 2022 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 */ > - > -/* > - * 6853 > - */ > - > -/* 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 */ > - > -/* > - * 96753ref > - */ ^ permalink raw reply [flat|nested] 8+ messages in thread
* [PATCH v2 3/3] arm: bcmbca: replace ARCH_BCM6753 symbols in Kconfig with BCM6855 2022-08-22 18:49 [PATCH v2 0/3] arm: bcmbca: move bcm6753 support under CONFIG_ARCH_BCMBCA William Zhang 2022-08-22 18:49 ` [PATCH v2 1/3] arm: bcmbca: add bcm6855 SoC " William Zhang 2022-08-22 18:49 ` [PATCH v2 2/3] arm: bcmbca: remove bcm6753 support under CONFIG_ARCH_BCM6753 William Zhang @ 2022-08-22 18:49 ` William Zhang 2022-08-24 12:42 ` Philippe REYNES 2 siblings, 1 reply; 8+ messages in thread From: William Zhang @ 2022-08-22 18:49 UTC (permalink / raw) To: U-Boot Mailing List Cc: f.fainelli, anand.gore, rafal, dan.beygelman, kursad.oney, philippe.reynes, joel.peshkin, William Zhang, Andre Przywara, Dario Binacchi, Eddie James, Hannes Schmelzer, Heiko Schocher, Ivan Vozvakhov, Michael Trimarchi, Michal Simek, Simon Glass, Stefan Roese, T Karthik Reddy, Tom Rini [-- Attachment #1: Type: text/plain, Size: 2326 bytes --] As CONFIG_ARCH_BCM6753 is replaced with CONFIG_BCM6855, update the driver Kconfig to use the new config symbol. Signed-off-by: William Zhang <william.zhang@broadcom.com> --- Changes in v2: - Update subject line to be more clear for patch 3 drivers/gpio/Kconfig | 2 +- drivers/led/Kconfig | 2 +- drivers/mtd/nand/raw/Kconfig | 2 +- drivers/watchdog/Kconfig | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/drivers/gpio/Kconfig b/drivers/gpio/Kconfig index 929f3fb9eacb..d8020de969ef 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 || BCM6856 || \ - BCM6858 || BCM63158 || ARCH_BCM6753) + BCM6858 || BCM63158 || BCM6855) help This driver supports the GPIO banks on BCM6345 SoCs. diff --git a/drivers/led/Kconfig b/drivers/led/Kconfig index 98f015a07f97..996b757e6d00 100644 --- a/drivers/led/Kconfig +++ b/drivers/led/Kconfig @@ -30,7 +30,7 @@ config LED_BCM6358 config LED_BCM6753 bool "LED Support for BCM6753" - depends on LED && ARCH_BCM6753 + depends on LED && BCM6855 help This option enables support for LEDs connected to the BCM6753 HW has blinking and fading capabilities and up to 32 LEDs can be controlled. diff --git a/drivers/mtd/nand/raw/Kconfig b/drivers/mtd/nand/raw/Kconfig index f8445e09633c..d6e3eeb3c093 100644 --- a/drivers/mtd/nand/raw/Kconfig +++ b/drivers/mtd/nand/raw/Kconfig @@ -97,7 +97,7 @@ config NAND_BRCMNAND_6368 config NAND_BRCMNAND_6753 bool "Support Broadcom NAND controller on bcm6753" - depends on NAND_BRCMNAND && ARCH_BCM6753 + depends on NAND_BRCMNAND && BCM6855 help Enable support for broadcom nand driver on bcm6753. diff --git a/drivers/watchdog/Kconfig b/drivers/watchdog/Kconfig index 84a4034fe87c..65f2d0821c60 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 || BCM6856 || \ - BCM6858 || BCM63158 || ARCH_BCM6753) + BCM6858 || BCM63158 || BCM6855) help Select this to enable watchdog timer for BCM6345 SoCs. The watchdog timer is stopped when initialized. -- 2.37.1 [-- Attachment #2: S/MIME Cryptographic Signature --] [-- Type: application/pkcs7-signature, Size: 4212 bytes --] ^ permalink raw reply related [flat|nested] 8+ messages in thread
* Re: [PATCH v2 3/3] arm: bcmbca: replace ARCH_BCM6753 symbols in Kconfig with BCM6855 2022-08-22 18:49 ` [PATCH v2 3/3] arm: bcmbca: replace ARCH_BCM6753 symbols in Kconfig with BCM6855 William Zhang @ 2022-08-24 12:42 ` Philippe REYNES 0 siblings, 0 replies; 8+ messages in thread From: Philippe REYNES @ 2022-08-24 12:42 UTC (permalink / raw) To: William Zhang, U-Boot Mailing List Cc: f.fainelli, anand.gore, rafal, dan.beygelman, kursad.oney, joel.peshkin, Andre Przywara, Dario Binacchi, Eddie James, Hannes Schmelzer, Heiko Schocher, Ivan Vozvakhov, Michael Trimarchi, Michal Simek, Simon Glass, Stefan Roese, T Karthik Reddy, Tom Rini Hi William, Le 22/08/2022 à 20:49, William Zhang a écrit : > As CONFIG_ARCH_BCM6753 is replaced with CONFIG_BCM6855, update the > driver 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 v2: > - Update subject line to be more clear for patch 3 > > drivers/gpio/Kconfig | 2 +- > drivers/led/Kconfig | 2 +- > drivers/mtd/nand/raw/Kconfig | 2 +- > drivers/watchdog/Kconfig | 2 +- > 4 files changed, 4 insertions(+), 4 deletions(-) > > diff --git a/drivers/gpio/Kconfig b/drivers/gpio/Kconfig > index 929f3fb9eacb..d8020de969ef 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 || BCM6856 || \ > - BCM6858 || BCM63158 || ARCH_BCM6753) > + BCM6858 || BCM63158 || BCM6855) > help > This driver supports the GPIO banks on BCM6345 SoCs. > > diff --git a/drivers/led/Kconfig b/drivers/led/Kconfig > index 98f015a07f97..996b757e6d00 100644 > --- a/drivers/led/Kconfig > +++ b/drivers/led/Kconfig > @@ -30,7 +30,7 @@ config LED_BCM6358 > > config LED_BCM6753 > bool "LED Support for BCM6753" > - depends on LED && ARCH_BCM6753 > + depends on LED && BCM6855 > help > This option enables support for LEDs connected to the BCM6753 > HW has blinking and fading capabilities and up to 32 LEDs can be controlled. > diff --git a/drivers/mtd/nand/raw/Kconfig b/drivers/mtd/nand/raw/Kconfig > index f8445e09633c..d6e3eeb3c093 100644 > --- a/drivers/mtd/nand/raw/Kconfig > +++ b/drivers/mtd/nand/raw/Kconfig > @@ -97,7 +97,7 @@ config NAND_BRCMNAND_6368 > > config NAND_BRCMNAND_6753 > bool "Support Broadcom NAND controller on bcm6753" > - depends on NAND_BRCMNAND && ARCH_BCM6753 > + depends on NAND_BRCMNAND && BCM6855 > help > Enable support for broadcom nand driver on bcm6753. > > diff --git a/drivers/watchdog/Kconfig b/drivers/watchdog/Kconfig > index 84a4034fe87c..65f2d0821c60 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 || BCM6856 || \ > - BCM6858 || BCM63158 || ARCH_BCM6753) > + BCM6858 || BCM63158 || BCM6855) > help > Select this to enable watchdog timer for BCM6345 SoCs. > The watchdog timer is stopped when initialized. ^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2022-10-31 14:47 UTC | newest] Thread overview: 8+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2022-08-22 18:49 [PATCH v2 0/3] arm: bcmbca: move bcm6753 support under CONFIG_ARCH_BCMBCA William Zhang 2022-08-22 18:49 ` [PATCH v2 1/3] arm: bcmbca: add bcm6855 SoC " William Zhang 2022-08-24 12:41 ` Philippe REYNES 2022-10-31 14:45 ` Tom Rini 2022-08-22 18:49 ` [PATCH v2 2/3] arm: bcmbca: remove bcm6753 support under CONFIG_ARCH_BCM6753 William Zhang 2022-08-24 12:42 ` Philippe REYNES 2022-08-22 18:49 ` [PATCH v2 3/3] arm: bcmbca: replace ARCH_BCM6753 symbols in Kconfig with BCM6855 William Zhang 2022-08-24 12:42 ` Philippe REYNES
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.