On Fri, Oct 25, 2024 at 06:59:36PM +0800, Fei Shao wrote: > Introduce MT8188-based Chromebook Ciri, also known commercially as > Lenovo Chromebook Duet (11", 9). > > Ciri is a detachable device based on the Geralt design, where Geralt is > the codename for the MT8188 platform. Ciri offers 8 SKUs to accommodate > different combinations of second-source components, including: > - audio codecs (RT5682S and ES8326) > - speaker amps (TAS2563 and MAX98390) > - MIPI-DSI panels (BOE NV110WUM-L60 and IVO t109nw41) > > Signed-off-by: Fei Shao <fshao@xxxxxxxxxxxx> > --- > > arch/arm64/boot/dts/mediatek/Makefile | 8 + > .../dts/mediatek/mt8188-geralt-ciri-sku0.dts | 11 + > .../dts/mediatek/mt8188-geralt-ciri-sku1.dts | 63 + > .../dts/mediatek/mt8188-geralt-ciri-sku2.dts | 54 + > .../dts/mediatek/mt8188-geralt-ciri-sku3.dts | 20 + > .../dts/mediatek/mt8188-geralt-ciri-sku4.dts | 43 + > .../dts/mediatek/mt8188-geralt-ciri-sku5.dts | 76 + > .../dts/mediatek/mt8188-geralt-ciri-sku6.dts | 67 + > .../dts/mediatek/mt8188-geralt-ciri-sku7.dts | 52 + > .../boot/dts/mediatek/mt8188-geralt-ciri.dtsi | 413 +++++ > .../boot/dts/mediatek/mt8188-geralt.dtsi | 1497 +++++++++++++++++ > 11 files changed, 2304 insertions(+) > create mode 100644 arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku0.dts > create mode 100644 arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku1.dts > create mode 100644 arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku2.dts > create mode 100644 arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku3.dts > create mode 100644 arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku4.dts > create mode 100644 arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku5.dts > create mode 100644 arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku6.dts > create mode 100644 arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku7.dts > create mode 100644 arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri.dtsi > create mode 100644 arch/arm64/boot/dts/mediatek/mt8188-geralt.dtsi > > diff --git a/arch/arm64/boot/dts/mediatek/Makefile b/arch/arm64/boot/dts/mediatek/Makefile > index 8fd7b2bb7a15..c6c34d99316b 100644 > --- a/arch/arm64/boot/dts/mediatek/Makefile > +++ b/arch/arm64/boot/dts/mediatek/Makefile > @@ -69,6 +69,14 @@ dtb-$(CONFIG_ARCH_MEDIATEK) += mt8186-corsola-voltorb-sku589824.dtb > dtb-$(CONFIG_ARCH_MEDIATEK) += mt8186-corsola-voltorb-sku589825.dtb > dtb-$(CONFIG_ARCH_MEDIATEK) += mt8186-evb.dtb > dtb-$(CONFIG_ARCH_MEDIATEK) += mt8188-evb.dtb > +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 > +dtb-$(CONFIG_ARCH_MEDIATEK) += mt8188-geralt-ciri-sku3.dtb > +dtb-$(CONFIG_ARCH_MEDIATEK) += mt8188-geralt-ciri-sku4.dtb > +dtb-$(CONFIG_ARCH_MEDIATEK) += mt8188-geralt-ciri-sku5.dtb > +dtb-$(CONFIG_ARCH_MEDIATEK) += mt8188-geralt-ciri-sku6.dtb > +dtb-$(CONFIG_ARCH_MEDIATEK) += mt8188-geralt-ciri-sku7.dtb > dtb-$(CONFIG_ARCH_MEDIATEK) += mt8192-asurada-hayato-r1.dtb > dtb-$(CONFIG_ARCH_MEDIATEK) += mt8192-asurada-hayato-r5-sku2.dtb > dtb-$(CONFIG_ARCH_MEDIATEK) += mt8192-asurada-spherion-r0.dtb > diff --git a/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku0.dts b/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku0.dts > new file mode 100644 > index 000000000000..7a2edbaa74f1 > --- /dev/null > +++ b/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku0.dts > @@ -0,0 +1,11 @@ > +// 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"; > +}; > diff --git a/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku1.dts b/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku1.dts > new file mode 100644 > index 000000000000..53fdd5acaa3f > --- /dev/null > +++ b/arch/arm64/boot/dts/mediatek/mt8188-geralt-ciri-sku1.dts > @@ -0,0 +1,63 @@ > +// SPDX-License-Identifier: (GPL-2.0 OR MIT) > +/* > + * Copyright 2023 Google LLC > + */ > +/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"; > +}; > + > +&touchscreen { > + himax,pid = <0x1003>; Why do you add more of undocumented properties? > + firmware-name = "himax_i2chid_1003.bin"; > +}; > + > +&i2c0 { > + /delete-node/ audio-codec@1a; > + > + es8326: audio-codec@19 { > + compatible = "everest,es8326"; > + reg = <0x19>; > + interrupts-extended = <&pio 108 IRQ_TYPE_LEVEL_LOW>; > + #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"; > + status = "okay"; > + > + hs-capture-dai-link { Nope, that's not how DAI links are called. > + codec { > + sound-dai = <&es8326>; > + }; > + }; ... > +&i2c2 { > + status = "disabled"; > +}; > + > +&i2c_tunnel { > + /delete-node/ sbs-battery@b; > + > + battery: sbs-battery@f { > + compatible = "sbs,sbs-battery"; > + reg = <0xf>; > + sbs,i2c-retry-count = <2>; > + sbs,poll-retry-count = <1>; > + }; > +}; > + > +&max98390_38 { > + sound-name-prefix = "Front Right"; > + maxim,dsm_param_name = "dsm_param.bin"; NAK. Not a DT property. You cannot send us ACPI stuff. Go through internal review first, which should tell you that ACPI is not accepted into DT. There are just few exceptions and codecs do not qualify. Best regards, Krzysztof