diff mbox series

[RESEND,5/9] arm64: dts: Add BCM4908 generic board dts

Message ID 20220721000731.29597-1-william.zhang@broadcom.com (mailing list archive)
State New, archived
Headers show
Series arm64: bcmbca: Move BCM4908 SoC support under ARCH_BCMBCA | expand

Commit Message

William Zhang July 21, 2022, 12:07 a.m. UTC
Add generic bcm94908.dts file.

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

 arch/arm64/boot/dts/broadcom/bcmbca/Makefile  |  1 +
 .../boot/dts/broadcom/bcmbca/bcm94908.dts     | 30 +++++++++++++++++++
 2 files changed, 31 insertions(+)
 create mode 100644 arch/arm64/boot/dts/broadcom/bcmbca/bcm94908.dts

Comments

Rafał Miłecki July 21, 2022, 6:45 a.m. UTC | #1
On 2022-07-21 02:07, William Zhang wrote:
> Add generic bcm94908.dts file.
> 
> Signed-off-by: William Zhang <william.zhang@broadcom.com>
> ---
> 
>  arch/arm64/boot/dts/broadcom/bcmbca/Makefile  |  1 +
>  .../boot/dts/broadcom/bcmbca/bcm94908.dts     | 30 +++++++++++++++++++
>  2 files changed, 31 insertions(+)
>  create mode 100644 arch/arm64/boot/dts/broadcom/bcmbca/bcm94908.dts
> 
> diff --git a/arch/arm64/boot/dts/broadcom/bcmbca/Makefile
> b/arch/arm64/boot/dts/broadcom/bcmbca/Makefile
> index d30fa75f0611..27741b71ba9e 100644
> --- a/arch/arm64/boot/dts/broadcom/bcmbca/Makefile
> +++ b/arch/arm64/boot/dts/broadcom/bcmbca/Makefile
> @@ -4,6 +4,7 @@ dtb-$(CONFIG_ARCH_BCMBCA) += \
>  				bcm4906-tplink-archer-c2300-v1.dtb \
>  				bcm4908-asus-gt-ac5300.dtb \
>  				bcm4908-netgear-raxe500.dtb \
> +				bcm94908.dtb \
>  				bcm4912-asus-gt-ax6000.dtb \
>  				bcm94912.dtb \
>  				bcm963158.dtb \

AFAIU bcm94908 is a reference board name. I think I see some
inconsistency in naming Broadcom's reference boards DTS files.

If you take a look at in-kernel DTS files:
find ./arch/arm*/boot/dts/ -name "*.dts"
99% of them are prefixed with family/SoC name. I did the same for
bcm4908 (and Northstar) boards. So it's
<soc>-<manufacturer>-<model>.dts
e.g.
bcm4908-asus-gt-ac5300.dts

To match that I *think* you should actually call your file:
bcm4908-bcm94908 (or bcm4908-94908 depending on actual board name)

First of all: am I correct here?

