On 24-07-19 22:16:38, Konrad Dybcio wrote: > Add support for the aforementioned laptop. That includes: > > - input methods, incl. lid switch (keyboard needs the pdc > wakeup-parent removal hack..) > - NVMe, WiFi > - USB-C ports > - GPU, display > - DSPs > > Notably, the USB-A ports on the side are depenedent on the USB > multiport controller making it upstream. > > At least one of the eDP panels used (non-touchscreen) identifies as > BOE 0x0b66. > > See below for the hardware description from the OEM. > > Link: https://www.lenovo.com/us/en/p/laptops/thinkpad/thinkpadt/lenovo-thinkpad-t14s-gen-6-(14-inch-snapdragon)/len101t0099 > Signed-off-by: Konrad Dybcio <konrad.dybcio@xxxxxxxxxx> Few comments below. Otherwise, LGTM. Reviewed-by: Abel Vesa <abel.vesa@xxxxxxxxxx> > --- > arch/arm64/boot/dts/qcom/Makefile | 1 + > .../dts/qcom/x1e78100-lenovo-thinkpad-t14s.dts | 792 +++++++++++++++++++++ > 2 files changed, 793 insertions(+) > > diff --git a/arch/arm64/boot/dts/qcom/Makefile b/arch/arm64/boot/dts/qcom/Makefile > index 0e5c810304fb..734a05e04c4a 100644 > --- a/arch/arm64/boot/dts/qcom/Makefile > +++ b/arch/arm64/boot/dts/qcom/Makefile > @@ -261,6 +261,7 @@ dtb-$(CONFIG_ARCH_QCOM) += sm8650-hdk-display-card.dtb > dtb-$(CONFIG_ARCH_QCOM) += sm8650-hdk.dtb > dtb-$(CONFIG_ARCH_QCOM) += sm8650-mtp.dtb > dtb-$(CONFIG_ARCH_QCOM) += sm8650-qrd.dtb > +dtb-$(CONFIG_ARCH_QCOM) += x1e78100-lenovo-thinkpad-t14s.dtb > dtb-$(CONFIG_ARCH_QCOM) += x1e80100-asus-vivobook-s15.dtb > dtb-$(CONFIG_ARCH_QCOM) += x1e80100-crd.dtb > dtb-$(CONFIG_ARCH_QCOM) += x1e80100-lenovo-yoga-slim7x.dtb > diff --git a/arch/arm64/boot/dts/qcom/x1e78100-lenovo-thinkpad-t14s.dts b/arch/arm64/boot/dts/qcom/x1e78100-lenovo-thinkpad-t14s.dts So what happens for SKUs of this model wil have x1e80100 ? Maybe we should stick to x1e80100 ? > new file mode 100644 > index 000000000000..b12953267505 > --- /dev/null > +++ b/arch/arm64/boot/dts/qcom/x1e78100-lenovo-thinkpad-t14s.dts > @@ -0,0 +1,792 @@ > +// SPDX-License-Identifier: BSD-3-Clause > +/* > + * Copyright (c) 2023 Qualcomm Innovation Center, Inc. All rights reserved. > + * Copyright (c) 2024, Linaro Limited > + */ > + > +/dts-v1/; > + > +#include <dt-bindings/gpio/gpio.h> > +#include <dt-bindings/input/gpio-keys.h> > +#include <dt-bindings/input/input.h> > +#include <dt-bindings/regulator/qcom,rpmh-regulator.h> > + > +#include "x1e80100.dtsi" > +#include "x1e80100-pmics.dtsi" > + > +/ { > + model = "Lenovo ThinkPad T14s Gen 6"; > + compatible = "lenovo,thinkpad-t14s", "qcom,x1e78100", "qcom,x1e80100"; > + > + aliases { > + serial0 = &uart21; > + }; > + > + chosen { > + stdout-path = "serial0:115200n8"; > + }; > + [...] > + > + vreg_edp_3p3: regulator-edp-3p3 { > + compatible = "regulator-fixed"; > + > + regulator-name = "VREG_EDP_3P3"; > + regulator-min-microvolt = <3300000>; > + regulator-max-microvolt = <3300000>; > + > + gpio = <&tlmm 70 GPIO_ACTIVE_HIGH>; > + enable-active-high; > + > + pinctrl-0 = <&edp_reg_en>; > + pinctrl-names = "default"; > + > + regulator-always-on; Drop this. > + regulator-boot-on; > + }; > + [...] > + > +&tlmm { > + gpio-reserved-ranges = <34 2>, /* Unused */ > + <44 4>, /* SPI (TPM) */ > + <72 2>, /* Secure EC I2C connection (?) */ > + <238 1>; /* UFS Reset */ > + > + tpad_default: tpad-default-state { > + pins = "gpio3"; > + function = "gpio"; > + bias-pull-up; > + }; > + > + nvme_reg_en: nvme-reg-en-state { > + pins = "gpio18"; > + function = "gpio"; > + drive-strength = <2>; > + bias-disable; > + }; > + > + ts0_default: ts0-default-state { > + reset-n-pins { > + pins = "gpio48"; > + function = "gpio"; > + output-high; > + drive-strength = <16>; > + }; > + > + int-n-pins { > + pins = "gpio51"; > + function = "gpio"; > + bias-disable; > + }; > + }; > + > + kybd_default: kybd-default-state { > + pins = "gpio67"; > + function = "gpio"; > + bias-disable; > + }; > + > + edp_reg_en: edp-reg-en-state { > + pins = "gpio70"; > + function = "gpio"; > + drive-strength = <16>; > + bias-pull-up; bias-disable, maybe ? > + }; > + > + hall_int_n_default: hall-int-n-state { > + pins = "gpio92"; > + function = "gpio"; > + bias-disable; > + }; > + [...] > > -- > 2.45.2 >