devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Chen-Yu Tsai <wenst@chromium.org>
To: Matthias Brugger <matthias.bgg@gmail.com>,
	AngeloGioacchino Del Regno
	<angelogioacchino.delregno@collabora.com>,
	Rob Herring <robh@kernel.org>,
	Krzysztof Kozlowski <krzk+dt@kernel.org>,
	Conor Dooley <conor+dt@kernel.org>
Cc: Chen-Yu Tsai <wenst@chromium.org>,
	linux-mediatek@lists.infradead.org,
	linux-arm-kernel@lists.infradead.org, devicetree@vger.kernel.org,
	linux-kernel@vger.kernel.org
Subject: [RFC PATCH 0/3] arm64: dts: mediatek: Split Ciri into overlays
Date: Mon,  8 Dec 2025 15:33:01 +0800	[thread overview]
Message-ID: <20251208073306.75279-1-wenst@chromium.org> (raw)

Hi everyone,

This series intends to serve as an example on how we could reorganize
the Chromebook device trees into a common design base DTB and split-out
DTBOs for component options. There will be no SKU-specific DTBO that
handles changing the top level compatible and "model" properties. If
these are important or needed in place of the generic board strings,
the bootloader could be made to insert the correct ones.

A separate YAML file is created to keep a mapping between the composite
DTB and SKU-specific top level compatible strings. These are needed to
build a FIT image that the bootloader can then match the correct DTB
with its own known compatible strings.

I expect the last patch, which drops the SKU specifities and adds the
YAML file to be quite contentious. However I think it would greatly
reduce the number of source files we have to manage, given we have
or will have dozens of SKUs for some models.

This is related to my "Device Tree Metadata: How Bootloaders Pick DTBs
and Apply Overlays" talk at the Device Tree MC at Plumbers [1].


Thanks
ChenYu

[1] https://lpc.events/event/19/contributions/2025/ 

Chen-Yu Tsai (3):
  dt-bindings: arm: mediatek: Add generic Ciri "base" board
  arm64: dts: mt8188-ciri: Split into base and overlays based on
    components
  [EXAMPLE] arm64: dts: mediatek: ciri: Drop SKU-specific overlays

 .../devicetree/bindings/arm/mediatek.yaml     |  4 +
 arch/arm64/boot/dts/mediatek/Makefile         | 26 ++++++
 ...88-geralt-ciri-audio-max98390-es8326.dtso} | 40 ++++++---
 ...88-geralt-ciri-audio-max98390-rt5682s.dtso | 81 +++++++++++++++++++
 ...188-geralt-ciri-audio-tas2563-es8326.dtso} | 18 ++---
 ...88-geralt-ciri-audio-tas2563-rt5682s.dtso} | 46 +++++------
 .../mt8188-geralt-ciri-panel-boe.dtso         | 10 +++
 .../mt8188-geralt-ciri-panel-ivo.dtso         | 10 +++
 .../dts/mediatek/mt8188-geralt-ciri-sku0.dts  | 32 --------
 .../dts/mediatek/mt8188-geralt-ciri-sku2.dts  | 59 --------------
 .../dts/mediatek/mt8188-geralt-ciri-sku3.dts  | 32 --------
 .../dts/mediatek/mt8188-geralt-ciri-sku4.dts  | 48 -----------
 .../dts/mediatek/mt8188-geralt-ciri-sku7.dts  | 48 -----------
 ...eralt-ciri.dtsi => mt8188-geralt-ciri.dts} | 54 ++-----------
 arch/arm64/boot/dts/mediatek/mt8188.yaml      | 51 ++++++++++++
 15 files changed, 244 insertions(+), 315 deletions(-)
 rename arch/arm64/boot/dts/mediatek/{mt8188-geralt-ciri-sku1.dts => mt8188-geralt-ciri-audio-max98390-es8326.dtso} (59%)
 create mode 100644 arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-audio-max98390-rt5682s.dtso
 rename arch/arm64/boot/dts/mediatek/{mt8188-geralt-ciri-sku5.dts => mt8188-geralt-ciri-audio-tas2563-es8326.dtso} (78%)
 rename arch/arm64/boot/dts/mediatek/{mt8188-geralt-ciri-sku6.dts => mt8188-geralt-ciri-audio-tas2563-rt5682s.dtso} (52%)
 create mode 100644 arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-panel-boe.dtso
 create mode 100644 arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-panel-ivo.dtso
 delete mode 100644 arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku0.dts
 delete mode 100644 arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku2.dts
 delete mode 100644 arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku3.dts
 delete mode 100644 arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku4.dts
 delete mode 100644 arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku7.dts
 rename arch/arm64/boot/dts/mediatek/{mt8188-geralt-ciri.dtsi => mt8188-geralt-ciri.dts} (81%)
 create mode 100644 arch/arm64/boot/dts/mediatek/mt8188.yaml

-- 
2.52.0.223.gf5cc29aaa4-goog


             reply	other threads:[~2025-12-08  7:33 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-12-08  7:33 Chen-Yu Tsai [this message]
2025-12-08  7:33 ` [RFC PATCH 1/3] dt-bindings: arm: mediatek: Add generic Ciri "base" board Chen-Yu Tsai
2025-12-08  7:33 ` [RFC PATCH 2/3] arm64: dts: mt8188-ciri: Split into base and overlays based on components Chen-Yu Tsai
2025-12-08  7:33 ` [RFC PATCH 3/3] [EXAMPLE] arm64: dts: mediatek: ciri: Drop SKU-specific overlays Chen-Yu Tsai

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=20251208073306.75279-1-wenst@chromium.org \
    --to=wenst@chromium.org \
    --cc=angelogioacchino.delregno@collabora.com \
    --cc=conor+dt@kernel.org \
    --cc=devicetree@vger.kernel.org \
    --cc=krzk+dt@kernel.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mediatek@lists.infradead.org \
    --cc=matthias.bgg@gmail.com \
    --cc=robh@kernel.org \
    /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;
as well as URLs for NNTP newsgroup(s).