Show a cover letter.

GET /api/1.1/covers/2229818/?format=api
HTTP 200 OK
Allow: GET, HEAD, OPTIONS
Content-Type: application/json
Vary: Accept

{
    "id": 2229818,
    "url": "http://patchwork.ozlabs.org/api/1.1/covers/2229818/?format=api",
    "web_url": "http://patchwork.ozlabs.org/project/linux-tegra/cover/20260428200712.2660635-1-briannorris@chromium.org/",
    "project": {
        "id": 21,
        "url": "http://patchwork.ozlabs.org/api/1.1/projects/21/?format=api",
        "name": "Linux Tegra Development",
        "link_name": "linux-tegra",
        "list_id": "linux-tegra.vger.kernel.org",
        "list_email": "linux-tegra@vger.kernel.org",
        "web_url": null,
        "scm_url": null,
        "webscm_url": null
    },
    "msgid": "<20260428200712.2660635-1-briannorris@chromium.org>",
    "date": "2026-04-28T20:06:52",
    "name": "[0/7] dts: Add /firmware/#{address,size}-cells to Chromium-based DTs",
    "submitter": {
        "id": 67074,
        "url": "http://patchwork.ozlabs.org/api/1.1/people/67074/?format=api",
        "name": "Brian Norris",
        "email": "briannorris@chromium.org"
    },
    "mbox": "http://patchwork.ozlabs.org/project/linux-tegra/cover/20260428200712.2660635-1-briannorris@chromium.org/mbox/",
    "series": [
        {
            "id": 501928,
            "url": "http://patchwork.ozlabs.org/api/1.1/series/501928/?format=api",
            "web_url": "http://patchwork.ozlabs.org/project/linux-tegra/list/?series=501928",
            "date": "2026-04-28T20:06:55",
            "name": "dts: Add /firmware/#{address,size}-cells to Chromium-based DTs",
            "version": 1,
            "mbox": "http://patchwork.ozlabs.org/series/501928/mbox/"
        }
    ],
    "comments": "http://patchwork.ozlabs.org/api/covers/2229818/comments/",
    "headers": {
        "Return-Path": "\n <linux-tegra+bounces-14034-incoming=patchwork.ozlabs.org@vger.kernel.org>",
        "X-Original-To": [
            "incoming@patchwork.ozlabs.org",
            "linux-tegra@vger.kernel.org"
        ],
        "Delivered-To": "patchwork-incoming@legolas.ozlabs.org",
        "Authentication-Results": [
            "legolas.ozlabs.org;\n\tdkim=pass (1024-bit key;\n unprotected) header.d=chromium.org header.i=@chromium.org header.a=rsa-sha256\n header.s=google header.b=gCWlP4++;\n\tdkim-atps=neutral",
            "legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=vger.kernel.org\n (client-ip=172.234.253.10; helo=sea.lore.kernel.org;\n envelope-from=linux-tegra+bounces-14034-incoming=patchwork.ozlabs.org@vger.kernel.org;\n receiver=patchwork.ozlabs.org)",
            "smtp.subspace.kernel.org;\n\tdkim=pass (1024-bit key) header.d=chromium.org header.i=@chromium.org\n header.b=\"gCWlP4++\"",
            "smtp.subspace.kernel.org;\n arc=none smtp.client-ip=74.125.82.53",
            "smtp.subspace.kernel.org;\n dmarc=pass (p=none dis=none) header.from=chromium.org",
            "smtp.subspace.kernel.org;\n spf=pass smtp.mailfrom=chromium.org"
        ],
        "Received": [
            "from sea.lore.kernel.org (sea.lore.kernel.org [172.234.253.10])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519)\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4g4s2D0Ym1z1yHv\n\tfor <incoming@patchwork.ozlabs.org>; Wed, 29 Apr 2026 06:08:36 +1000 (AEST)",
            "from smtp.subspace.kernel.org (conduit.subspace.kernel.org\n [100.90.174.1])\n\tby sea.lore.kernel.org (Postfix) with ESMTP id 613EF308D778\n\tfor <incoming@patchwork.ozlabs.org>; Tue, 28 Apr 2026 20:07:31 +0000 (UTC)",
            "from localhost.localdomain (localhost.localdomain [127.0.0.1])\n\tby smtp.subspace.kernel.org (Postfix) with ESMTP id 44FFB3D4117;\n\tTue, 28 Apr 2026 20:07:31 +0000 (UTC)",
            "from mail-dl1-f53.google.com (mail-dl1-f53.google.com\n [74.125.82.53])\n\t(using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits))\n\t(No client certificate requested)\n\tby smtp.subspace.kernel.org (Postfix) with ESMTPS id 3EA993BBA0B\n\tfor <linux-tegra@vger.kernel.org>; Tue, 28 Apr 2026 20:07:29 +0000 (UTC)",
            "by mail-dl1-f53.google.com with SMTP id\n a92af1059eb24-12ddbe104ccso2053646c88.0\n        for <linux-tegra@vger.kernel.org>;\n Tue, 28 Apr 2026 13:07:29 -0700 (PDT)",
            "from localhost ([2a00:79e0:2e7c:8:4ff5:9607:c7e5:48f3])\n        by smtp.gmail.com with UTF8SMTPSA id\n a92af1059eb24-12ddd93abadsm2784062c88.6.2026.04.28.13.07.25\n        (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);\n        Tue, 28 Apr 2026 13:07:27 -0700 (PDT)"
        ],
        "ARC-Seal": "i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116;\n\tt=1777406851; cv=none;\n b=GiUEZwr3Smc8kisZ0rlp2qNSN9FCD0Z5SeDPaDB2gB7uwrhkWlbBbm54s9oMnaTd8U9YJ2J6iXlCc+MBsHlefooMes3ovQyt/7YnTpitxAUSQHSAXBikiWZhFm+VzJAugUzBUVYj7TTv0wdUn/F21MqBBCOLFwXxQVFvg2GvwOs=",
        "ARC-Message-Signature": "i=1; a=rsa-sha256; d=subspace.kernel.org;\n\ts=arc-20240116; t=1777406851; c=relaxed/simple;\n\tbh=ksXQeqM5axRgUsGjCWqfJTytSjsUbB4ll76rBVY/214=;\n\th=From:To:Cc:Subject:Date:Message-ID:MIME-Version;\n b=DcMZ2qONL+mJl1qA8I2pqwQG/PWipQX2+/uyu4sFGxY1m6WFuZzvAwLzRIjN7MAv5Fhp3Dh2YVXp4QFvovH3xn7pQs+d7YK9GwGbn3Rk5qmafbtZt27QK0h1dzkp/CAnCAHlSc1KGAzFsHvqLqRHpA3CguZBT1dGbBv3y6Fpw+k=",
        "ARC-Authentication-Results": "i=1; smtp.subspace.kernel.org;\n dmarc=pass (p=none dis=none) header.from=chromium.org;\n spf=pass smtp.mailfrom=chromium.org;\n dkim=pass (1024-bit key) header.d=chromium.org header.i=@chromium.org\n header.b=gCWlP4++; arc=none smtp.client-ip=74.125.82.53",
        "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n        d=chromium.org; s=google; t=1777406848; x=1778011648;\n darn=vger.kernel.org;\n        h=content-transfer-encoding:mime-version:message-id:date:subject:cc\n         :to:from:from:to:cc:subject:date:message-id:reply-to;\n        bh=oKQRvM+woDu6KBLreGPcHmP1j9kbXpV/WZYBI8HqOII=;\n        b=gCWlP4++xcNr9+Gf+fqTnVbbgA8YOADh3IFpBiDZBsSn5havxoaKvL9GdHxwLKLxkb\n         zFVvECzbbn/CyuqATemdznWR14f6NLOH3Ym9iV/MhYVW/qYWL/D+PmltI62KSjKNKldh\n         sTwvpsTDTXXhYlZiGxNnSpDxvoDln+d4GWE/8=",
        "X-Google-DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n        d=1e100.net; s=20251104; t=1777406848; x=1778011648;\n        h=content-transfer-encoding:mime-version:message-id:date:subject:cc\n         :to:from:x-gm-gg:x-gm-message-state:from:to:cc:subject:date\n         :message-id:reply-to;\n        bh=oKQRvM+woDu6KBLreGPcHmP1j9kbXpV/WZYBI8HqOII=;\n        b=Pf0l2MLbyWbJ9ZRoFWzmN/BUlth1+ORSEGn16d5S0XrtQUwYUCsBAvGa1SdFaBndZ7\n         Z9r5V0HMOeGnnlu0Mup13Y4Ux+s+2GCDRmFehYdO/ttvw3m7K6+kRv6j9MQjWncXtM4y\n         oeUqrETLBO9uEEepbkwa8kzvJPKbJXKxw1+tuG+u1ZrImw5i0NWIQt4WrnnsCZLH/zNn\n         rL62rXqOytYUcFrXSzSkk5vnWC3M8hgGyNRWXF2PdLwqOc8/qisQUzpFE72+0j1NwnbF\n         W1aPK8jJlNMLkuvTe2MwwtnLRVf13Spu88a/ifS+/vKq7WT3/kSyBBBZmRyx4qNFYxR6\n         J8SQ==",
        "X-Forwarded-Encrypted": "i=1;\n AFNElJ/3EOJ5fUEQsgn8KBAgztf+WWCqO9pENfOL43oxUgpQXhFM3AVrYAwjUKcJIZtn1zgKdF5meufTs0GH0w==@vger.kernel.org",
        "X-Gm-Message-State": "AOJu0YwSAWDogkH9BbnxQyUTVWkKXc385fWVWojwJ4m9j6Uf2jmE6oSr\n\twrl7K4F5IlZpkxExJeg3joktrh6PXTtnlBnz0LGF+wGmdAhzeIoU/5TSkkARZ2kNaw==",
        "X-Gm-Gg": "AeBDietrxB9m0vYcFOErpXDkRC2airbIULEoqtCcgy7THW9Wpmf12VYjzzHdMT0v4Pz\n\tLBA4fnE4EEUcI1UAdn24Q8r6lf+gVBrbBD/lnZMsJ/gT1/BsAj0mnSJpUdXono/HMivaM2NQ1/e\n\tQfMRH2VOHpp9qaQ7Z+qIEGXFFmqJIrpr6dtunTT7yZ+myKjiLmyhdxVsov7PAepdAUzte9v8GpP\n\ttd6JWHjWsqiH9qp7O9GUknwUME/5BRd8gWylRwkUxySxhkwqMpYzMSl4alPPHL5Wkr2YBn1rh+0\n\tE6F1x3s66+wKwqDPy2iPXYGTsMTh2sWDjEAO5IgcFn2amgZQ3gCyXugCXRxA2ojeqc8cIGU6mY7\n\t9Wb75sIoeJul5Pw5MK2ASJhjHNnCkl44sOruTAxxnrIrynyYW52hkMxaV4lf87GMRHXT8OqJCtf\n\tBv2zMcCe2J2IdgqV9gC5r8u2GJrw11/OUUXzboZ1ledWd5e1oxr+4yRqsPVSW/XcaETSrCUKpc",
        "X-Received": "by 2002:a05:7022:fe06:b0:12d:de3f:d84d with SMTP id\n a92af1059eb24-12dde3fdd97mr1431757c88.38.1777406848179;\n        Tue, 28 Apr 2026 13:07:28 -0700 (PDT)",
        "From": "Brian Norris <briannorris@chromium.org>",
        "To": "Rob Herring <robh@kernel.org>,\n\tKrzysztof Kozlowski <krzk+dt@kernel.org>,\n\tConor Dooley <conor+dt@kernel.org>,\n\tThierry Reding <thierry.reding@kernel.org>,\n\tJonathan Hunter <jonathanh@nvidia.com>,\n\tHeiko Stuebner <heiko@sntech.de>,\n\tMatthias Brugger <matthias.bgg@gmail.com>,\n\tAngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>,\n\tBjorn Andersson <andersson@kernel.org>,\n\tKonrad Dybcio <konradybcio@kernel.org>",
        "Cc": "devicetree@vger.kernel.org,\n\tDoug Anderson <dianders@chromium.org>,\n\tlinux-arm-kernel@lists.infradead.org,\n\tTzung-Bi Shih <tzungbi@kernel.org>,\n\tchrome-platform@lists.linux.dev,\n\tBrian Norris <briannorris@chromium.org>,\n\tlinux-rockchip@lists.infradead.org,\n\tJulius Werner <jwerner@chromium.org>,\n\tAlim Akhtar <alim.akhtar@samsung.com>,\n\tcros-qcom-dts-watchers@chromium.org,\n\tlinux-arm-msm@vger.kernel.org,\n\tlinux-tegra@vger.kernel.org,\n\tlinux-samsung-soc@vger.kernel.org,\n\tlinux-kernel@vger.kernel.org",
        "Subject": "[PATCH 0/7] dts: Add /firmware/#{address,size}-cells to\n Chromium-based DTs",
        "Date": "Tue, 28 Apr 2026 13:06:52 -0700",
        "Message-ID": "<20260428200712.2660635-1-briannorris@chromium.org>",
        "X-Mailer": "git-send-email 2.54.0.545.g6539524ca2-goog",
        "Precedence": "bulk",
        "X-Mailing-List": "linux-tegra@vger.kernel.org",
        "List-Id": "<linux-tegra.vger.kernel.org>",
        "List-Subscribe": "<mailto:linux-tegra+subscribe@vger.kernel.org>",
        "List-Unsubscribe": "<mailto:linux-tegra+unsubscribe@vger.kernel.org>",
        "MIME-Version": "1.0",
        "Content-Transfer-Encoding": "8bit"
    },
    "content": "Chromium/Depthcharge bootloaders may dynamically add a few device nodes\nto a system's DTB under a /firmware node. A typical DT looks something\nlike the following:\n\n  ## From a RK3399 Gru/Kevin Chromebook:\n  # find /sys/firmware/devicetree/base/firmware\n  /sys/firmware/devicetree/base/firmware\n  /sys/firmware/devicetree/base/firmware/coreboot\n  /sys/firmware/devicetree/base/firmware/coreboot/ram-code\n  /sys/firmware/devicetree/base/firmware/coreboot/compatible\n  /sys/firmware/devicetree/base/firmware/coreboot/board-id\n  /sys/firmware/devicetree/base/firmware/coreboot/reg\n  /sys/firmware/devicetree/base/firmware/coreboot/name\n  /sys/firmware/devicetree/base/firmware/chromeos\n  /sys/firmware/devicetree/base/firmware/chromeos/readonly-firmware-version\n  /sys/firmware/devicetree/base/firmware/chromeos/active-ec-firmware\n  /sys/firmware/devicetree/base/firmware/chromeos/firmware-version\n  /sys/firmware/devicetree/base/firmware/chromeos/nonvolatile-context-storage\n  /sys/firmware/devicetree/base/firmware/chromeos/vboot-shared-data\n  /sys/firmware/devicetree/base/firmware/chromeos/nonvolatile-context-size\n  /sys/firmware/devicetree/base/firmware/chromeos/nonvolatile-context-offset\n  /sys/firmware/devicetree/base/firmware/chromeos/hardware-id\n  /sys/firmware/devicetree/base/firmware/chromeos/compatible\n  /sys/firmware/devicetree/base/firmware/chromeos/firmware-type\n  /sys/firmware/devicetree/base/firmware/chromeos/fmap-offset\n  /sys/firmware/devicetree/base/firmware/chromeos/name\n  /sys/firmware/devicetree/base/firmware/ranges\n  /sys/firmware/devicetree/base/firmware/name\n\nThe /firmware node has an empty 'ranges', but does not have\naddress/size-cells.\n\nCommit 6e5773d52f4a (\"of/address: Fix WARN when attempting translating\nnon-translatable addresses\") started requiring #address-cells for a\ndevice's parent if we want to use the reg resource in a device node.\nThis leads to errors like the following:\n\n[    7.763870] coreboot_table firmware:coreboot: probe with driver coreboot_table failed with error -22\n\nThis series adds appropriate #{address,size}-cells to the device trees\nused on Arm Chromebooks to work around the problem.\n\nNote that Google provides bootloader updates for some devices that add\n{address,size}-cells [1], but these are only delivered via Google OS\nupdates. Not all users receive Google software updates, and even if they\ndo, not all devices still receive bootloader updates from Google.\n\nThis problem was first noticed in OpenWrt, where some Chromium-based\nrouters ran into the same issue:\n\nhttps://github.com/openwrt/openwrt/issues/21243\n\nRelevant OpenWrt fixes: https://github.com/openwrt/openwrt/pull/22951\n\nThere is also discussion at [2].\n\nI've currently only tested:\n1) the aforementioned OpenWrt routers (with non-upstream DTS/DTB)\n2) RK3399 Gru/Kevin Chromebook (patch 1)\n3) Qualcomm SC7280 Herobrine (patch 7)\n\nI assume the others should follow the same pattern. I don't know if I've\ncovered every relevant Depthcharge-using device, but I've made a good\nattempt to identify them all.\n\nI reviewed Depthcharge code history and found that this problematic\nbootloader behavior dates back to at least 2014, with the Tegra/Nyan\ndevice. Older devices may have similar DTB structures, but I'm not sure\nif they have the same address-cells problems. In any case, these changes\nshouldn't hurt even if a device was not affected.\n\nBrian\n\n[1] https://lore.kernel.org/all/20241209092809.GA3246424@google.com/\n    https://crrev.com/c/6051580 (\"coreboot: Insert #address-cells and\n    #size-cells for firmware node\")\n\n[2] [regression] of: mis-parsing Depthcharge's /firmware\n    https://lore.kernel.org/all/aeKlYzTiL0OB1y3g@google.com/\n\n\nBrian Norris (7):\n  arm64: dts: rockchip: Add #{address,size}-cells to Chromium-based\n    /firmware\n  ARM: dts: rockchip: Add #{address,size}-cells to Chromium-based\n    /firmware\n  ARM: dts: nvidia: Add #{address,size}-cells to Chromium-based\n    /firmware\n  ARM: dts: samsung: Add #{address,size}-cells to Chromium-based\n    /firmware\n  arm64: dts: mediatek: Add #{address,size}-cells to Chromium-based\n    /firmware\n  arm64: dts: nvidia: Add #{address,size}-cells to Chromium-based\n    /firmware\n  arm64: dts: qcom: Add #{address,size}-cells to Chromium-based\n    /firmware\n\n arch/arm/boot/dts/nvidia/tegra124-nyan.dtsi           | 5 +++++\n arch/arm/boot/dts/nvidia/tegra124-venice2.dts         | 5 +++++\n arch/arm/boot/dts/rockchip/rk3288-veyron.dtsi         | 5 +++++\n arch/arm/boot/dts/samsung/exynos5250-snow-common.dtsi | 5 +++++\n arch/arm/boot/dts/samsung/exynos5250-spring.dts       | 5 +++++\n arch/arm/boot/dts/samsung/exynos5420-peach-pit.dts    | 5 +++++\n arch/arm/boot/dts/samsung/exynos5800-peach-pi.dts     | 5 +++++\n arch/arm64/boot/dts/mediatek/mt8173-elm.dtsi          | 5 +++++\n arch/arm64/boot/dts/mediatek/mt8183-kukui.dtsi        | 5 +++++\n arch/arm64/boot/dts/mediatek/mt8186-corsola.dtsi      | 5 +++++\n arch/arm64/boot/dts/mediatek/mt8188-geralt.dtsi       | 5 +++++\n arch/arm64/boot/dts/mediatek/mt8192-asurada.dtsi      | 5 +++++\n arch/arm64/boot/dts/mediatek/mt8195-cherry.dtsi       | 5 +++++\n arch/arm64/boot/dts/nvidia/tegra132-norrin.dts        | 5 +++++\n arch/arm64/boot/dts/nvidia/tegra210-smaug.dts         | 5 +++++\n arch/arm64/boot/dts/qcom/sc7180-trogdor.dtsi          | 5 +++++\n arch/arm64/boot/dts/qcom/sc7280-herobrine.dtsi        | 5 +++++\n arch/arm64/boot/dts/rockchip/rk3399-gru.dtsi          | 5 +++++\n 18 files changed, 90 insertions(+)"
}