Secondly: could you do that? I know many DTS files named ignoring SoC/
family prefix. Still maybe we could change it as some (this) point?
William Zhang July 21, 2022, 6:29 p.m. UTC | #2
On 07/20/2022 11:45 PM, Rafał Miłecki wrote:
> On 2022-07-21 02:07, William Zhang wrote:
>> Add generic bcm94908.dts file.
>>
>> Signed-off-by: William Zhang <william.zhang@broadcom.com>
>> ---
>>
>>  arch/arm64/boot/dts/broadcom/bcmbca/Makefile  |  1 +
>>  .../boot/dts/broadcom/bcmbca/bcm94908.dts     | 30 +++++++++++++++++++
>>  2 files changed, 31 insertions(+)
>>  create mode 100644 arch/arm64/boot/dts/broadcom/bcmbca/bcm94908.dts
>>
>> diff --git a/arch/arm64/boot/dts/broadcom/bcmbca/Makefile
>> b/arch/arm64/boot/dts/broadcom/bcmbca/Makefile
>> index d30fa75f0611..27741b71ba9e 100644
>> --- a/arch/arm64/boot/dts/broadcom/bcmbca/Makefile
>> +++ b/arch/arm64/boot/dts/broadcom/bcmbca/Makefile
>> @@ -4,6 +4,7 @@ dtb-$(CONFIG_ARCH_BCMBCA) += \
>>                  bcm4906-tplink-archer-c2300-v1.dtb \
>>                  bcm4908-asus-gt-ac5300.dtb \
>>                  bcm4908-netgear-raxe500.dtb \
>> +                bcm94908.dtb \
>>                  bcm4912-asus-gt-ax6000.dtb \
>>                  bcm94912.dtb \
>>                  bcm963158.dtb \
> 
> AFAIU bcm94908 is a reference board name. I think I see some
> inconsistency in naming Broadcom's reference boards DTS files.
> 
> If you take a look at in-kernel DTS files:
> find ./arch/arm*/boot/dts/ -name "*.dts"
> 99% of them are prefixed with family/SoC name. I did the same for
> bcm4908 (and Northstar) boards. So it's
> <soc>-<manufacturer>-<model>.dts
> e.g.
> bcm4908-asus-gt-ac5300.dts
> 
> To match that I *think* you should actually call your file:
> bcm4908-bcm94908 (or bcm4908-94908 depending on actual board name)
> 
> First of all: am I correct here?
> 
I do see many dts named in the format you described here and I agree it 
is very clear.  But at Broadcom we use a slight different format for 
reference boards that we started from day 1: bcm9<soc>-<ref board 
model>.dts such as bcm963138REF.dts. And there are many in the kernel as 
well if you search "bcm9*.dts".  Many of them are Broadcom reference 
boards and some are actual consumer product.

> Secondly: could you do that? I know many DTS files named ignoring SoC/
> family prefix. Still maybe we could change it as some (this) point?
I actually was thinking to ask you if we can change all the 4908 boards 
to use bcm94908- prefix to be consistent with Broadcom board name 
convention. But at the second thought, I didn't ask because it does not 
make much benefit other than a uniform name, unless you agree and I can 
make that change. Otherwise, I would rather keep them as they are now 
because we have ton of reference boards here and we don't want to make 
that changes to remove the 9 (which will definitive cause big confusing 
internally) and there are no rule in linux for the name as far as I 
know.   What I can do is update the bcmbca.yaml to put bcmbca board name 
rule bcm9<soc>-<ref board model>.dts  for broadcom reference board and 
bcm<soc>-<manufacturer>-<model>.dts for customer board,  if that sounds 
good to you.
diff mbox series

Patch

diff --git a/arch/arm64/boot/dts/broadcom/bcmbca/Makefile b/arch/arm64/boot/dts/broadcom/bcmbca/Makefile
index d30fa75f0611..27741b71ba9e 100644
--- a/arch/arm64/boot/dts/broadcom/bcmbca/Makefile
+++ b/arch/arm64/boot/dts/broadcom/bcmbca/Makefile
@@ -4,6 +4,7 @@  dtb-$(CONFIG_ARCH_BCMBCA) += \
 				bcm4906-tplink-archer-c2300-v1.dtb \
 				bcm4908-asus-gt-ac5300.dtb \
 				bcm4908-netgear-raxe500.dtb \
+				bcm94908.dtb \
 				bcm4912-asus-gt-ax6000.dtb \
 				bcm94912.dtb \
 				bcm963158.dtb \
diff --git a/arch/arm64/boot/dts/broadcom/bcmbca/bcm94908.dts b/arch/arm64/boot/dts/broadcom/bcmbca/bcm94908.dts
new file mode 100644
index 000000000000..fcbd3c430ace
--- /dev/null
+++ b/arch/arm64/boot/dts/broadcom/bcmbca/bcm94908.dts
@@ -0,0 +1,30 @@ 
+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
+/*
+ * Copyright 2022 Broadcom Ltd.
+ */
+
+/dts-v1/;
+
+#include "bcm4908.dtsi"
+
+/ {
+	model = "Broadcom BCM94908 Reference Board";
+	compatible = "brcm,bcm94908", "brcm,bcm4908", "brcm,bcmbca";
+
+	aliases {
+		serial0 = &uart0;
+	};
+
+	chosen {
+		stdout-path = "serial0:115200n8";
+	};
+
+	memory@0 {
+		device_type = "memory";
+		reg = <0x0 0x0 0x0 0x08000000>;
+	};
+};
+
+&uart0 {
+	status = "okay";
+};