Skip to contentSkip to conversation

arm64: dts: broadcom: bcm2712-rpi: mark /soc/firmware node as 32-bit

PATCH New Arnd Bergmann 1 participant 1 message Mar 20

Subsystems (2)
lore
Share & tools
lore
#0 lore raw

PATCH 1/1 arm64: dts: broadcom: bcm2712-rpi: mark /soc/firmware node as 32-bit

From: Arnd Bergmann <[email protected]>

Moving /soc/firmware to /soc/firmware/rpi-firmware resulted in a build time warning:

arch/arm64/boot/dts/broadcom/bcm2712-rpi-5-b-base.dtsi:200.4-15: Warning (dma_ranges_format): /soc@107c000000/firmware/rpi-firmware:dma-ranges: empty "dma-ranges" property but its #address-cells (1) differs from /soc@107c000000/firmware (2)

The problem is that while both /soc and /soc/firmware/rpi-firmware are limited to 32-bit DMA and MMIO addressing, the intermediate /soc/firmware now gets the default 64-bit addressing, which requires an explicit translation of the DMA addresses of its 32-bit children.

Mark this one as 32-bit as well for simplicity. Note that this does limit any other kind of firmware to 32-bit address translation as well, which might not be ideal in case any of it runs in 64-bit mode. A better solution may be to move it out of /soc altogether.

Fixes e3b22edda733 ("arm64: dts: broadcom: bcm2712-rpi: Move the firmware node down 1 level")

---
I'm a bit confused by the changelog test of the e3b22edda733 commit, which does not appear to match what it actually does. Maybe the intention was to move /soc/firmware to /firmware/rpi-firmware instead of /soc/firmware/rpi-firmware? This would also require an explict dma address translation though.

---
 arch/arm64/boot/dts/broadcom/bcm2712-rpi-5-b-base.dtsi | 4 ++++
 1 file changed, 4 insertions(+)
arch/arm64/boot/dts/broadcom/bcm2712-rpi-5-b-base.dtsi +4 -0
index eddaf72c4e73..c3e71e6aaff6 100644
@@ -191,6 +191,10 @@ wifi: wifi@1 {
 
 &soc {
 	firmware {
+		#address-cells = <1>;
+		#size-cells = <1>;
+		dma-ranges;
+
 		firmware: rpi-firmware {
 			compatible = "raspberrypi,bcm2835-firmware", "simple-mfd";
 			#address-cells = <1>;
Signature · 1 line
2.39.5