* [RFC PATCH 2/3] arm64: dts: mt8188-ciri: Split into base and overlays based on components
2025-12-08 7:33 [RFC PATCH 0/3] arm64: dts: mediatek: Split Ciri into overlays Chen-Yu Tsai
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 ` Chen-Yu Tsai
2025-12-08 7:33 ` [RFC PATCH 3/3] [EXAMPLE] arm64: dts: mediatek: ciri: Drop SKU-specific overlays Chen-Yu Tsai
2 siblings, 0 replies; 4+ messages in thread
From: Chen-Yu Tsai @ 2025-12-08 7:33 UTC (permalink / raw)
To: Matthias Brugger, AngeloGioacchino Del Regno, Rob Herring,
Krzysztof Kozlowski, Conor Dooley
Cc: Chen-Yu Tsai, linux-mediatek, linux-arm-kernel, devicetree,
linux-kernel
The MT8188-based Ciri device has 8 SKUs. These are derived from the
combinations of 3 types of components (headphone codec, speaker codec,
and display panel), each having 2 options.
Decompose the existing dtsi / dts files into 6 overlays for each
component option. The audio codec have combined audio routing and graph
connections, cannot be easily separated into separate bits without
adding even more glue overlays. The per-SKU dts files are also converted
to overlays, though now they only contain the final board compatible and
model name.
Signed-off-by: Chen-Yu Tsai <wenst@chromium.org>
---
arch/arm64/boot/dts/mediatek/Makefile | 34 ++++++++
...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-sku0.dtso | 11 +++
.../dts/mediatek/mt8188-geralt-ciri-sku1.dtso | 11 +++
.../dts/mediatek/mt8188-geralt-ciri-sku2.dts | 59 --------------
.../dts/mediatek/mt8188-geralt-ciri-sku2.dtso | 11 +++
.../dts/mediatek/mt8188-geralt-ciri-sku3.dts | 32 --------
.../dts/mediatek/mt8188-geralt-ciri-sku3.dtso | 11 +++
.../dts/mediatek/mt8188-geralt-ciri-sku4.dts | 48 -----------
.../dts/mediatek/mt8188-geralt-ciri-sku4.dtso | 11 +++
.../dts/mediatek/mt8188-geralt-ciri-sku5.dtso | 11 +++
.../dts/mediatek/mt8188-geralt-ciri-sku6.dtso | 11 +++
.../dts/mediatek/mt8188-geralt-ciri-sku7.dts | 48 -----------
.../dts/mediatek/mt8188-geralt-ciri-sku7.dtso | 11 +++
...eralt-ciri.dtsi => mt8188-geralt-ciri.dts} | 54 ++-----------
21 files changed, 285 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
create mode 100644 arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku0.dtso
create mode 100644 arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku1.dtso
delete mode 100644 arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku2.dts
create mode 100644 arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku2.dtso
delete mode 100644 arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku3.dts
create mode 100644 arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku3.dtso
delete mode 100644 arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku4.dts
create mode 100644 arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku4.dtso
create mode 100644 arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku5.dtso
create mode 100644 arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku6.dtso
delete mode 100644 arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku7.dts
create mode 100644 arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku7.dtso
rename arch/arm64/boot/dts/mediatek/{mt8188-geralt-ciri.dtsi => mt8188-geralt-ciri.dts} (81%)
diff --git a/arch/arm64/boot/dts/mediatek/Makefile b/arch/arm64/boot/dts/mediatek/Makefile
index c5fd6191a925..39a844386366 100644
--- a/arch/arm64/boot/dts/mediatek/Makefile
+++ b/arch/arm64/boot/dts/mediatek/Makefile
@@ -86,6 +86,40 @@ dtb-$(CONFIG_ARCH_MEDIATEK) += mt8186-corsola-tentacruel-sku262148.dtb
dtb-$(CONFIG_ARCH_MEDIATEK) += mt8186-corsola-voltorb.dtb
dtb-$(CONFIG_ARCH_MEDIATEK) += mt8186-evb.dtb
dtb-$(CONFIG_ARCH_MEDIATEK) += mt8188-evb.dtb
+
+mt8188-geralt-ciri-sku0-dtbs := mt8188-geralt-ciri.dtb \
+ mt8188-geralt-ciri-panel-boe.dtbo \
+ mt8188-geralt-ciri-audio-max98390-rt5682s.dtbo \
+ mt8188-geralt-ciri-sku0.dtbo
+mt8188-geralt-ciri-sku1-dtbs := mt8188-geralt-ciri.dtb \
+ mt8188-geralt-ciri-panel-ivo.dtbo \
+ mt8188-geralt-ciri-audio-max98390-es8326.dtbo \
+ mt8188-geralt-ciri-sku1.dtbo
+mt8188-geralt-ciri-sku2-dtbs := mt8188-geralt-ciri.dtb \
+ mt8188-geralt-ciri-panel-boe.dtbo \
+ mt8188-geralt-ciri-audio-max98390-es8326.dtbo \
+ mt8188-geralt-ciri-sku2.dtbo
+mt8188-geralt-ciri-sku3-dtbs := mt8188-geralt-ciri.dtb \
+ mt8188-geralt-ciri-panel-ivo.dtbo \
+ mt8188-geralt-ciri-audio-max98390-rt5682s.dtbo \
+ mt8188-geralt-ciri-sku3.dtbo
+mt8188-geralt-ciri-sku4-dtbs := mt8188-geralt-ciri.dtb \
+ mt8188-geralt-ciri-panel-boe.dtbo \
+ mt8188-geralt-ciri-audio-tas2563-rt5682s.dtbo \
+ mt8188-geralt-ciri-sku4.dtbo
+mt8188-geralt-ciri-sku5-dtbs := mt8188-geralt-ciri.dtb \
+ mt8188-geralt-ciri-panel-ivo.dtbo \
+ mt8188-geralt-ciri-audio-tas2563-es8326.dtbo \
+ mt8188-geralt-ciri-sku5.dtbo
+mt8188-geralt-ciri-sku6-dtbs := mt8188-geralt-ciri.dtb \
+ mt8188-geralt-ciri-panel-boe.dtbo \
+ mt8188-geralt-ciri-audio-tas2563-es8326.dtbo \
+ mt8188-geralt-ciri-sku6.dtbo
+mt8188-geralt-ciri-sku7-dtbs := mt8188-geralt-ciri.dtb \
+ mt8188-geralt-ciri-panel-ivo.dtbo \
+ mt8188-geralt-ciri-audio-tas2563-rt5682s.dtbo \
+ mt8188-geralt-ciri-sku7.dtbo
+
dtb-$(CONFIG_ARCH_MEDIATEK) += mt8188-geralt-ciri-sku0.dtb
dtb-$(CONFIG_ARCH_MEDIATEK) += mt8188-geralt-ciri-sku1.dtb
dtb-$(CONFIG_ARCH_MEDIATEK) += mt8188-geralt-ciri-sku2.dtb
diff --git a/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku1.dts b/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-audio-max98390-es8326.dtso
similarity index 59%
rename from arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku1.dts
rename to arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-audio-max98390-es8326.dtso
index ef5ea9d12b1d..b99bd4c78ec5 100644
--- a/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku1.dts
+++ b/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-audio-max98390-es8326.dtso
@@ -2,20 +2,14 @@
/*
* Copyright 2023 Google LLC
*/
+#include <dt-bindings/gpio/gpio.h>
+#include <dt-bindings/interrupt-controller/irq.h>
/dts-v1/;
-#include "mt8188-geralt-ciri.dtsi"
-
-/ {
- model = "Google Ciri sku1 board";
- compatible = "google,ciri-sku1", "google,ciri", "mediatek,mt8188";
-};
-
-&dsi_panel {
- compatible = "ivo,t109nw41", "himax,hx83102";
-};
+/plugin/;
&i2c0 {
- /delete-node/ audio-codec@1a;
+ #address-cells = <1>;
+ #size-cells = <0>;
es8326: audio-codec@19 {
compatible = "everest,es8326";
@@ -27,6 +21,23 @@ es8326: audio-codec@19 {
everest,jack-pol = [0e];
everest,interrupt-clk = [00];
};
+
+ max98390_38: amplifier@38 {
+ compatible = "maxim,max98390";
+ reg = <0x38>;
+ sound-name-prefix = "Front Right";
+ reset-gpios = <&pio 118 GPIO_ACTIVE_LOW>;
+ pinctrl-names = "default";
+ pinctrl-0 = <&speaker_en>;
+ #sound-dai-cells = <0>;
+ };
+
+ max98390_39: amplifier@39 {
+ compatible = "maxim,max98390";
+ reg = <0x39>;
+ sound-name-prefix = "Front Left";
+ #sound-dai-cells = <0>;
+ };
};
&sound {
@@ -45,6 +56,13 @@ &sound {
"Left Spk", "Front Left BE_OUT",
"Right Spk", "Front Right BE_OUT";
+ dai-link-1 {
+ codec {
+ sound-dai = <&max98390_38>,
+ <&max98390_39>;
+ };
+ };
+
dai-link-2 {
codec {
sound-dai = <&es8326>;
diff --git a/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-audio-max98390-rt5682s.dtso b/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-audio-max98390-rt5682s.dtso
new file mode 100644
index 000000000000..44dd82926280
--- /dev/null
+++ b/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-audio-max98390-rt5682s.dtso
@@ -0,0 +1,81 @@
+// SPDX-License-Identifier: (GPL-2.0 OR MIT)
+/*
+ * Copyright 2023 Google LLC
+ */
+#include <dt-bindings/gpio/gpio.h>
+#include <dt-bindings/interrupt-controller/irq.h>
+/dts-v1/;
+/plugin/;
+
+&i2c0 {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ rt5682s: audio-codec@1a {
+ compatible = "realtek,rt5682s";
+ reg = <0x1a>;
+ interrupts-extended = <&pio 108 IRQ_TYPE_EDGE_BOTH>;
+ pinctrl-names = "default";
+ pinctrl-0 = <&audio_codec_pins>;
+ #sound-dai-cells = <1>;
+
+ AVDD-supply = <&mt6359_vio18_ldo_reg>;
+ DBVDD-supply = <&mt6359_vio18_ldo_reg>;
+ LDO1-IN-supply = <&mt6359_vio18_ldo_reg>;
+ MICVDD-supply = <&pp3300_s3>;
+ realtek,jd-src = <1>;
+ };
+
+ max98390_38: amplifier@38 {
+ compatible = "maxim,max98390";
+ reg = <0x38>;
+ sound-name-prefix = "Front Right";
+ reset-gpios = <&pio 118 GPIO_ACTIVE_LOW>;
+ pinctrl-names = "default";
+ pinctrl-0 = <&speaker_en>;
+ #sound-dai-cells = <0>;
+ };
+
+ max98390_39: amplifier@39 {
+ compatible = "maxim,max98390";
+ reg = <0x39>;
+ sound-name-prefix = "Front Left";
+ #sound-dai-cells = <0>;
+ };
+};
+
+&sound {
+ compatible = "mediatek,mt8188-rt5682s";
+ model = "mt8188_m98390_5682";
+
+ audio-routing =
+ "ETDM1_OUT", "ETDM_SPK_PIN",
+ "ETDM2_OUT", "ETDM_HP_PIN",
+ "ETDM1_IN", "ETDM_SPK_PIN",
+ "ETDM2_IN", "ETDM_HP_PIN",
+ "ADDA Capture", "MTKAIF_PIN",
+ "Headphone Jack", "HPOL",
+ "Headphone Jack", "HPOR",
+ "IN1P", "Headset Mic",
+ "Left Spk", "Front Left BE_OUT",
+ "Right Spk", "Front Right BE_OUT";
+
+ dai-link-1 {
+ codec {
+ sound-dai = <&max98390_38>,
+ <&max98390_39>;
+ };
+ };
+
+ dai-link-2 {
+ codec {
+ sound-dai = <&rt5682s 0>;
+ };
+ };
+
+ dai-link-3 {
+ codec {
+ sound-dai = <&rt5682s 0>;
+ };
+ };
+};
diff --git a/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku5.dts b/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-audio-tas2563-es8326.dtso
similarity index 78%
rename from arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku5.dts
rename to arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-audio-tas2563-es8326.dtso
index bf87201ccf27..c64094c6c249 100644
--- a/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku5.dts
+++ b/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-audio-tas2563-es8326.dtso
@@ -2,22 +2,14 @@
/*
* Copyright 2024 Google LLC
*/
+#include <dt-bindings/gpio/gpio.h>
+#include <dt-bindings/interrupt-controller/irq.h>
/dts-v1/;
-#include "mt8188-geralt-ciri.dtsi"
-
-/ {
- model = "Google Ciri sku5 board (rev4)";
- compatible = "google,ciri-sku5", "google,ciri", "mediatek,mt8188";
-};
-
-&dsi_panel {
- compatible = "ivo,t109nw41", "himax,hx83102";
-};
+/plugin/;
&i2c0 {
- /delete-node/ audio-codec@1a;
- /delete-node/ amplifier@38;
- /delete-node/ amplifier@39;
+ #address-cells = <1>;
+ #size-cells = <0>;
es8326: audio-codec@19 {
compatible = "everest,es8326";
diff --git a/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku6.dts b/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-audio-tas2563-rt5682s.dtso
similarity index 52%
rename from arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku6.dts
rename to arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-audio-tas2563-rt5682s.dtso
index 17d7359dfb6a..b8e6220a449e 100644
--- a/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku6.dts
+++ b/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-audio-tas2563-rt5682s.dtso
@@ -2,32 +2,28 @@
/*
* Copyright 2024 Google LLC
*/
+#include <dt-bindings/gpio/gpio.h>
+#include <dt-bindings/interrupt-controller/irq.h>
/dts-v1/;
-#include "mt8188-geralt-ciri.dtsi"
-
-/ {
- model = "Google Ciri sku6 board (rev4)";
- compatible = "google,ciri-sku6", "google,ciri", "mediatek,mt8188";
-};
-
-&dsi_panel {
- compatible = "boe,nv110wum-l60", "himax,hx83102";
-};
+/plugin/;
&i2c0 {
- /delete-node/ audio-codec@1a;
- /delete-node/ amplifier@38;
- /delete-node/ amplifier@39;
+ #address-cells = <1>;
+ #size-cells = <0>;
- es8326: audio-codec@19 {
- compatible = "everest,es8326";
- reg = <0x19>;
- interrupts-extended = <&pio 108 IRQ_TYPE_LEVEL_LOW>;
+ rt5682s: audio-codec@1a {
+ compatible = "realtek,rt5682s";
+ reg = <0x1a>;
+ interrupts-extended = <&pio 108 IRQ_TYPE_EDGE_BOTH>;
pinctrl-names = "default";
pinctrl-0 = <&audio_codec_pins>;
- #sound-dai-cells = <0>;
- everest,jack-pol = [0e];
- everest,interrupt-clk = [00];
+ #sound-dai-cells = <1>;
+
+ AVDD-supply = <&mt6359_vio18_ldo_reg>;
+ DBVDD-supply = <&mt6359_vio18_ldo_reg>;
+ LDO1-IN-supply = <&mt6359_vio18_ldo_reg>;
+ MICVDD-supply = <&pp3300_s3>;
+ realtek,jd-src = <1>;
};
tas2563: amplifier@4f {
@@ -39,8 +35,8 @@ tas2563: amplifier@4f {
};
&sound {
- compatible = "mediatek,mt8188-es8326";
- model = "mt8188_tas2563_8326";
+ compatible = "mediatek,mt8188-rt5682s";
+ model = "mt8188_tas2563_5682";
audio-routing =
"ETDM1_OUT", "ETDM_SPK_PIN",
@@ -50,7 +46,7 @@ &sound {
"ADDA Capture", "MTKAIF_PIN",
"Headphone Jack", "HPOL",
"Headphone Jack", "HPOR",
- "MIC1", "Headset Mic";
+ "IN1P", "Headset Mic";
dai-link-1 {
codec {
@@ -60,13 +56,13 @@ codec {
dai-link-2 {
codec {
- sound-dai = <&es8326>;
+ sound-dai = <&rt5682s 0>;
};
};
dai-link-3 {
codec {
- sound-dai = <&es8326>;
+ sound-dai = <&rt5682s 0>;
};
};
};
diff --git a/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-panel-boe.dtso b/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-panel-boe.dtso
new file mode 100644
index 000000000000..4d61226713bc
--- /dev/null
+++ b/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-panel-boe.dtso
@@ -0,0 +1,10 @@
+// SPDX-License-Identifier: (GPL-2.0 OR MIT)
+/*
+ * Copyright 2023 Google LLC
+ */
+/dts-v1/;
+/plugin/;
+
+&dsi_panel {
+ compatible = "boe,nv110wum-l60", "himax,hx83102";
+};
diff --git a/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-panel-ivo.dtso b/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-panel-ivo.dtso
new file mode 100644
index 000000000000..8cdacf64c100
--- /dev/null
+++ b/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-panel-ivo.dtso
@@ -0,0 +1,10 @@
+// SPDX-License-Identifier: (GPL-2.0 OR MIT)
+/*
+ * Copyright 2023 Google LLC
+ */
+/dts-v1/;
+/plugin/;
+
+&dsi_panel {
+ compatible = "ivo,t109nw41", "himax,hx83102";
+};
diff --git a/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku0.dts b/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku0.dts
deleted file mode 100644
index 79d6d12394b9..000000000000
--- a/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku0.dts
+++ /dev/null
@@ -1,32 +0,0 @@
-// SPDX-License-Identifier: (GPL-2.0 OR MIT)
-/*
- * Copyright 2023 Google LLC
- */
-/dts-v1/;
-#include "mt8188-geralt-ciri.dtsi"
-
-/ {
- model = "Google Ciri sku0 board";
- compatible = "google,ciri-sku0", "google,ciri", "mediatek,mt8188";
-};
-
-&dsi_panel {
- compatible = "boe,nv110wum-l60", "himax,hx83102";
-};
-
-&sound {
- compatible = "mediatek,mt8188-rt5682s";
- model = "mt8188_m98390_5682";
-
- audio-routing =
- "ETDM1_OUT", "ETDM_SPK_PIN",
- "ETDM2_OUT", "ETDM_HP_PIN",
- "ETDM1_IN", "ETDM_SPK_PIN",
- "ETDM2_IN", "ETDM_HP_PIN",
- "ADDA Capture", "MTKAIF_PIN",
- "Headphone Jack", "HPOL",
- "Headphone Jack", "HPOR",
- "IN1P", "Headset Mic",
- "Left Spk", "Front Left BE_OUT",
- "Right Spk", "Front Right BE_OUT";
-};
diff --git a/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku0.dtso b/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku0.dtso
new file mode 100644
index 000000000000..884a7b2d943c
--- /dev/null
+++ b/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku0.dtso
@@ -0,0 +1,11 @@
+// SPDX-License-Identifier: (GPL-2.0 OR MIT)
+/*
+ * Copyright 2023 Google LLC
+ */
+/dts-v1/;
+/plugin/;
+
+&{/} {
+ model = "Google Ciri sku0 board";
+ compatible = "google,ciri-sku0", "google,ciri", "mediatek,mt8188";
+};
diff --git a/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku1.dtso b/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku1.dtso
new file mode 100644
index 000000000000..d3ed6ea535d7
--- /dev/null
+++ b/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku1.dtso
@@ -0,0 +1,11 @@
+// SPDX-License-Identifier: (GPL-2.0 OR MIT)
+/*
+ * Copyright 2023 Google LLC
+ */
+/dts-v1/;
+/plugin/;
+
+&{/} {
+ model = "Google Ciri sku1 board";
+ compatible = "google,ciri-sku1", "google,ciri", "mediatek,mt8188";
+};
diff --git a/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku2.dts b/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku2.dts
deleted file mode 100644
index ef56786fc2be..000000000000
--- a/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku2.dts
+++ /dev/null
@@ -1,59 +0,0 @@
-// SPDX-License-Identifier: (GPL-2.0 OR MIT)
-/*
- * Copyright 2024 Google LLC
- */
-/dts-v1/;
-#include "mt8188-geralt-ciri.dtsi"
-
-/ {
- model = "Google Ciri sku2 board";
- compatible = "google,ciri-sku2", "google,ciri", "mediatek,mt8188";
-};
-
-&dsi_panel {
- compatible = "boe,nv110wum-l60", "himax,hx83102";
-};
-
-&i2c0 {
- /delete-node/ audio-codec@1a;
-
- es8326: audio-codec@19 {
- compatible = "everest,es8326";
- reg = <0x19>;
- interrupts-extended = <&pio 108 IRQ_TYPE_LEVEL_LOW>;
- pinctrl-names = "default";
- pinctrl-0 = <&audio_codec_pins>;
- #sound-dai-cells = <0>;
- everest,jack-pol = [0e];
- everest,interrupt-clk = [00];
- };
-};
-
-&sound {
- compatible = "mediatek,mt8188-es8326";
- model = "mt8188_m98390_8326";
-
- audio-routing =
- "ETDM1_OUT", "ETDM_SPK_PIN",
- "ETDM2_OUT", "ETDM_HP_PIN",
- "ETDM1_IN", "ETDM_SPK_PIN",
- "ETDM2_IN", "ETDM_HP_PIN",
- "ADDA Capture", "MTKAIF_PIN",
- "Headphone Jack", "HPOL",
- "Headphone Jack", "HPOR",
- "MIC1", "Headset Mic",
- "Left Spk", "Front Left BE_OUT",
- "Right Spk", "Front Right BE_OUT";
-
- dai-link-2 {
- codec {
- sound-dai = <&es8326>;
- };
- };
-
- dai-link-3 {
- codec {
- sound-dai = <&es8326>;
- };
- };
-};
diff --git a/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku2.dtso b/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku2.dtso
new file mode 100644
index 000000000000..3f9d38bc2ad2
--- /dev/null
+++ b/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku2.dtso
@@ -0,0 +1,11 @@
+// SPDX-License-Identifier: (GPL-2.0 OR MIT)
+/*
+ * Copyright 2024 Google LLC
+ */
+/dts-v1/;
+/plugin/;
+
+&{/} {
+ model = "Google Ciri sku2 board";
+ compatible = "google,ciri-sku2", "google,ciri", "mediatek,mt8188";
+};
diff --git a/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku3.dts b/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku3.dts
deleted file mode 100644
index 524f7f0064c1..000000000000
--- a/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku3.dts
+++ /dev/null
@@ -1,32 +0,0 @@
-// SPDX-License-Identifier: (GPL-2.0 OR MIT)
-/*
- * Copyright 2024 Google LLC
- */
-/dts-v1/;
-#include "mt8188-geralt-ciri.dtsi"
-
-/ {
- model = "Google Ciri sku3 board";
- compatible = "google,ciri-sku3", "google,ciri", "mediatek,mt8188";
-};
-
-&dsi_panel {
- compatible = "ivo,t109nw41", "himax,hx83102";
-};
-
-&sound {
- compatible = "mediatek,mt8188-rt5682s";
- model = "mt8188_m98390_5682";
-
- audio-routing =
- "ETDM1_OUT", "ETDM_SPK_PIN",
- "ETDM2_OUT", "ETDM_HP_PIN",
- "ETDM1_IN", "ETDM_SPK_PIN",
- "ETDM2_IN", "ETDM_HP_PIN",
- "ADDA Capture", "MTKAIF_PIN",
- "Headphone Jack", "HPOL",
- "Headphone Jack", "HPOR",
- "IN1P", "Headset Mic",
- "Left Spk", "Front Left BE_OUT",
- "Right Spk", "Front Right BE_OUT";
-};
diff --git a/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku3.dtso b/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku3.dtso
new file mode 100644
index 000000000000..e6a6f8f06141
--- /dev/null
+++ b/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku3.dtso
@@ -0,0 +1,11 @@
+// SPDX-License-Identifier: (GPL-2.0 OR MIT)
+/*
+ * Copyright 2024 Google LLC
+ */
+/dts-v1/;
+/plugin/;
+
+&{/} {
+ model = "Google Ciri sku3 board";
+ compatible = "google,ciri-sku3", "google,ciri", "mediatek,mt8188";
+};
diff --git a/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku4.dts b/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku4.dts
deleted file mode 100644
index ea953d7e1543..000000000000
--- a/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku4.dts
+++ /dev/null
@@ -1,48 +0,0 @@
-// SPDX-License-Identifier: (GPL-2.0 OR MIT)
-/*
- * Copyright 2024 Google LLC
- */
-/dts-v1/;
-#include "mt8188-geralt-ciri.dtsi"
-
-/ {
- model = "Google Ciri sku4 board (rev4)";
- compatible = "google,ciri-sku4", "google,ciri", "mediatek,mt8188";
-};
-
-&dsi_panel {
- compatible = "boe,nv110wum-l60", "himax,hx83102";
-};
-
-&i2c0 {
- /delete-node/ amplifier@38;
- /delete-node/ amplifier@39;
-
- tas2563: amplifier@4f {
- compatible = "ti,tas2563", "ti,tas2781";
- reg = <0x4f>, <0x4c>; /* left / right channel */
- reset-gpios = <&pio 118 GPIO_ACTIVE_HIGH>;
- #sound-dai-cells = <0>;
- };
-};
-
-&sound {
- compatible = "mediatek,mt8188-rt5682s";
- model = "mt8188_tas2563_5682";
-
- audio-routing =
- "ETDM1_OUT", "ETDM_SPK_PIN",
- "ETDM2_OUT", "ETDM_HP_PIN",
- "ETDM1_IN", "ETDM_SPK_PIN",
- "ETDM2_IN", "ETDM_HP_PIN",
- "ADDA Capture", "MTKAIF_PIN",
- "Headphone Jack", "HPOL",
- "Headphone Jack", "HPOR",
- "IN1P", "Headset Mic";
-
- dai-link-1 {
- codec {
- sound-dai = <&tas2563>;
- };
- };
-};
diff --git a/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku4.dtso b/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku4.dtso
new file mode 100644
index 000000000000..ee5b28c4ef00
--- /dev/null
+++ b/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku4.dtso
@@ -0,0 +1,11 @@
+// SPDX-License-Identifier: (GPL-2.0 OR MIT)
+/*
+ * Copyright 2024 Google LLC
+ */
+/dts-v1/;
+/plugin/;
+
+&{/} {
+ model = "Google Ciri sku4 board (rev4)";
+ compatible = "google,ciri-sku4", "google,ciri", "mediatek,mt8188";
+};
diff --git a/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku5.dtso b/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku5.dtso
new file mode 100644
index 000000000000..ccf8d2f0eb70
--- /dev/null
+++ b/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku5.dtso
@@ -0,0 +1,11 @@
+// SPDX-License-Identifier: (GPL-2.0 OR MIT)
+/*
+ * Copyright 2024 Google LLC
+ */
+/dts-v1/;
+/plugin/;
+
+&{/} {
+ model = "Google Ciri sku5 board (rev4)";
+ compatible = "google,ciri-sku5", "google,ciri", "mediatek,mt8188";
+};
diff --git a/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku6.dtso b/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku6.dtso
new file mode 100644
index 000000000000..773c702b59d8
--- /dev/null
+++ b/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku6.dtso
@@ -0,0 +1,11 @@
+// SPDX-License-Identifier: (GPL-2.0 OR MIT)
+/*
+ * Copyright 2024 Google LLC
+ */
+/dts-v1/;
+/plugin/;
+
+&{/} {
+ model = "Google Ciri sku6 board (rev4)";
+ compatible = "google,ciri-sku6", "google,ciri", "mediatek,mt8188";
+};
diff --git a/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku7.dts b/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku7.dts
deleted file mode 100644
index 825015b452d5..000000000000
--- a/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku7.dts
+++ /dev/null
@@ -1,48 +0,0 @@
-// SPDX-License-Identifier: (GPL-2.0 OR MIT)
-/*
- * Copyright 2024 Google LLC
- */
-/dts-v1/;
-#include "mt8188-geralt-ciri.dtsi"
-
-/ {
- model = "Google Ciri sku7 board (rev4)";
- compatible = "google,ciri-sku7", "google,ciri", "mediatek,mt8188";
-};
-
-&dsi_panel {
- compatible = "ivo,t109nw41", "himax,hx83102";
-};
-
-&i2c0 {
- /delete-node/ amplifier@38;
- /delete-node/ amplifier@39;
-
- tas2563: amplifier@4f {
- compatible = "ti,tas2563", "ti,tas2781";
- reg = <0x4f>, <0x4c>; /* left / right channel */
- reset-gpios = <&pio 118 GPIO_ACTIVE_HIGH>;
- #sound-dai-cells = <0>;
- };
-};
-
-&sound {
- compatible = "mediatek,mt8188-rt5682s";
- model = "mt8188_tas2563_5682";
-
- audio-routing =
- "ETDM1_OUT", "ETDM_SPK_PIN",
- "ETDM2_OUT", "ETDM_HP_PIN",
- "ETDM1_IN", "ETDM_SPK_PIN",
- "ETDM2_IN", "ETDM_HP_PIN",
- "ADDA Capture", "MTKAIF_PIN",
- "Headphone Jack", "HPOL",
- "Headphone Jack", "HPOR",
- "IN1P", "Headset Mic";
-
- dai-link-1 {
- codec {
- sound-dai = <&tas2563>;
- };
- };
-};
diff --git a/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku7.dtso b/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku7.dtso
new file mode 100644
index 000000000000..c22860eab9f8
--- /dev/null
+++ b/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku7.dtso
@@ -0,0 +1,11 @@
+// SPDX-License-Identifier: (GPL-2.0 OR MIT)
+/*
+ * Copyright 2024 Google LLC
+ */
+/dts-v1/;
+/plugin/;
+
+&{/} {
+ model = "Google Ciri sku7 board (rev4)";
+ compatible = "google,ciri-sku7", "google,ciri", "mediatek,mt8188";
+};
diff --git a/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri.dtsi b/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri.dts
similarity index 81%
rename from arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri.dtsi
rename to arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri.dts
index 6815c435a57e..2c9e9e67c8e2 100644
--- a/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri.dtsi
+++ b/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri.dts
@@ -5,6 +5,11 @@
/dts-v1/;
#include "mt8188-geralt.dtsi"
+/ {
+ model = "Google Ciri board";
+ compatible = "google,ciri", "mediatek,mt8188";
+};
+
&aud_etdm_hp_on {
pins-mclk {
pinmux = <PINMUX_GPIO114__FUNC_O_I2SO2_MCK>;
@@ -19,40 +24,6 @@ pins-mclk {
};
};
-&i2c0 {
- rt5682s: audio-codec@1a {
- compatible = "realtek,rt5682s";
- reg = <0x1a>;
- interrupts-extended = <&pio 108 IRQ_TYPE_EDGE_BOTH>;
- pinctrl-names = "default";
- pinctrl-0 = <&audio_codec_pins>;
- #sound-dai-cells = <1>;
-
- AVDD-supply = <&mt6359_vio18_ldo_reg>;
- DBVDD-supply = <&mt6359_vio18_ldo_reg>;
- LDO1-IN-supply = <&mt6359_vio18_ldo_reg>;
- MICVDD-supply = <&pp3300_s3>;
- realtek,jd-src = <1>;
- };
-
- max98390_38: amplifier@38 {
- compatible = "maxim,max98390";
- reg = <0x38>;
- sound-name-prefix = "Front Right";
- reset-gpios = <&pio 118 GPIO_ACTIVE_LOW>;
- pinctrl-names = "default";
- pinctrl-0 = <&speaker_en>;
- #sound-dai-cells = <0>;
- };
-
- max98390_39: amplifier@39 {
- compatible = "maxim,max98390";
- reg = <0x39>;
- sound-name-prefix = "Front Left";
- #sound-dai-cells = <0>;
- };
-};
-
&i2c_tunnel {
/*
* The virtual battery I2C addr is 0xf on Ciri, so we describe it
@@ -77,6 +48,8 @@ &mt6359_vm18_ldo_reg {
};
&sound {
+ /* compatible, model, routing, and dai-link codecs added by overlays */
+
dai-link-0 {
link-name = "ETDM1_IN_BE";
dai-format = "i2s";
@@ -87,29 +60,16 @@ dai-link-1 {
link-name = "ETDM1_OUT_BE";
dai-format = "i2s";
mediatek,clk-provider = "cpu";
-
- codec {
- sound-dai = <&max98390_38>,
- <&max98390_39>;
- };
};
dai-link-2 {
link-name = "ETDM2_IN_BE";
mediatek,clk-provider = "cpu";
-
- codec {
- sound-dai = <&rt5682s 0>;
- };
};
dai-link-3 {
link-name = "ETDM2_OUT_BE";
mediatek,clk-provider = "cpu";
-
- codec {
- sound-dai = <&rt5682s 0>;
- };
};
dai-link-4 {
--
2.52.0.223.gf5cc29aaa4-goog
^ permalink raw reply related [flat|nested] 4+ messages in thread* [RFC PATCH 3/3] [EXAMPLE] arm64: dts: mediatek: ciri: Drop SKU-specific overlays
2025-12-08 7:33 [RFC PATCH 0/3] arm64: dts: mediatek: Split Ciri into overlays Chen-Yu Tsai
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 ` Chen-Yu Tsai
2 siblings, 0 replies; 4+ messages in thread
From: Chen-Yu Tsai @ 2025-12-08 7:33 UTC (permalink / raw)
To: Matthias Brugger, AngeloGioacchino Del Regno, Rob Herring,
Krzysztof Kozlowski, Conor Dooley
Cc: Chen-Yu Tsai, linux-mediatek, linux-arm-kernel, devicetree,
linux-kernel
The final SKU-specific overlays only set the top level board compatible
and model, but add nothing else. The specifics are not super important
to the kernel, and could be removed so we don't have to have so many
source files.
However, the ChromeOS bootloader (coreboot / depthcharge) selects the
device tree blob to load basd on the compatible string, so the mapping
from a SKU-specific compatible to a DTB (or a series of DTB/DTBOs) needs
to be maintained somewhere to build the FIT image.
Move the SKU-specific top level compatible strings to a separate file
stored with the device tree sources, and drop the SKU specific files.
Signed-off-by: Chen-Yu Tsai <wenst@chromium.org>
---
This is meant to serve as an example for dropping SKU-specific files
that just have specific identifiers that the kernel doesn't care about,
i.e. doesn't need to be present in the DTB itself, but need to be
preserved for other purposes.
---
arch/arm64/boot/dts/mediatek/Makefile | 24 +++------
.../dts/mediatek/mt8188-geralt-ciri-sku0.dtso | 11 ----
.../dts/mediatek/mt8188-geralt-ciri-sku1.dtso | 11 ----
.../dts/mediatek/mt8188-geralt-ciri-sku2.dtso | 11 ----
.../dts/mediatek/mt8188-geralt-ciri-sku3.dtso | 11 ----
.../dts/mediatek/mt8188-geralt-ciri-sku4.dtso | 11 ----
.../dts/mediatek/mt8188-geralt-ciri-sku5.dtso | 11 ----
.../dts/mediatek/mt8188-geralt-ciri-sku6.dtso | 11 ----
.../dts/mediatek/mt8188-geralt-ciri-sku7.dtso | 11 ----
arch/arm64/boot/dts/mediatek/mt8188.yaml | 51 +++++++++++++++++++
10 files changed, 59 insertions(+), 104 deletions(-)
delete mode 100644 arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku0.dtso
delete mode 100644 arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku1.dtso
delete mode 100644 arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku2.dtso
delete mode 100644 arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku3.dtso
delete mode 100644 arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku4.dtso
delete mode 100644 arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku5.dtso
delete mode 100644 arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku6.dtso
delete mode 100644 arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku7.dtso
create mode 100644 arch/arm64/boot/dts/mediatek/mt8188.yaml
diff --git a/arch/arm64/boot/dts/mediatek/Makefile b/arch/arm64/boot/dts/mediatek/Makefile
index 39a844386366..5123d15c62c1 100644
--- a/arch/arm64/boot/dts/mediatek/Makefile
+++ b/arch/arm64/boot/dts/mediatek/Makefile
@@ -89,36 +89,28 @@ dtb-$(CONFIG_ARCH_MEDIATEK) += mt8188-evb.dtb
mt8188-geralt-ciri-sku0-dtbs := mt8188-geralt-ciri.dtb \
mt8188-geralt-ciri-panel-boe.dtbo \
- mt8188-geralt-ciri-audio-max98390-rt5682s.dtbo \
- mt8188-geralt-ciri-sku0.dtbo
+ mt8188-geralt-ciri-audio-max98390-rt5682s.dtbo
mt8188-geralt-ciri-sku1-dtbs := mt8188-geralt-ciri.dtb \
mt8188-geralt-ciri-panel-ivo.dtbo \
- mt8188-geralt-ciri-audio-max98390-es8326.dtbo \
- mt8188-geralt-ciri-sku1.dtbo
+ mt8188-geralt-ciri-audio-max98390-es8326.dtbo
mt8188-geralt-ciri-sku2-dtbs := mt8188-geralt-ciri.dtb \
mt8188-geralt-ciri-panel-boe.dtbo \
- mt8188-geralt-ciri-audio-max98390-es8326.dtbo \
- mt8188-geralt-ciri-sku2.dtbo
+ mt8188-geralt-ciri-audio-max98390-es8326.dtbo
mt8188-geralt-ciri-sku3-dtbs := mt8188-geralt-ciri.dtb \
mt8188-geralt-ciri-panel-ivo.dtbo \
- mt8188-geralt-ciri-audio-max98390-rt5682s.dtbo \
- mt8188-geralt-ciri-sku3.dtbo
+ mt8188-geralt-ciri-audio-max98390-rt5682s.dtbo
mt8188-geralt-ciri-sku4-dtbs := mt8188-geralt-ciri.dtb \
mt8188-geralt-ciri-panel-boe.dtbo \
- mt8188-geralt-ciri-audio-tas2563-rt5682s.dtbo \
- mt8188-geralt-ciri-sku4.dtbo
+ mt8188-geralt-ciri-audio-tas2563-rt5682s.dtbo
mt8188-geralt-ciri-sku5-dtbs := mt8188-geralt-ciri.dtb \
mt8188-geralt-ciri-panel-ivo.dtbo \
- mt8188-geralt-ciri-audio-tas2563-es8326.dtbo \
- mt8188-geralt-ciri-sku5.dtbo
+ mt8188-geralt-ciri-audio-tas2563-es8326.dtbo
mt8188-geralt-ciri-sku6-dtbs := mt8188-geralt-ciri.dtb \
mt8188-geralt-ciri-panel-boe.dtbo \
- mt8188-geralt-ciri-audio-tas2563-es8326.dtbo \
- mt8188-geralt-ciri-sku6.dtbo
+ mt8188-geralt-ciri-audio-tas2563-es8326.dtbo
mt8188-geralt-ciri-sku7-dtbs := mt8188-geralt-ciri.dtb \
mt8188-geralt-ciri-panel-ivo.dtbo \
- mt8188-geralt-ciri-audio-tas2563-rt5682s.dtbo \
- mt8188-geralt-ciri-sku7.dtbo
+ mt8188-geralt-ciri-audio-tas2563-rt5682s.dtbo
dtb-$(CONFIG_ARCH_MEDIATEK) += mt8188-geralt-ciri-sku0.dtb
dtb-$(CONFIG_ARCH_MEDIATEK) += mt8188-geralt-ciri-sku1.dtb
diff --git a/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku0.dtso b/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku0.dtso
deleted file mode 100644
index 884a7b2d943c..000000000000
--- a/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku0.dtso
+++ /dev/null
@@ -1,11 +0,0 @@
-// SPDX-License-Identifier: (GPL-2.0 OR MIT)
-/*
- * Copyright 2023 Google LLC
- */
-/dts-v1/;
-/plugin/;
-
-&{/} {
- model = "Google Ciri sku0 board";
- compatible = "google,ciri-sku0", "google,ciri", "mediatek,mt8188";
-};
diff --git a/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku1.dtso b/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku1.dtso
deleted file mode 100644
index d3ed6ea535d7..000000000000
--- a/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku1.dtso
+++ /dev/null
@@ -1,11 +0,0 @@
-// SPDX-License-Identifier: (GPL-2.0 OR MIT)
-/*
- * Copyright 2023 Google LLC
- */
-/dts-v1/;
-/plugin/;
-
-&{/} {
- model = "Google Ciri sku1 board";
- compatible = "google,ciri-sku1", "google,ciri", "mediatek,mt8188";
-};
diff --git a/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku2.dtso b/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku2.dtso
deleted file mode 100644
index 3f9d38bc2ad2..000000000000
--- a/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku2.dtso
+++ /dev/null
@@ -1,11 +0,0 @@
-// SPDX-License-Identifier: (GPL-2.0 OR MIT)
-/*
- * Copyright 2024 Google LLC
- */
-/dts-v1/;
-/plugin/;
-
-&{/} {
- model = "Google Ciri sku2 board";
- compatible = "google,ciri-sku2", "google,ciri", "mediatek,mt8188";
-};
diff --git a/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku3.dtso b/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku3.dtso
deleted file mode 100644
index e6a6f8f06141..000000000000
--- a/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku3.dtso
+++ /dev/null
@@ -1,11 +0,0 @@
-// SPDX-License-Identifier: (GPL-2.0 OR MIT)
-/*
- * Copyright 2024 Google LLC
- */
-/dts-v1/;
-/plugin/;
-
-&{/} {
- model = "Google Ciri sku3 board";
- compatible = "google,ciri-sku3", "google,ciri", "mediatek,mt8188";
-};
diff --git a/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku4.dtso b/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku4.dtso
deleted file mode 100644
index ee5b28c4ef00..000000000000
--- a/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku4.dtso
+++ /dev/null
@@ -1,11 +0,0 @@
-// SPDX-License-Identifier: (GPL-2.0 OR MIT)
-/*
- * Copyright 2024 Google LLC
- */
-/dts-v1/;
-/plugin/;
-
-&{/} {
- model = "Google Ciri sku4 board (rev4)";
- compatible = "google,ciri-sku4", "google,ciri", "mediatek,mt8188";
-};
diff --git a/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku5.dtso b/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku5.dtso
deleted file mode 100644
index ccf8d2f0eb70..000000000000
--- a/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku5.dtso
+++ /dev/null
@@ -1,11 +0,0 @@
-// SPDX-License-Identifier: (GPL-2.0 OR MIT)
-/*
- * Copyright 2024 Google LLC
- */
-/dts-v1/;
-/plugin/;
-
-&{/} {
- model = "Google Ciri sku5 board (rev4)";
- compatible = "google,ciri-sku5", "google,ciri", "mediatek,mt8188";
-};
diff --git a/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku6.dtso b/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku6.dtso
deleted file mode 100644
index 773c702b59d8..000000000000
--- a/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku6.dtso
+++ /dev/null
@@ -1,11 +0,0 @@
-// SPDX-License-Identifier: (GPL-2.0 OR MIT)
-/*
- * Copyright 2024 Google LLC
- */
-/dts-v1/;
-/plugin/;
-
-&{/} {
- model = "Google Ciri sku6 board (rev4)";
- compatible = "google,ciri-sku6", "google,ciri", "mediatek,mt8188";
-};
diff --git a/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku7.dtso b/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku7.dtso
deleted file mode 100644
index c22860eab9f8..000000000000
--- a/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku7.dtso
+++ /dev/null
@@ -1,11 +0,0 @@
-// SPDX-License-Identifier: (GPL-2.0 OR MIT)
-/*
- * Copyright 2024 Google LLC
- */
-/dts-v1/;
-/plugin/;
-
-&{/} {
- model = "Google Ciri sku7 board (rev4)";
- compatible = "google,ciri-sku7", "google,ciri", "mediatek,mt8188";
-};
diff --git a/arch/arm64/boot/dts/mediatek/mt8188.yaml b/arch/arm64/boot/dts/mediatek/mt8188.yaml
new file mode 100644
index 000000000000..7808ae20060f
--- /dev/null
+++ b/arch/arm64/boot/dts/mediatek/mt8188.yaml
@@ -0,0 +1,51 @@
+# SPDX-License-Identifier: (GPL-2.0 OR MIT)
+%YAML 1.2
+---
+- dtb: mt8188-geralt-ciri-sku0.dtb
+ description: Google Ciri board SKU0
+ compatibles:
+ - google,ciri-sku0
+ - google,ciri
+ - mediatek,mt8188
+- dtb: mt8188-geralt-ciri-sku1.dtb
+ description: Google Ciri board SKU1
+ compatibles:
+ - google,ciri-sku1
+ - google,ciri
+ - mediatek,mt8188
+- dtb: mt8188-geralt-ciri-sku2.dtb
+ description: Google Ciri board SKU2
+ compatibles:
+ - google,ciri-sku2
+ - google,ciri
+ - mediatek,mt8188
+- dtb: mt8188-geralt-ciri-sku3.dtb
+ description: Google Ciri board SKU3
+ compatibles:
+ - google,ciri-sku3
+ - google,ciri
+ - mediatek,mt8188
+- dtb: mt8188-geralt-ciri-sku4.dtb
+ description: Google Ciri board SKU4
+ compatibles:
+ - google,ciri-sku4
+ - google,ciri
+ - mediatek,mt8188
+- dtb: mt8188-geralt-ciri-sku5.dtb
+ description: Google Ciri board SKU5
+ compatibles:
+ - google,ciri-sku5
+ - google,ciri
+ - mediatek,mt8188
+- dtb: mt8188-geralt-ciri-sku6.dtb
+ description: Google Ciri board SKU6
+ compatibles:
+ - google,ciri-sku6
+ - google,ciri
+ - mediatek,mt8188
+- dtb: mt8188-geralt-ciri-sku7.dtb
+ description: Google Ciri board SKU7
+ compatibles:
+ - google,ciri-sku7
+ - google,ciri
+ - mediatek,mt8188
--
2.52.0.223.gf5cc29aaa4-goog
^ permalink raw reply related [flat|nested] 4+ messages in thread