From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 62A73FF8873 for ; Tue, 28 Apr 2026 20:09:32 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:List-Subscribe:List-Help :List-Post:List-Archive:List-Unsubscribe:List-Id:Content-Transfer-Encoding: MIME-Version:References:In-Reply-To:Message-ID:Date:Subject:Cc:To:From: Reply-To:Content-Type:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=4z+F35aj0Zw+rehp8tVxMlZOUqU6/YdKeXG9fNxlPfY=; b=aGKtwhj3K/kwJm2pKsFtLa2EPU H6V6iYTiQnZ/APQAfBg5DixKAdzc7Gv0C+aHhofnCZ6SEjspaO7oT/AoQ51Od0g3WdRZ7ENL6d9QZ 1pA4/aAB3IaASq1YJaMlEMeqGikLinPKAsQTPWjVZBCYqjun8WHC5L5U8CuokDiBu46vGcT6rcX6e StT1WhTLu2ONfXs+2KwyOBFkjiJBk4KwEhnBdeomh4Qn6fCqy7ZR8tHOufVD0PLWYyZws+FzaAKtU Tul1raNiICoNr3I4zuvUTjOPVwHvAa4b3tn3IY69P4uZQS30vrBbOa0LfDzk2HM2bY2B5JS3LW8oy oZtTVFmA==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.98.2 #2 (Red Hat Linux)) id 1wHokA-00000002Ejm-2bIa; Tue, 28 Apr 2026 20:09:18 +0000 Received: from mail-dl1-x122d.google.com ([2607:f8b0:4864:20::122d]) by bombadil.infradead.org with esmtps (Exim 4.98.2 #2 (Red Hat Linux)) id 1wHoii-00000002Co2-1mZk for linux-arm-kernel@lists.infradead.org; Tue, 28 Apr 2026 20:07:50 +0000 Received: by mail-dl1-x122d.google.com with SMTP id a92af1059eb24-12dbd0f7ecaso3258065c88.0 for ; Tue, 28 Apr 2026 13:07:47 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; t=1777406865; x=1778011665; darn=lists.infradead.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=4z+F35aj0Zw+rehp8tVxMlZOUqU6/YdKeXG9fNxlPfY=; b=N3EwL31wkMBdT7F7ExoVp870nmh/tdDubNxgs0ompcEd5Uv3OpZyu8bba/brjwVw1k js5o3EncgflzVC8TXGAqsRWdSwBG5o6XFLbz2kDLVG3KQU3XWkKGRJipo34bIqUVpn12 GH+b0giptGliCrP6Fw0OP7kKNYJ+o+0knYEN8= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1777406865; x=1778011665; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=4z+F35aj0Zw+rehp8tVxMlZOUqU6/YdKeXG9fNxlPfY=; b=N0kAgn1VoKNU/NrIa/Nty5oUXGSxtadRJQTMOlxgxW0YIsLUOMc+00YhQItPs3lCNx xHXGkDK7Eq/MqGmIBcnAHoPPssbiWFsYyccG8W3X8UHwAc0b3itPUHZhws2rTRQSIHIe YnqJda+L/YDMBAZHyTtW+vYPqlAqG7b2McB5MCaVbS+ritL352a7j8WPWqi30pUgHQr4 qVKsMTQmcmirvQVcYXbn3brRKP8vLpzhtuIbVYpWQ+WNjHqPdDEoSmVXZo5hcVdgK5l1 JfzlBbKSApgGhYB9QwwV+sIHk8VGKbqw7HpnXHIOQe4pfNQGffhe37qHMIMwPTInJ971 +Sog== X-Forwarded-Encrypted: i=1; AFNElJ9BcxVmSSB89QSNyqFLLeiqXoyxLWAX5S8GMsPigc6qgsoBLIc3CAvGqtvemSFsoL0a0FW7G3ET9Uz02Kr+lTAn@lists.infradead.org X-Gm-Message-State: AOJu0YxDkOHfYFSGOL3Uny057tMTlTHwVxs7Soma854hU3dfsF05pzag WwCNI+YnEvQ3Hn0zyvq6nXkpZkZ8eOQN9n+ggNjqX8V6yZA3V3kWYNqCqoU5AaDaew== X-Gm-Gg: AeBDietIceM9foxTXfasXW8bBEVNpiOKDM2ufFQxWw7823auv5ui1mEZOqQGP9KjfQh xlBw16mp35SUlQdmyacvBA5hIosQS/Eran4VX9gSIFax7kXdXR49LnuN7MOR4nMivIEhbYIQ9x+ UH7VM1RCkijWEgq7rv4s4tRZUhnMdY8deQrD7eduuacZjVev6k8L5b5Ab0AU+sBI1so5kRARI2O q++A8NJQSdD7CV+jXfwmuGulSfmsKLGKKvh2pbHXMNaOiV4uMxBgBwnWViKsGR4s3zuCtEv6bov NVy+AUaTCDZGUffp08SUPulfYegZ2++hkvJ7YIiU8WD8quvHtx9woGT31pT1Xr5ltHsUF7O07o9 eqUQQaTA3IckO8J7UBWoHmTqmHLBJq2HOTn+ofLQIlCyyDcfQre5TEV65qDyEWx46JQCde60QPY 0OqXB0NgWIA4+cbmq4zDAspJSC7NutK6givoy9ngVHf3j2Rx2VZzwP21Y5A9i42zGp968c2l2i X-Received: by 2002:a05:7022:660d:b0:12c:8b9:720c with SMTP id a92af1059eb24-12de2a330a7mr383827c88.18.1777406865408; Tue, 28 Apr 2026 13:07:45 -0700 (PDT) Received: from localhost ([2a00:79e0:2e7c:8:4ff5:9607:c7e5:48f3]) by smtp.gmail.com with UTF8SMTPSA id a92af1059eb24-12ddd9a63a7sm3079240c88.11.2026.04.28.13.07.43 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Tue, 28 Apr 2026 13:07:44 -0700 (PDT) From: Brian Norris To: Rob Herring , Krzysztof Kozlowski , Conor Dooley , Thierry Reding , Jonathan Hunter , Heiko Stuebner , Matthias Brugger , AngeloGioacchino Del Regno , Bjorn Andersson , Konrad Dybcio Cc: devicetree@vger.kernel.org, Doug Anderson , linux-arm-kernel@lists.infradead.org, Tzung-Bi Shih , chrome-platform@lists.linux.dev, Brian Norris , linux-rockchip@lists.infradead.org, Julius Werner , Alim Akhtar , cros-qcom-dts-watchers@chromium.org, linux-arm-msm@vger.kernel.org, linux-tegra@vger.kernel.org, linux-samsung-soc@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH 5/7] arm64: dts: mediatek: Add #{address,size}-cells to Chromium-based /firmware Date: Tue, 28 Apr 2026 13:06:57 -0700 Message-ID: <20260428200712.2660635-6-briannorris@chromium.org> X-Mailer: git-send-email 2.54.0.545.g6539524ca2-goog In-Reply-To: <20260428200712.2660635-1-briannorris@chromium.org> References: <20260428200712.2660635-1-briannorris@chromium.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20260428_130748_652487_449474B0 X-CRM114-Status: GOOD ( 16.16 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org 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 --- 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 a8e257b21a88..a906ec1ce672 100644 --- a/arch/arm64/boot/dts/mediatek/mt8183-kukui.dtsi +++ b/arch/arm64/boot/dts/mediatek/mt8183-kukui.dtsi @@ -21,6 +21,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 8e423504ec05..ed63c74cf238 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 eadf1b2d156f..b3850be25594 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 f1ff64a84267..4992631dd504 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.54.0.545.g6539524ca2-goog