From: Arnd Bergmann <arnd@kernel.org>
To: Rob Herring <robh@kernel.org>,
Krzysztof Kozlowski <krzk+dt@kernel.org>,
Conor Dooley <conor+dt@kernel.org>,
Florian Fainelli <florian.fainelli@broadcom.com>
Cc: "Arnd Bergmann" <arnd@arndb.de>,
"Broadcom internal kernel review list"
<bcm-kernel-feedback-list@broadcom.com>,
"Andrea della Porta" <andrea.porta@suse.com>,
"Ivan T. Ivanov" <iivanov@suse.de>,
"Stefan Wahren" <wahrenst@gmx.net>,
"Maíra Canal" <mcanal@igalia.com>,
devicetree@vger.kernel.org, linux-rpi-kernel@lists.infradead.org,
linux-arm-kernel@lists.infradead.org,
linux-kernel@vger.kernel.org
Subject: [PATCH] arm64: dts: broadcom: bcm2712-rpi: mark /soc/firmware node as 32-bit
Date: Fri, 20 Mar 2026 16:20:19 +0100 [thread overview]
Message-ID: <20260320152025.3501473-1-arnd@kernel.org> (raw)
From: Arnd Bergmann <arnd@arndb.de>
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")
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
---
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(+)
diff --git a/arch/arm64/boot/dts/broadcom/bcm2712-rpi-5-b-base.dtsi b/arch/arm64/boot/dts/broadcom/bcm2712-rpi-5-b-base.dtsi
index eddaf72c4e73..c3e71e6aaff6 100644
--- a/arch/arm64/boot/dts/broadcom/bcm2712-rpi-5-b-base.dtsi
+++ b/arch/arm64/boot/dts/broadcom/bcm2712-rpi-5-b-base.dtsi
@@ -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>;
--
2.39.5
reply other threads:[~2026-03-20 15:20 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260320152025.3501473-1-arnd@kernel.org \
--to=arnd@kernel.org \
--cc=andrea.porta@suse.com \
--cc=arnd@arndb.de \
--cc=bcm-kernel-feedback-list@broadcom.com \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=florian.fainelli@broadcom.com \
--cc=iivanov@suse.de \
--cc=krzk+dt@kernel.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-rpi-kernel@lists.infradead.org \
--cc=mcanal@igalia.com \
--cc=robh@kernel.org \
--cc=wahrenst@gmx.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox