* [PATCH v2] arm64: dts: mediatek: Add #{address,size}-cells to Chromium-based /firmware
@ 2026-09-04 22:56 Brian Norris
2026-09-04 23:03 ` sashiko-bot
0 siblings, 1 reply; 2+ messages in thread
From: Brian Norris @ 2026-09-04 22:56 UTC (permalink / raw)
To: Matthias Brugger, AngeloGioacchino Del Regno
Cc: Chen-Yu Tsai, linux-mediatek, Julius Werner, linux-kernel,
Conor Dooley, Rob Herring, linux-arm-kernel, Brian Norris,
Krzysztof Kozlowski, Doug Anderson, chrome-platform,
Tzung-Bi Shih, devicetree
Chromium/Depthcharge bootloaders may dynamically add a few device nodes
to a system's DTB under a /firmware node. A typical DT looks something
like the following:
/ {
firmware {
ranges;
coreboot {
compatible = "coreboot";
reg = <...>;
...;
};
};
};
Notably, the /firmware node has an empty 'ranges', but does not have
address/size-cells.
Commit 6e5773d52f4a ("of/address: Fix WARN when attempting translating
non-translatable addresses") started requiring #address-cells for a
device's parent if we want to use the reg resource in a device node.
This leads to errors like the following:
[ 7.763870] coreboot_table firmware:coreboot: probe with driver coreboot_table failed with error -22
Add appropriate #{address,size}-cells to work around the problem.
Note that Google has also patched the Depthcharge bootloader source to
add {address,size}-cells [1], but bootloader updates are typically
delivered only via Google OS updates. Not all users install Google
software updates, and even if they do, Google may not produce updated
binaries for all/older devices.
[1] https://lore.kernel.org/all/20241209092809.GA3246424@google.com/
https://crrev.com/c/6051580 ("coreboot: Insert #address-cells and
#size-cells for firmware node")
Closes: https://lore.kernel.org/all/aeKlYzTiL0OB1y3g@google.com/
Fixes: 6e5773d52f4a ("of/address: Fix WARN when attempting translating non-translatable addresses")
Signed-off-by: Brian Norris <briannorris@chromium.org>
Reviewed-by: Chen-Yu Tsai <wenst@chromium.org>
Reviewed-by: Douglas Anderson <dianders@chromium.org>
---
v1 series:
https://lore.kernel.org/all/20260428200712.2660635-1-briannorris@chromium.org/
There is a little more background in the v1 cover letter. I didn't feel
like a new cover letter was needed for a single patch-resend.
Changes in v2:
* resent separately from the series, since the rest were applied by
their maintainers
* trim other-arch maintainers from CC list
* Add Reviewed-by
* Add missing linux-mediatek@lists.infradead.org Cc. It claims to be
moderated, and its "join" seems broken, so I'll probably get bounced.
(https://lists.openwrt.org/mailman/subscribe/linux-mediatek is
disabled, and linux-mediatek-join@lists.openwrt.org gives me error 550)
* otherwise, no change from v1
arch/arm64/boot/dts/mediatek/mt8173-elm.dtsi | 5 +++++
arch/arm64/boot/dts/mediatek/mt8183-kukui.dtsi | 5 +++++
arch/arm64/boot/dts/mediatek/mt8186-corsola.dtsi | 5 +++++
arch/arm64/boot/dts/mediatek/mt8188-geralt.dtsi | 5 +++++
arch/arm64/boot/dts/mediatek/mt8192-asurada.dtsi | 5 +++++
arch/arm64/boot/dts/mediatek/mt8195-cherry.dtsi | 5 +++++
6 files changed, 30 insertions(+)
diff --git a/arch/arm64/boot/dts/mediatek/mt8173-elm.dtsi b/arch/arm64/boot/dts/mediatek/mt8173-elm.dtsi
index a0573bc359fb..777da2129e77 100644
--- a/arch/arm64/boot/dts/mediatek/mt8173-elm.dtsi
+++ b/arch/arm64/boot/dts/mediatek/mt8173-elm.dtsi
@@ -16,6 +16,11 @@ aliases {
mmc2 = &mmc3;
};
+ firmware {
+ #address-cells = <2>;
+ #size-cells = <2>;
+ };
+
memory@40000000 {
device_type = "memory";
reg = <0 0x40000000 0 0x80000000>;
diff --git a/arch/arm64/boot/dts/mediatek/mt8183-kukui.dtsi b/arch/arm64/boot/dts/mediatek/mt8183-kukui.dtsi
index 69cab9f9c530..fa359440ed60 100644
--- a/arch/arm64/boot/dts/mediatek/mt8183-kukui.dtsi
+++ b/arch/arm64/boot/dts/mediatek/mt8183-kukui.dtsi
@@ -22,6 +22,11 @@ chosen {
stdout-path = "serial0:115200n8";
};
+ firmware {
+ #address-cells <2>;
+ #size-cells <2>;
+ };
+
backlight_lcd0: backlight_lcd0 {
compatible = "pwm-backlight";
pwms = <&pwm0 0 500000>;
diff --git a/arch/arm64/boot/dts/mediatek/mt8186-corsola.dtsi b/arch/arm64/boot/dts/mediatek/mt8186-corsola.dtsi
index ff20376a44d7..2b327d9ef65e 100644
--- a/arch/arm64/boot/dts/mediatek/mt8186-corsola.dtsi
+++ b/arch/arm64/boot/dts/mediatek/mt8186-corsola.dtsi
@@ -26,6 +26,11 @@ chosen {
stdout-path = "serial0:115200n8";
};
+ firmware {
+ #address-cells = <2>;
+ #size-cells = <2>;
+ };
+
memory@40000000 {
device_type = "memory";
/* The size should be filled in by the bootloader. */
diff --git a/arch/arm64/boot/dts/mediatek/mt8188-geralt.dtsi b/arch/arm64/boot/dts/mediatek/mt8188-geralt.dtsi
index f382f90c48f5..c65805f2a7e0 100644
--- a/arch/arm64/boot/dts/mediatek/mt8188-geralt.dtsi
+++ b/arch/arm64/boot/dts/mediatek/mt8188-geralt.dtsi
@@ -41,6 +41,11 @@ dmic-codec {
wakeup-delay-ms = <100>;
};
+ firmware {
+ #address-cells = <2>;
+ #size-cells = <2>;
+ };
+
memory@40000000 {
device_type = "memory";
/* The size will be filled in by the bootloader */
diff --git a/arch/arm64/boot/dts/mediatek/mt8192-asurada.dtsi b/arch/arm64/boot/dts/mediatek/mt8192-asurada.dtsi
index 40d34b16dc80..e8ebbb74987f 100644
--- a/arch/arm64/boot/dts/mediatek/mt8192-asurada.dtsi
+++ b/arch/arm64/boot/dts/mediatek/mt8192-asurada.dtsi
@@ -25,6 +25,11 @@ chosen {
stdout-path = "serial0:115200n8";
};
+ firmware {
+ #address-cells = <2>;
+ #size-cells = <2>;
+ };
+
memory@40000000 {
device_type = "memory";
reg = <0 0x40000000 0 0x80000000>;
diff --git a/arch/arm64/boot/dts/mediatek/mt8195-cherry.dtsi b/arch/arm64/boot/dts/mediatek/mt8195-cherry.dtsi
index ef7afc436aef..f06ca2bc165d 100644
--- a/arch/arm64/boot/dts/mediatek/mt8195-cherry.dtsi
+++ b/arch/arm64/boot/dts/mediatek/mt8195-cherry.dtsi
@@ -42,6 +42,11 @@ dmic-codec {
wakeup-delay-ms = <50>;
};
+ firmware {
+ #address-cells = <2>;
+ #size-cells = <2>;
+ };
+
memory@40000000 {
device_type = "memory";
reg = <0 0x40000000 0 0x80000000>;
--
2.55.0.979.g7e5102b832-goog
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [PATCH v2] arm64: dts: mediatek: Add #{address,size}-cells to Chromium-based /firmware
2026-09-04 22:56 [PATCH v2] arm64: dts: mediatek: Add #{address,size}-cells to Chromium-based /firmware Brian Norris
@ 2026-09-04 23:03 ` sashiko-bot
0 siblings, 0 replies; 2+ messages in thread
From: sashiko-bot @ 2026-09-04 23:03 UTC (permalink / raw)
To: Brian Norris; +Cc: robh, devicetree, conor+dt
Thank you for your contribution! Sashiko AI review found 1 potential issue(s) to consider:
- [Low] Missing '=' in property assignments for #address-cells and #size-cells causes a build failure.
--
commit 32a566c4dedbeab82eeb3c544e3cf871695f6990
Author: Brian Norris <briannorris@chromium.org>
arm64: dts: mediatek: Add #{address,size}-cells to Chromium-based /firmware
This commit adds #address-cells and #size-cells properties to the /firmware
node in various Chromium-based MediaTek device trees. This fixes a probe
failure for coreboot_table introduced by requiring #address-cells for
translating non-translatable addresses.
Closes: https://lore.kernel.org/all/aeKlYzTiL0OB1y3g@google.com/
> diff --git a/arch/arm64/boot/dts/mediatek/mt8183-kukui.dtsi b/arch/arm64/boot/dts/mediatek/mt8183-kukui.dtsi
> index 69cab9f9c5308..fa359440ed60e 100644
> --- a/arch/arm64/boot/dts/mediatek/mt8183-kukui.dtsi
> +++ b/arch/arm64/boot/dts/mediatek/mt8183-kukui.dtsi
> @@ -22,6 +22,11 @@ chosen {
> stdout-path = "serial0:115200n8";
> };
>
> + firmware {
> + #address-cells <2>;
> + #size-cells <2>;
[Severity: Low]
Are the '=' signs missing from these property assignments? Omitting them
typically causes a parsing syntax error in dtc, which will break the
make dtbs build for the mt8183-kukui platform.
> + };
> +
> backlight_lcd0: backlight_lcd0 {
> compatible = "pwm-backlight";
> pwms = <&pwm0 0 500000>;
--
Sashiko AI review · https://sashiko.dev/#/patchset/20260904155621.v2.1.I33d1d66d4724587a981f706243cdc2f264670a40@changeid?part=1
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2026-09-04 23:03 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-09-04 22:56 [PATCH v2] arm64: dts: mediatek: Add #{address,size}-cells to Chromium-based /firmware Brian Norris
2026-09-04 23:03 ` sashiko-bot
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.