[PATCH v8 09/13] arm64: dts: Add board DTS for Rpi5 which includes RP1 node

Stefan Wahren wahrenst at gmx.net
Wed Apr 16 11:18:06 PDT 2025


Hi Andrea,

Am 16.04.25 um 19:43 schrieb Andrea della Porta:
> Hi Stefan,
>
> On 13:48 Mon 14 Apr     , Stefan Wahren wrote:
>> Hi Andrea,
>>
>> Am 19.03.25 um 22:52 schrieb Andrea della Porta:
>>> Add the board 'monolithic' DTS for RaspberryPi 5 which includes
>>> the RP1 node definition.  The inclusion treeis as follow (the
>>> arrow points to the includer):
>>>
>>> rp1-common.dtsi ----> rp1-nexus.dtsi ----> bcm2712-rpi-5-b-monolithic.dts
>>>                                                  ^
>>>                                                  |
>>>                                              bcm2712-rpi-5-b.dts
>> sorry for the delay. I'm not happy with the monolithic appendix.
>>
>> How about bcm2712-rpi-5-b-rp1.dts or something more self-explaining?Regards
> Sure, good catch. I'd go even further saying that we can rename (or merge if
> the destination file already exists) as:
>
> bcm2712-rpi-5-b.dts             ->  bcm2712-rpi-5-b-norp1.dts (or some better suffix other than -norp1)
> bcm2712-rpi-5-b-monolithic.dts  ->  bcm2712-rpi-5-b.dts
>
> so the monolithic one, which seems to be the 'safest' option as of now,
> would be the default dtb. Do you think it could be ok?
i like the idea (include rp1 into default dtb), but not a fan of 
negative logic in naming. Unfortunately I don't have better idea.

Regards
>
>>> This is designed to maximize the compatibility with downstream DT
>>> while ensuring that a fully defined DT (one which includes the RP1
>>> node as opposed to load it from overlay at runtime) is present
>>> since early boot stage.
>>>
>>> Signed-off-by: Andrea della Porta <andrea.porta at suse.com>
>>> ---
>>> Right now bcm2712-rpi-5-b.dts is the overlay-ready DT which will make
>>> the RP1 driver to load the RP1 dtb overlay at runtime, while
>>> bcm2712-rpi-5-b-monolithic.dts is the fully defined one (i.e. it
>>> already contains RP1 node, so no overlay is loaded nor needed).
>>> Depending on which one we want to be considered the default, we can
>>> swap the file names to align with downstream naming convention that
>>> has only the fully defined DT called bcm2712-rpi-5-b.dts.
>> Could you please move some of this good explanation into this dts file as
>> comment?
> Sure.
>
> Thanks,
> Andrea
>
>>> ---
>>>    arch/arm64/boot/dts/broadcom/Makefile                     | 1 +
>>>    .../boot/dts/broadcom/bcm2712-rpi-5-b-monolithic.dts      | 8 ++++++++
>>>    2 files changed, 9 insertions(+)
>>>    create mode 100644 arch/arm64/boot/dts/broadcom/bcm2712-rpi-5-b-monolithic.dts
>>>
>>> diff --git a/arch/arm64/boot/dts/broadcom/Makefile b/arch/arm64/boot/dts/broadcom/Makefile
>>> index 3d0efb93b06d..4836c6da5bee 100644
>>> --- a/arch/arm64/boot/dts/broadcom/Makefile
>>> +++ b/arch/arm64/boot/dts/broadcom/Makefile
>>> @@ -7,6 +7,7 @@ dtb-$(CONFIG_ARCH_BCM2835) += bcm2711-rpi-400.dtb \
>>>    			      bcm2711-rpi-4-b.dtb \
>>>    			      bcm2711-rpi-cm4-io.dtb \
>>>    			      bcm2712-rpi-5-b.dtb \
>>> +			      bcm2712-rpi-5-b-monolithic.dtb \
>>>    			      bcm2712-d-rpi-5-b.dtb \
>>>    			      bcm2837-rpi-3-a-plus.dtb \
>>>    			      bcm2837-rpi-3-b.dtb \
>>> diff --git a/arch/arm64/boot/dts/broadcom/bcm2712-rpi-5-b-monolithic.dts b/arch/arm64/boot/dts/broadcom/bcm2712-rpi-5-b-monolithic.dts
>>> new file mode 100644
>>> index 000000000000..3aeee678b0bc
>>> --- /dev/null
>>> +++ b/arch/arm64/boot/dts/broadcom/bcm2712-rpi-5-b-monolithic.dts
>>> @@ -0,0 +1,8 @@
>>> +// SPDX-License-Identifier: (GPL-2.0 OR MIT)
>>> +/dts-v1/;
>>> +
>>> +#include "bcm2712-rpi-5-b.dts"
>>> +
>>> +&pcie2 {
>>> +	#include "rp1-nexus.dtsi"
>>> +};




More information about the linux-arm-kernel mailing list