Establish the roles of board DTSes for Raspberry Pi5
Subsystems (5)
cover Establish the roles of board DTSes for Raspberry Pi5
Hi,
this patchset is composed of the following:
- patch 1: just a cleanup to get rid of duplicated declarations in the board DTS for BCM2712.
- patch 2: explicitly states what BCM2712 board DTS will host the customized nodes that refer to RP1 internal peripherals. This is important so that followup patches add the nodes to the correct DTS file. For more information about why it has to be done, please take a look to the patch comment.
Andrea della Porta (2):
arm64: dts: broadcom: delete redundant pcie enablement nodes
arm64: dts: broadcom: amend the comment about the role of BCM2712
board DTS
.../boot/dts/broadcom/bcm2712-rpi-5-b.dts | 18 ++++++++---------- 1 file changed, 8 insertions(+), 10 deletions(-)
Signature · 1 line
2.35.3
PATCH 1/2 arm64: dts: broadcom: delete redundant pcie enablement nodes
The pcie1 and pcie2 override nodes to enable the respective peripherals are declared both in bcm2712-rpi-5-b.dts and bcm2712-rpi-5-b-ovl-rp1.dts, which makes those declared in the former file redundant.
Drop those redundant nodes from the board devicetree.
--- arch/arm64/boot/dts/broadcom/bcm2712-rpi-5-b.dts | 8 -------- 1 file changed, 8 deletions(-)
arch/arm64/boot/dts/broadcom/bcm2712-rpi-5-b.dts +0 -8
@@ -15,11 +15,3 @@ &pcie2 { #include "rp1-nexus.dtsi" }; - -&pcie1 { - status = "okay"; -}; - -&pcie2 { - status = "okay"; -};
Signature · 1 line
2.35.3
Re: [PATCH 1/2] arm64: dts: broadcom: delete redundant pcie enablement nodes
Quoted 8 lines · Andrea della Porta
The pcie1 and pcie2 override nodes to enable the respective peripherals are declared both in
bcm2712-rpi-5-b.dtsandbcm2712-rpi-5-b-ovl-rp1.dts, which makes those declared in the former file redundant.Drop those redundant nodes from the board devicetree.
Signed-off-by Andrea della Porta <[email protected]>---
Applied to https://github.com/Broadcom/stblinux/commits/devicetree-arm64/next, thanks!
Signature · 1 line
Florian
PATCH 2/2 arm64: dts: broadcom: amend the comment about the role of BCM2712 board DTS
In reply to Andrea della PortaCurrent board DTS for Raspberry Pi5 states that bcm2712-rpi-5-b.dts should not be modified and all declarations should go in the overlay board DTS instead (bcm2712-rpi-5-b-ovl-rp1.dts).
There's a caveat though: there's currently no infrastructure to reliably reference nodes that have not been declared yet, as is the case when loading those nodes from a runtime overlay. For more details about these limitations see [1] and follow-ups.
Change the comment to make it clear which DTS file will host specific nodes, especially the RP1 related nodes which should be customized outside the overlay DTS.
Link
[1] - https://lore.kernel.org/all/CAMEGJJ3=W8_R0xBvm8r+Q7iExZx8xPBHEWWGAT9ngpGWDSKCaQ@mail.gmail.com/
--- arch/arm64/boot/dts/broadcom/bcm2712-rpi-5-b.dts | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-)
arch/arm64/boot/dts/broadcom/bcm2712-rpi-5-b.dts +8 -2
@@ -4,8 +4,14 @@ * the RP1 driver to load the RP1 dtb overlay at runtime, while * bcm2712-rpi-5-b.dts (this file) is the fully defined one (i.e. it * already contains RP1 node, so no overlay is loaded nor needed). - * This file is not intended to be modified, nodes should be added - * to the included bcm2712-rpi-5-b-ovl-rp1.dts. + * This file is intended to host the override nodes for the RP1 peripherals, + * e.g. to declare the phy of the ethernet interface or the custom pin setup + * for several RP1 peripherals. + * This in turn is due to the fact that there's no current generic + * infrastructure to reference nodes (i.e. the nodes in rp1-common.dtsi) that + * are not yet defined in the DT since they are loaded at runtime via overlay. + * All other nodes that do not have anything to do with RP1 should be added + * to the included bcm2712-rpi-5-b-ovl-rp1.dts instead. */ /dts-v1/;
Signature · 1 line
2.35.3
Re: [PATCH 2/2] arm64: dts: broadcom: amend the comment about the role of BCM2712 board DTS
From: Florian Fainelli <[email protected]>
Quoted 13 lines · Andrea della Porta
Current board DTS for Raspberry Pi5 states that
bcm2712-rpi-5-b.dtsshould not be modified and all declarations should go in the overlay board DTS instead (bcm2712-rpi-5-b-ovl-rp1.dts).There's a caveat though: there's currently no infrastructure to reliably reference nodes that have not been declared yet, as is the case when loading those nodes from a runtime overlay. For more details about these limitations see [1] and follow-ups.
Change the comment to make it clear which DTS file will host specific nodes, especially the RP1 related nodes which should be customized outside the overlay DTS.
Quoted 5 lines
Link
[1] - https://lore.kernel.org/all/CAMEGJJ3=W8_R0xBvm8r+Q7iExZx8xPBHEWWGAT9ngpGWDSKCaQ@mail.gmail.com/Signed-off-by Andrea della Porta <[email protected]>---
Applied to https://github.com/Broadcom/stblinux/commits/devicetree-arm64/next, thanks! --
Florian