* [PATCH v2 0/7] arm64: dts: qcom: Add 3 new devices
@ 2026-08-20 9:42 Adam Skladowski
2026-08-20 9:42 ` [PATCH v2 1/7] dt-bindings: vendor-prefixes: Add LeEco Adam Skladowski
` (6 more replies)
0 siblings, 7 replies; 16+ messages in thread
From: Adam Skladowski @ 2026-08-20 9:42 UTC (permalink / raw)
To: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
Conor Dooley, Kees Cook, Tony Luck, Guilherme G. Piccoli
Cc: linux-arm-msm, devicetree, linux-kernel, linux-hardening,
Adam Skladowski, Krzysztof Kozlowski
Introduce support for 3 new devices:
- Motorola Moto One based on MSM8953
- LeEco Le2 based on MSM8976
- Xiaomi Redmi 9T based on SM6115
Device trees besides enabling most of supported hardware also wires power to
subsystems like MDSS even if those are not enabled to lower maintenance burden
on out of tree forks.
Signed-off-by: Adam Skladowski <a39.skl@gmail.com>
---
Changes in v2:
- Adressed Sashiko-bot warnings
- Added Krzysztof's Acks
- Dropped confusing link from first vendor-prefix patch
- Removed ramoops nodes from Motorola and Leeco patches(now handled via lk2nd)
- Motorola One USB-C connector and FUSB302 is now fully wired and enabled
- Motorola One Touchscreen has been disabled due to panel power dependency
- Motorola One debug memory regions were removed
- Motorola One regulator setup values were ajusted
- Motorola One NFC now have more specific compatible
- All devices now have described reserved GPIOs and trimmed unused ones
- Leeco Le2 added missing pinctrls for peripheral IRQs
- Leeco Le2 OTG is no longer enabled as phy dependency is not enabled(need rework)
- Redmi 9T USB-C connector now is fully wired including pmi632 setup
- Redmi 9T nodes are sorted now
- Various changes to styling to keep nodes within single dts consistent
- Link to v1: https://patch.msgid.link/20260810-next-patches-v1-0-79a779d76173@gmail.com
To: Rob Herring <robh@kernel.org>
To: Krzysztof Kozlowski <krzk+dt@kernel.org>
To: Conor Dooley <conor+dt@kernel.org>
To: Bjorn Andersson <andersson@kernel.org>
To: Konrad Dybcio <konradybcio@kernel.org>
To: Kees Cook <kees@kernel.org>
To: Tony Luck <tony.luck@intel.com>
To: "Guilherme G. Piccoli" <gpiccoli@igalia.com>
Cc: devicetree@vger.kernel.org
Cc: linux-kernel@vger.kernel.org
Cc: linux-arm-msm@vger.kernel.org
---
Adam Skladowski (7):
dt-bindings: vendor-prefixes: Add LeEco
dt-bindings: arm: qcom: Document Motorola Moto One
arm64: dts: qcom: Add Motorola One
dt-bindings: arm: qcom: Document LeEco Le2
arm64: dts: qcom: Add LeEco Le2
dt-bindings: arm: qcom: Document Xiaomi Redmi 9T
arm64: dts: qcom: Add Xiaomi Redmi 9T
Documentation/devicetree/bindings/arm/qcom.yaml | 3 +
.../devicetree/bindings/vendor-prefixes.yaml | 2 +
arch/arm64/boot/dts/qcom/Makefile | 3 +
arch/arm64/boot/dts/qcom/msm8953-motorola-deen.dts | 460 +++++++++++++++++++
arch/arm64/boot/dts/qcom/msm8976-leeco-s2.dts | 435 ++++++++++++++++++
arch/arm64/boot/dts/qcom/sm6115-xiaomi-lemon.dts | 497 +++++++++++++++++++++
6 files changed, 1400 insertions(+)
---
base-commit: 6b8c8af514d739d0335f5579b585e02babe8a727
change-id: 20260810-next-patches-6ad6d10077a0
Best regards,
--
Adam Skladowski <a39.skl@gmail.com>
^ permalink raw reply [flat|nested] 16+ messages in thread
* [PATCH v2 1/7] dt-bindings: vendor-prefixes: Add LeEco
2026-08-20 9:42 [PATCH v2 0/7] arm64: dts: qcom: Add 3 new devices Adam Skladowski
@ 2026-08-20 9:42 ` Adam Skladowski
2026-08-20 9:42 ` [PATCH v2 2/7] dt-bindings: arm: qcom: Document Motorola Moto One Adam Skladowski
` (5 subsequent siblings)
6 siblings, 0 replies; 16+ messages in thread
From: Adam Skladowski @ 2026-08-20 9:42 UTC (permalink / raw)
To: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
Conor Dooley, Kees Cook, Tony Luck, Guilherme G. Piccoli
Cc: linux-arm-msm, devicetree, linux-kernel, linux-hardening,
Adam Skladowski
Add vendor prefix for now dead ecosystem company LeEco
Signed-off-by: Adam Skladowski <a39.skl@gmail.com>
---
Documentation/devicetree/bindings/vendor-prefixes.yaml | 2 ++
1 file changed, 2 insertions(+)
diff --git a/Documentation/devicetree/bindings/vendor-prefixes.yaml b/Documentation/devicetree/bindings/vendor-prefixes.yaml
index 136681412501..dd0762d3334b 100644
--- a/Documentation/devicetree/bindings/vendor-prefixes.yaml
+++ b/Documentation/devicetree/bindings/vendor-prefixes.yaml
@@ -947,6 +947,8 @@ patternProperties:
description: Shenzen LC Technology Co., Ltd.
"^leadtek,.*":
description: Shenzhen Leadtek Technology Co., Ltd.
+ "^leeco,.*":
+ description: Leshi Holding Beijing.
"^leez,.*":
description: Leez
"^lego,.*":
--
2.55.0
^ permalink raw reply related [flat|nested] 16+ messages in thread
* [PATCH v2 2/7] dt-bindings: arm: qcom: Document Motorola Moto One
2026-08-20 9:42 [PATCH v2 0/7] arm64: dts: qcom: Add 3 new devices Adam Skladowski
2026-08-20 9:42 ` [PATCH v2 1/7] dt-bindings: vendor-prefixes: Add LeEco Adam Skladowski
@ 2026-08-20 9:42 ` Adam Skladowski
2026-08-20 9:42 ` [PATCH v2 3/7] arm64: dts: qcom: Add Motorola One Adam Skladowski
` (4 subsequent siblings)
6 siblings, 0 replies; 16+ messages in thread
From: Adam Skladowski @ 2026-08-20 9:42 UTC (permalink / raw)
To: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
Conor Dooley, Kees Cook, Tony Luck, Guilherme G. Piccoli
Cc: linux-arm-msm, devicetree, linux-kernel, linux-hardening,
Adam Skladowski, Krzysztof Kozlowski
Add compatible for Motorola Moto One(deen) based on Snapdragon 625 SoC.
Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@oss.qualcomm.com>
Signed-off-by: Adam Skladowski <a39.skl@gmail.com>
---
Documentation/devicetree/bindings/arm/qcom.yaml | 1 +
1 file changed, 1 insertion(+)
diff --git a/Documentation/devicetree/bindings/arm/qcom.yaml b/Documentation/devicetree/bindings/arm/qcom.yaml
index ff8a35df7862..289a3de1d24b 100644
--- a/Documentation/devicetree/bindings/arm/qcom.yaml
+++ b/Documentation/devicetree/bindings/arm/qcom.yaml
@@ -292,6 +292,7 @@ properties:
- items:
- enum:
- flipkart,rimob
+ - motorola,deen
- motorola,potter
- xiaomi,daisy
- xiaomi,mido
--
2.55.0
^ permalink raw reply related [flat|nested] 16+ messages in thread
* [PATCH v2 3/7] arm64: dts: qcom: Add Motorola One
2026-08-20 9:42 [PATCH v2 0/7] arm64: dts: qcom: Add 3 new devices Adam Skladowski
2026-08-20 9:42 ` [PATCH v2 1/7] dt-bindings: vendor-prefixes: Add LeEco Adam Skladowski
2026-08-20 9:42 ` [PATCH v2 2/7] dt-bindings: arm: qcom: Document Motorola Moto One Adam Skladowski
@ 2026-08-20 9:42 ` Adam Skladowski
2026-08-20 9:56 ` sashiko-bot
2026-08-20 10:17 ` Konrad Dybcio
2026-08-20 9:42 ` [PATCH v2 4/7] dt-bindings: arm: qcom: Document LeEco Le2 Adam Skladowski
` (3 subsequent siblings)
6 siblings, 2 replies; 16+ messages in thread
From: Adam Skladowski @ 2026-08-20 9:42 UTC (permalink / raw)
To: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
Conor Dooley, Kees Cook, Tony Luck, Guilherme G. Piccoli
Cc: linux-arm-msm, devicetree, linux-kernel, linux-hardening,
Adam Skladowski
Add a devicetree for the Motorola One smartphone, which is based
on the Jacala/MSM8953 SoC.
Supported functionality as of this initial submission:
* I2C peripherals (Touchscreen,NFC)
* Power Button, Volume Keys
* Regulators (PM8953)
* Remoteprocs (ADSP, MPSS, WCNSS)
* USB
Device tree also contains supply maps to other subsystems like MDSS
but due to missing dependencies like panel those are disabled.
Signed-off-by: Adam Skladowski <a39.skl@gmail.com>
---
arch/arm64/boot/dts/qcom/Makefile | 1 +
arch/arm64/boot/dts/qcom/msm8953-motorola-deen.dts | 460 +++++++++++++++++++++
2 files changed, 461 insertions(+)
diff --git a/arch/arm64/boot/dts/qcom/Makefile b/arch/arm64/boot/dts/qcom/Makefile
index 1c86e7e98f55..11e953657691 100644
--- a/arch/arm64/boot/dts/qcom/Makefile
+++ b/arch/arm64/boot/dts/qcom/Makefile
@@ -120,6 +120,7 @@ dtb-$(CONFIG_ARCH_QCOM) += msm8939-sony-xperia-kanuti-tulip.dtb
dtb-$(CONFIG_ARCH_QCOM) += msm8939-wingtech-wt82918.dtb
dtb-$(CONFIG_ARCH_QCOM) += msm8939-wingtech-wt82918hd.dtb
dtb-$(CONFIG_ARCH_QCOM) += msm8953-flipkart-rimob.dtb
+dtb-$(CONFIG_ARCH_QCOM) += msm8953-motorola-deen.dtb
dtb-$(CONFIG_ARCH_QCOM) += msm8953-motorola-potter.dtb
dtb-$(CONFIG_ARCH_QCOM) += msm8953-xiaomi-daisy.dtb
dtb-$(CONFIG_ARCH_QCOM) += msm8953-xiaomi-mido.dtb
diff --git a/arch/arm64/boot/dts/qcom/msm8953-motorola-deen.dts b/arch/arm64/boot/dts/qcom/msm8953-motorola-deen.dts
new file mode 100644
index 000000000000..acb0b61b8f94
--- /dev/null
+++ b/arch/arm64/boot/dts/qcom/msm8953-motorola-deen.dts
@@ -0,0 +1,460 @@
+// SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause)
+/*
+ * Copyright (c) 2026 Adam Skladowski <a39skl@gmail.com>
+ */
+
+/dts-v1/;
+#include <dt-bindings/usb/pd.h>
+#include "msm8953.dtsi"
+#include "pm8953.dtsi"
+#include "pmi8950.dtsi"
+
+/delete-node/ &cont_splash_mem;
+/delete-node/ &qseecom_mem;
+
+/ {
+ model = "Motorola One";
+ compatible = "motorola,deen", "qcom,msm8953";
+ chassis-type = "handset";
+
+ gpio-keys {
+ compatible = "gpio-keys";
+
+ pinctrl-0 = <&gpio_key_default>;
+ pinctrl-names = "default";
+
+ key-volume-up {
+ label = "Volume Up";
+ gpios = <&tlmm 85 GPIO_ACTIVE_LOW>;
+ linux,code = <KEY_VOLUMEUP>;
+ };
+ };
+
+ reserved-memory {
+ qseecom_mem: qseecom@84300000 {
+ reg = <0x0 0x84300000 0x0 0x2000000>;
+ no-map;
+ };
+ };
+
+ vph_pwr: vph-pwr-regulator {
+ compatible = "regulator-fixed";
+ regulator-name = "vph_pwr";
+ regulator-always-on;
+ regulator-boot-on;
+ };
+
+ /* Fake VBUS 5V supply till we wire pmi8950 one */
+ fusb302_vbus: otg-vbus {
+ compatible = "regulator-fixed";
+ regulator-name = "otg-vbus";
+ regulator-min-microvolt = <5000000>;
+ regulator-max-microvolt = <5000000>;
+ regulator-always-on;
+ regulator-boot-on;
+ };
+};
+
+&hsusb_phy {
+ vdd-supply = <&pm8953_l3>;
+ vdda-phy-dpdm-supply = <&pm8953_l13>;
+ vdda-pll-supply = <&pm8953_l7>;
+
+ status = "okay";
+};
+
+&i2c_1 {
+ status = "okay";
+
+ typec-portc@22 {
+ compatible = "fcs,fusb302";
+ reg = <0x22>;
+ interrupts-extended = <&tlmm 9 IRQ_TYPE_LEVEL_LOW>;
+
+ pinctrl-names = "default";
+ pinctrl-0 = <&fusb302_int_default>;
+
+ usb-role-switch = <&usb3>;
+ vbus-supply = <&fusb302_vbus>;
+
+ connector {
+ compatible = "usb-c-connector";
+ label = "USB-C";
+ power-role = "dual";
+ data-role = "dual";
+ try-power-role = "sink";
+ typec-power-opmode = "default";
+ source-pdos = <PDO_FIXED(5000, 500,
+ PDO_FIXED_DUAL_ROLE |
+ PDO_FIXED_DATA_SWAP |
+ PDO_FIXED_USB_COMM)>;
+ sink-pdos = <PDO_FIXED(5000, 3000,
+ PDO_FIXED_DUAL_ROLE |
+ PDO_FIXED_DATA_SWAP |
+ PDO_FIXED_USB_COMM)>;
+ op-sink-microwatt = <2000000>;
+
+ port {
+ fusb302: endpoint {
+ remote-endpoint = <&usb_dwc3_hs>;
+ };
+ };
+ };
+ };
+};
+
+&i2c_2 {
+ status = "okay";
+};
+
+&i2c_3 {
+ status = "okay";
+
+ touchscreen@62 {
+ compatible = "novatek,nt36672a-ts";
+ reg = <0x62>;
+ interrupts-extended = <&tlmm 65 IRQ_TYPE_EDGE_RISING>;
+
+ reset-gpios = <&tlmm 64 GPIO_ACTIVE_HIGH>;
+ iovcc-supply = <&pm8953_l6>;
+ /* vcc-supply should follow lab from panel */
+
+ pinctrl-0 = <&ts_reset_default &ts_int_default>;
+ pinctrl-1 = <&ts_reset_sleep &ts_int_sleep>;
+ pinctrl-names = "default", "sleep";
+
+ touchscreen-size-x = <720>;
+ touchscreen-size-y = <1520>;
+
+ status = "disabled";
+ };
+};
+
+&i2c_5 {
+ status = "okay";
+
+ pn553: nfc@28 {
+ compatible = "nxp,pn553", "nxp,nxp-nci-i2c";
+ reg = <0x28>;
+ interrupts-extended = <&tlmm 17 IRQ_TYPE_LEVEL_HIGH>;
+
+ enable-gpios = <&tlmm 16 GPIO_ACTIVE_HIGH>;
+ firmware-gpios = <&tlmm 62 GPIO_ACTIVE_HIGH>;
+
+ pinctrl-0 = <&nfc_firm_default &nfc_irq_default &nfc_pwr_default>;
+ pinctrl-names = "default";
+ };
+};
+
+&ibb {
+ qcom,discharge-resistor-kohms = <32>;
+};
+
+&lpass {
+ status = "okay";
+};
+
+&mdss_dsi0 {
+ vdda-supply = <&pm8953_s3>;
+ vddio-supply = <&pm8953_l6>;
+};
+
+&mdss_dsi0_out {
+ data-lanes = <0 1 2 3>;
+};
+
+&mdss_dsi0_phy {
+ vcca-supply = <&pm8953_l3>;
+};
+
+&mpss {
+ pll-supply = <&pm8953_l7>;
+
+ status = "okay";
+};
+
+&pm8953_resin {
+ linux,code = <KEY_VOLUMEDOWN>;
+
+ status = "okay";
+};
+
+&pmi8950_wled {
+ qcom,current-limit-microamp = <25000>;
+ qcom,num-strings = <2>;
+
+ qcom,cabc;
+ qcom,external-pfet;
+};
+
+&q6afedai {
+ dai@22 {
+ reg = <QUATERNARY_MI2S_RX>;
+ qcom,sd-lines = <0>;
+ };
+
+ dai@127 {
+ reg = <QUINARY_MI2S_RX>;
+ qcom,sd-lines = <1>;
+ };
+};
+
+&rpm_requests {
+ regulators {
+ compatible = "qcom,rpm-pm8953-regulators";
+ vdd_s1-supply = <&vph_pwr>;
+ vdd_s2-supply = <&vph_pwr>;
+ vdd_s3-supply = <&vph_pwr>;
+ vdd_s4-supply = <&vph_pwr>;
+ vdd_s5-supply = <&vph_pwr>;
+ vdd_s6-supply = <&vph_pwr>;
+ vdd_s7-supply = <&vph_pwr>;
+ vdd_l1-supply = <&pm8953_s3>;
+ vdd_l2_l3-supply = <&pm8953_s3>;
+ vdd_l4_l5_l6_l7_l16_l19-supply = <&pm8953_s4>;
+ vdd_l8_l11_l12_l13_l14_l15-supply = <&vph_pwr>;
+ vdd_l9_l10_l17_l18_l22-supply = <&vph_pwr>;
+ vdd_l23-supply = <&pm8953_s3>;
+
+ pm8953_s1: s1 {
+ regulator-min-microvolt = <863000>;
+ regulator-max-microvolt = <1152000>;
+ };
+
+ pm8953_s3: s3 {
+ regulator-min-microvolt = <1224000>;
+ regulator-max-microvolt = <1224000>;
+ };
+
+ pm8953_s4: s4 {
+ regulator-min-microvolt = <1896000>;
+ regulator-max-microvolt = <2048000>;
+ };
+
+ pm8953_l1: l1 {
+ regulator-min-microvolt = <1000000>;
+ regulator-max-microvolt = <1100000>;
+ };
+
+ pm8953_l2: l2 {
+ regulator-min-microvolt = <1200000>;
+ regulator-max-microvolt = <1200000>;
+ };
+
+ pm8953_l3: l3 {
+ regulator-min-microvolt = <925000>;
+ regulator-max-microvolt = <925000>;
+ regulator-allow-set-load;
+ };
+
+ pm8953_l5: l5 {
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <1800000>;
+ };
+
+ pm8953_l6: l6 {
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <1800000>;
+ regulator-always-on;
+ };
+
+ pm8953_l7: l7 {
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <1900000>;
+ };
+
+ pm8953_l8: l8 {
+ regulator-min-microvolt = <2900000>;
+ regulator-max-microvolt = <2900000>;
+ };
+
+ pm8953_l9: l9 {
+ regulator-min-microvolt = <3000000>;
+ regulator-max-microvolt = <3300000>;
+ };
+
+ pm8953_l10: l10 {
+ regulator-min-microvolt = <2850000>;
+ regulator-max-microvolt = <2850000>;
+ };
+
+ pm8953_l11: l11 {
+ regulator-min-microvolt = <2950000>;
+ regulator-max-microvolt = <2950000>;
+ regulator-allow-set-load;
+ regulator-system-load = <200000>;
+ };
+
+ pm8953_l12: l12 {
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <3000000>;
+ };
+
+ pm8953_l13: l13 {
+ regulator-min-microvolt = <3075000>;
+ regulator-max-microvolt = <3125000>;
+ };
+
+ pm8953_l15: l15 {
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <1800000>;
+ };
+
+ pm8953_l16: l16 {
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <1800000>;
+ };
+
+ pm8953_l17: l17 {
+ regulator-min-microvolt = <2850000>;
+ regulator-max-microvolt = <2850000>;
+ };
+
+ pm8953_l19: l19 {
+ regulator-min-microvolt = <1200000>;
+ regulator-max-microvolt = <1350000>;
+ };
+
+ pm8953_l22: l22 {
+ regulator-min-microvolt = <2900000>;
+ regulator-max-microvolt = <2900000>;
+ };
+
+ pm8953_l23: l23 {
+ regulator-min-microvolt = <1200000>;
+ regulator-max-microvolt = <1200000>;
+ };
+ };
+};
+
+&sdhc_1 {
+ vmmc-supply = <&pm8953_l8>;
+ vqmmc-supply = <&pm8953_l5>;
+
+ status = "okay";
+};
+
+&sdhc_2 {
+ cd-gpios = <&tlmm 133 GPIO_ACTIVE_LOW>;
+
+ pinctrl-0 = <&sdc2_clk_on &sdc2_cmd_on &sdc2_data_on &sdc2_cd_off>;
+ pinctrl-1 = <&sdc2_clk_off &sdc2_cmd_off &sdc2_data_off &sdc2_cd_off>;
+ pinctrl-names = "default", "sleep";
+
+ vmmc-supply = <&pm8953_l11>;
+ vqmmc-supply = <&pm8953_l12>;
+
+ status = "okay";
+};
+
+&tlmm {
+ gpio-reserved-ranges = <96 4>; /* Fingerprint SPI */
+
+ disp_reset_n_active: disp-reset-n-active-state {
+ pins = "gpio61";
+ function = "gpio";
+ drive-strength = <8>;
+ bias-disable;
+ };
+
+ disp_reset_n_sleep: disp-reset-n-sleep-state {
+ pins = "gpio61";
+ function = "gpio";
+ drive-strength = <2>;
+ bias-pull-down;
+ };
+
+ fusb302_int_default: fusb302-int-default-state {
+ pins = "gpio9";
+ function = "gpio";
+ drive-strength = <2>;
+ bias-pull-up;
+ };
+
+ mi2s_sec_act: mi2s-quat-active-state {
+ pins = "gpio135", "gpio136", "gpio137", "gpio138";
+ function = "sec_mi2s";
+ drive-strength = <8>;
+ };
+
+ mi2s_sec_sus: mi2s-quat-sleep-state {
+ pins = "gpio135", "gpio136", "gpio137", "gpio138";
+ function = "sec_mi2s";
+ drive-strength = <2>;
+ bias-pull-down;
+ };
+
+ nfc_firm_default: nfc-firm-state {
+ pins = "gpio62";
+ function = "gpio";
+ bias-pull-down;
+ output-low;
+ drive-strength = <2>;
+ };
+
+ nfc_irq_default: nfc-irq-state {
+ pins = "gpio17";
+ function = "gpio";
+ bias-pull-down;
+ drive-strength = <2>;
+ };
+
+ nfc_pwr_default: nfc-pwr-state {
+ pins = "gpio16";
+ function = "gpio";
+ bias-pull-down;
+ output-low;
+ drive-strength = <2>;
+ };
+
+ ts_int_default: ts-int-default-state {
+ pins = "gpio65";
+ function = "gpio";
+ drive-strength = <8>;
+ bias-pull-up;
+ };
+
+ ts_int_sleep: ts-int-sleep-state {
+ pins = "gpio65";
+ function = "gpio";
+ drive-strength = <2>;
+ bias-pull-down;
+ };
+
+ ts_reset_default: ts-reset-default-state {
+ pins = "gpio64";
+ function = "gpio";
+ drive-strength = <8>;
+ bias-pull-up;
+ };
+
+ ts_reset_sleep: ts-reset-sleep-state {
+ pins = "gpio64";
+ function = "gpio";
+ drive-strength = <2>;
+ bias-pull-down;
+ };
+};
+
+&usb3 {
+ status = "okay";
+};
+
+&usb_dwc3_hs {
+ remote-endpoint = <&fusb302>;
+};
+
+&wcnss {
+ vddpx-supply = <&pm8953_l5>;
+
+ status = "okay";
+};
+
+&wcnss_iris {
+ compatible = "qcom,wcn3660b";
+
+ vdddig-supply = <&pm8953_l5>;
+ vddpa-supply = <&pm8953_l9>;
+ vddrfa-supply = <&pm8953_l19>;
+ vddxo-supply = <&pm8953_l7>;
+};
--
2.55.0
^ permalink raw reply related [flat|nested] 16+ messages in thread
* [PATCH v2 4/7] dt-bindings: arm: qcom: Document LeEco Le2
2026-08-20 9:42 [PATCH v2 0/7] arm64: dts: qcom: Add 3 new devices Adam Skladowski
` (2 preceding siblings ...)
2026-08-20 9:42 ` [PATCH v2 3/7] arm64: dts: qcom: Add Motorola One Adam Skladowski
@ 2026-08-20 9:42 ` Adam Skladowski
2026-08-20 9:42 ` [PATCH v2 5/7] arm64: dts: qcom: Add " Adam Skladowski
` (2 subsequent siblings)
6 siblings, 0 replies; 16+ messages in thread
From: Adam Skladowski @ 2026-08-20 9:42 UTC (permalink / raw)
To: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
Conor Dooley, Kees Cook, Tony Luck, Guilherme G. Piccoli
Cc: linux-arm-msm, devicetree, linux-kernel, linux-hardening,
Adam Skladowski, Krzysztof Kozlowski
Add compatible for LeEco Le2 codename s2 based on Snapdragon 652 SoC.
Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@oss.qualcomm.com>
Signed-off-by: Adam Skladowski <a39.skl@gmail.com>
---
Documentation/devicetree/bindings/arm/qcom.yaml | 1 +
1 file changed, 1 insertion(+)
diff --git a/Documentation/devicetree/bindings/arm/qcom.yaml b/Documentation/devicetree/bindings/arm/qcom.yaml
index 289a3de1d24b..68542f76df30 100644
--- a/Documentation/devicetree/bindings/arm/qcom.yaml
+++ b/Documentation/devicetree/bindings/arm/qcom.yaml
@@ -348,6 +348,7 @@ properties:
- items:
- enum:
+ - leeco,s2
- longcheer,l9360
- const: qcom,msm8976
--
2.55.0
^ permalink raw reply related [flat|nested] 16+ messages in thread
* [PATCH v2 5/7] arm64: dts: qcom: Add LeEco Le2
2026-08-20 9:42 [PATCH v2 0/7] arm64: dts: qcom: Add 3 new devices Adam Skladowski
` (3 preceding siblings ...)
2026-08-20 9:42 ` [PATCH v2 4/7] dt-bindings: arm: qcom: Document LeEco Le2 Adam Skladowski
@ 2026-08-20 9:42 ` Adam Skladowski
2026-08-20 9:59 ` sashiko-bot
2026-08-20 10:14 ` Konrad Dybcio
2026-08-20 9:42 ` [PATCH v2 6/7] dt-bindings: arm: qcom: Document Xiaomi Redmi 9T Adam Skladowski
2026-08-20 9:42 ` [PATCH v2 7/7] arm64: dts: qcom: Add " Adam Skladowski
6 siblings, 2 replies; 16+ messages in thread
From: Adam Skladowski @ 2026-08-20 9:42 UTC (permalink / raw)
To: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
Conor Dooley, Kees Cook, Tony Luck, Guilherme G. Piccoli
Cc: linux-arm-msm, devicetree, linux-kernel, linux-hardening,
Adam Skladowski
Add a devicetree for the LeEco Le2 smartphone, which is based
on the Eldarion/MSM8976 SoC.
Supported functionality as of this initial submission:
* I2C peripherals (Touchscreen,Audio amp, Haptics, Extcon, Led)
* Power Button, Volume Keys
* Regulators (PM8950)
* WLED (PMI8950)
* Remoteprocs (WCNSS)
* GPU
Device tree also contains supply maps to other subsystems like MDSS
but due to missing dependencies like panel those are disabled.
Signed-off-by: Adam Skladowski <a39.skl@gmail.com>
---
arch/arm64/boot/dts/qcom/Makefile | 1 +
arch/arm64/boot/dts/qcom/msm8976-leeco-s2.dts | 435 ++++++++++++++++++++++++++
2 files changed, 436 insertions(+)
diff --git a/arch/arm64/boot/dts/qcom/Makefile b/arch/arm64/boot/dts/qcom/Makefile
index 11e953657691..1487f2beff3d 100644
--- a/arch/arm64/boot/dts/qcom/Makefile
+++ b/arch/arm64/boot/dts/qcom/Makefile
@@ -128,6 +128,7 @@ dtb-$(CONFIG_ARCH_QCOM) += msm8953-xiaomi-tissot.dtb
dtb-$(CONFIG_ARCH_QCOM) += msm8953-xiaomi-vince.dtb
dtb-$(CONFIG_ARCH_QCOM) += msm8956-sony-xperia-loire-kugo.dtb
dtb-$(CONFIG_ARCH_QCOM) += msm8956-sony-xperia-loire-suzu.dtb
+dtb-$(CONFIG_ARCH_QCOM) += msm8976-leeco-s2.dtb
dtb-$(CONFIG_ARCH_QCOM) += msm8976-longcheer-l9360.dtb
dtb-$(CONFIG_ARCH_QCOM) += msm8992-lg-bullhead-rev-10.dtb
dtb-$(CONFIG_ARCH_QCOM) += msm8992-lg-bullhead-rev-101.dtb
diff --git a/arch/arm64/boot/dts/qcom/msm8976-leeco-s2.dts b/arch/arm64/boot/dts/qcom/msm8976-leeco-s2.dts
new file mode 100644
index 000000000000..acea087168af
--- /dev/null
+++ b/arch/arm64/boot/dts/qcom/msm8976-leeco-s2.dts
@@ -0,0 +1,435 @@
+// SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause)
+/*
+ * Copyright (c) 2026 Adam Skladowski <a39skl@gmail.com>
+ */
+
+/dts-v1/;
+
+#include "msm8976.dtsi"
+#include "pm8950.dtsi"
+#include "pm8004.dtsi"
+#include "pmi8950.dtsi"
+#include <dt-bindings/interrupt-controller/irq.h>
+#include <dt-bindings/gpio/gpio.h>
+#include <dt-bindings/input/gpio-keys.h>
+#include <dt-bindings/input/input.h>
+#include <dt-bindings/input/linux-event-codes.h>
+#include <dt-bindings/pinctrl/qcom,pmic-gpio.h>
+#include <dt-bindings/leds/common.h>
+#include <dt-bindings/input/ti-drv260x.h>
+
+/ {
+ model = "Leeco Le S2";
+ compatible = "leeco,s2", "qcom,msm8976";
+ chassis-type = "handset";
+
+ gpio_keys {
+ compatible = "gpio-keys";
+
+ pinctrl-0 = <&gpio_key_default>;
+ pinctrl-names = "default";
+
+ key-volume-up {
+ label = "Volume Up";
+ gpios = <&tlmm 113 GPIO_ACTIVE_LOW>;
+ linux,code = <KEY_VOLUMEUP>;
+ };
+ };
+
+ reserved-memory {
+ /delete-node/ ext-region@85b00000;
+
+ ext_region: memory@84a00000 {
+ reg = <0x0 0x84a00000 0x0 0x1900000>;
+ no-map;
+ };
+ };
+
+ vph_pwr: vph-pwr-regulator {
+ compatible = "regulator-fixed";
+ regulator-name = "vph_pwr";
+ regulator-always-on;
+ regulator-boot-on;
+ };
+};
+
+&adreno_gpu {
+ status = "okay";
+};
+
+&blsp1_i2c4 {
+ status = "okay";
+
+ touchscreen@4b {
+ compatible = "syna,rmi4-i2c";
+ reg = <0x4b>;
+ interrupts-extended = <&tlmm 65 IRQ_TYPE_EDGE_FALLING>;
+
+ pinctrl-0 = <&touch_default_state>;
+ pinctrl-names = "default";
+
+ reset-gpios = <&tlmm 64 GPIO_ACTIVE_HIGH>;
+
+ vdd-supply = <&pm8950_l17>;
+ vio-supply = <&pm8950_l6>;
+
+ syna,reset-delay-ms = <100>;
+ syna,startup-delay-ms = <500>;
+
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ rmi4-f01@1 {
+ reg = <0x01>;
+ syna,nosleep-mode = <1>;
+ };
+
+ rmi4-f12@12 {
+ reg = <0x12>;
+ syna,sensor-type = <1>;
+ syna,clip-x-low = <0>;
+ syna,clip-x-high = <1080>;
+ syna,clip-y-low = <0>;
+ syna,clip-y-high = <1920>;
+ };
+ };
+};
+
+&blsp2_i2c2 {
+ status = "okay";
+
+ haptics: haptics@5a {
+ compatible = "ti,drv2604";
+ reg = <0x5a>;
+ enable-gpios = <&tlmm 109 GPIO_ACTIVE_HIGH>;
+ mode = <DRV260X_LRA_MODE>;
+ library-sel = <DRV260X_LIB_LRA>;
+ };
+
+ tiusb320: typec@47 {
+ compatible = "ti,tusb320";
+ reg = <0x47>;
+ interrupts-extended = <&tlmm 21 IRQ_TYPE_EDGE_RISING>;
+
+ pinctrl-0 = <&tusb320_int_active>;
+ pinctrl-names = "default";
+ };
+};
+
+&blsp2_i2c4 {
+ status = "okay";
+
+ led-controller@45 {
+ compatible = "awinic,aw2013";
+ reg = <0x45>;
+ vcc-supply = <&pm8950_l10>;
+
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ led@0 {
+ reg = <0>;
+ led-max-microamp = <5000>;
+ function = LED_FUNCTION_INDICATOR;
+ color = <LED_COLOR_ID_RED>;
+ };
+
+ led@1 {
+ reg = <1>;
+ led-max-microamp = <5000>;
+ function = LED_FUNCTION_INDICATOR;
+ color = <LED_COLOR_ID_GREEN>;
+ };
+
+ led@2 {
+ reg = <2>;
+ led-max-microamp = <5000>;
+ function = LED_FUNCTION_INDICATOR;
+ color = <LED_COLOR_ID_BLUE>;
+ };
+ };
+
+ speaker_codec: audio-codec@34 {
+ compatible = "nxp,tfa9890";
+ reg = <0x34>;
+ vddd-supply = <&pm8950_l5>;
+ sound-name-prefix = "Speaker";
+ #sound-dai-cells = <0>;
+ };
+};
+
+&gcc {
+ vdd_gfx-supply = <&pm8004_s5>;
+};
+
+&mdss_dsi0 {
+ vdd-supply = <&pm8950_l17>;
+ vdda-supply = <&pm8950_l1>;
+ vddio-supply = <&pm8950_l6>;
+};
+
+&mdss_dsi0_out {
+ data-lanes = <0 1 2 3>;
+};
+
+&mdss_dsi0_phy {
+ vddio-supply = <&pm8950_l6>;
+};
+
+&otg {
+ extcon = <&tiusb320>;
+};
+
+&pm8004_lsid5 {
+ status = "okay";
+};
+
+&pm8004_spmi_regulators {
+ vdd_s2-supply = <&vph_pwr>;
+ vdd_s5-supply = <&vph_pwr>;
+
+ status = "okay";
+
+ /* Cluster 1 supply */
+ pm8004_s2: s2 {
+ regulator-name = "VDD_APC1";
+ regulator-min-microvolt = <950000>;
+ regulator-max-microvolt = <1165000>;
+ regulator-always-on;
+ regulator-boot-on;
+ };
+
+ pm8004_s5: s5 {
+ regulator-name = "VDD_GFX";
+ regulator-min-microvolt = <950000>;
+ regulator-max-microvolt = <1165000>;
+ regulator-enable-ramp-delay = <500>;
+ regulator-always-on;
+ };
+};
+
+&pm8950_spmi_regulators {
+ vdd_s5-supply = <&vph_pwr>;
+
+ /* Cluster 0 supply */
+ pm8950_spmi_s5: s5 {
+ regulator-min-microvolt = <950000>;
+ regulator-max-microvolt = <1165000>;
+ regulator-name = "VDD_APC0";
+ regulator-always-on;
+ regulator-boot-on;
+ };
+};
+
+&pmi8950_wled {
+ qcom,current-limit-microamp = <20000>;
+ qcom,enabled-strings = <0 1>;
+ qcom,ovp-millivolt = <29600>;
+};
+
+&rpm_requests {
+ regulators {
+ compatible = "qcom,rpm-pm8950-regulators";
+
+ vdd_s1-supply = <&vph_pwr>;
+ vdd_s2-supply = <&vph_pwr>;
+ vdd_s3-supply = <&vph_pwr>;
+ vdd_s4-supply = <&vph_pwr>;
+ vdd_s6-supply = <&vph_pwr>;
+ vdd_l1_l19-supply = <&pm8950_s3>;
+ vdd_l2_l23-supply = <&pm8950_s3>;
+ vdd_l3-supply = <&pm8950_s3>;
+ vdd_l5_l6_l7_l16-supply = <&pm8950_s4>;
+ vdd_l8_l11_l12_l17_l22-supply = <&vph_pwr>;
+
+ pm8950_s3: s3 {
+ regulator-min-microvolt = <1325000>;
+ regulator-max-microvolt = <1325000>;
+ };
+
+ pm8950_s4: s4 {
+ regulator-min-microvolt = <2050000>;
+ regulator-max-microvolt = <2050000>;
+ };
+
+ pm8950_l1: l1 {
+ regulator-min-microvolt = <1100000>;
+ regulator-max-microvolt = <1300000>;
+ };
+
+ pm8950_l2: l2 {
+ regulator-min-microvolt = <1200000>;
+ regulator-max-microvolt = <1200000>;
+ };
+
+ pm8950_l3: l3 {
+ regulator-min-microvolt = <1000000>;
+ regulator-max-microvolt = <1100000>;
+ };
+
+ pm8950_l5: l5 {
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <1800000>;
+ };
+
+ pm8950_l6: l6 {
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <1800000>;
+ };
+
+ pm8950_l7: l7 {
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <1900000>;
+ };
+
+ pm8950_l8: l8 {
+ regulator-min-microvolt = <2900000>;
+ regulator-max-microvolt = <2900000>;
+ };
+
+ pm8950_l9: l9 {
+ regulator-min-microvolt = <3000000>;
+ regulator-max-microvolt = <3300000>;
+ };
+
+ pm8950_l10: l10 {
+ regulator-min-microvolt = <2850000>;
+ regulator-max-microvolt = <2850000>;
+ };
+
+ pm8950_l11: l11 {
+ /* TUSB320 power supply */
+ regulator-always-on;
+ regulator-min-microvolt = <2950000>;
+ regulator-max-microvolt = <2950000>;
+ };
+
+ pm8950_l12: l12 {
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <2950000>;
+ };
+
+ pm8950_l13: l13 {
+ regulator-min-microvolt = <3075000>;
+ regulator-max-microvolt = <3075000>;
+ };
+
+ pm8950_l14: l14 {
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <3300000>;
+ };
+
+ pm8950_l15: l15 {
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <3300000>;
+ };
+
+ pm8950_l16: l16 {
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <1800000>;
+ };
+
+ pm8950_l17: l17 {
+ regulator-min-microvolt = <2500000>;
+ regulator-max-microvolt = <2900000>;
+ };
+
+ pm8950_l19: l19 {
+ regulator-min-microvolt = <1200000>;
+ regulator-max-microvolt = <1350000>;
+ };
+
+ pm8950_l22: l22 {
+ regulator-min-microvolt = <2800000>;
+ regulator-max-microvolt = <2800000>;
+ };
+
+ pm8950_l23: l23 {
+ regulator-min-microvolt = <1200000>;
+ regulator-max-microvolt = <1200000>;
+ };
+ };
+};
+
+&sdhc_1 {
+ vmmc-supply = <&pm8950_l8>;
+ vqmmc-supply = <&pm8950_l5>;
+
+ status = "okay";
+};
+
+&tlmm {
+ gpio-reserved-ranges = <0 4>, /* Unknown */
+ <8 4>; /* Fingerprint SPI */
+
+ disp_reset_n_active: disp-reset-n-active-state {
+ pins = "gpio25";
+ function = "gpio";
+ drive-strength = <8>;
+ bias-disable;
+ };
+
+ disp_reset_n_sleep: disp-reset-n-sleep-state {
+ pins = "gpio25";
+ function = "gpio";
+ drive-strength = <2>;
+ bias-pull-down;
+ };
+
+ disp_te_default: disp-te-default-state {
+ pins = "gpio24";
+ function = "mdp_vsync";
+ drive-strength = <2>;
+ bias-pull-down;
+ };
+
+ gpio_key_default: gpio-key-default-state {
+ pins = "gpio113";
+ function = "gpio";
+ drive-strength = <2>;
+ bias-pull-up;
+ };
+
+ touch_default_state: touch-default-state {
+ irq-pins {
+ pins = "gpio65";
+ function = "gpio";
+ drive-strength = <8>;
+ bias-pull-up;
+ };
+
+ reset-pins {
+ pins = "gpio64";
+ function = "gpio";
+ drive-strength = <8>;
+ bias-pull-up;
+ };
+ };
+
+ tusb320_int_active: tusb320-int-active-state {
+ pins = "gpio21";
+ function = "gpio";
+ drive-strength = <2>;
+ bias-disable;
+ };
+};
+
+&wcnss {
+ vddpx-supply = <&pm8950_l5>;
+
+ status = "okay";
+};
+
+&wcnss_iris {
+ compatible = "qcom,wcn3680";
+
+ vddxo-supply = <&pm8950_l7>;
+ vddrfa-supply = <&pm8950_l19>;
+ vddpa-supply = <&pm8950_l9>;
+ vdddig-supply = <&pm8950_l5>;
+};
+
+&xo_board {
+ clock-frequency = <19200000>;
+};
+
--
2.55.0
^ permalink raw reply related [flat|nested] 16+ messages in thread
* [PATCH v2 6/7] dt-bindings: arm: qcom: Document Xiaomi Redmi 9T
2026-08-20 9:42 [PATCH v2 0/7] arm64: dts: qcom: Add 3 new devices Adam Skladowski
` (4 preceding siblings ...)
2026-08-20 9:42 ` [PATCH v2 5/7] arm64: dts: qcom: Add " Adam Skladowski
@ 2026-08-20 9:42 ` Adam Skladowski
2026-08-20 9:42 ` [PATCH v2 7/7] arm64: dts: qcom: Add " Adam Skladowski
6 siblings, 0 replies; 16+ messages in thread
From: Adam Skladowski @ 2026-08-20 9:42 UTC (permalink / raw)
To: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
Conor Dooley, Kees Cook, Tony Luck, Guilherme G. Piccoli
Cc: linux-arm-msm, devicetree, linux-kernel, linux-hardening,
Adam Skladowski, Krzysztof Kozlowski
Add compatible for Xiaomi Redmi 9T NFC codename lemon which is one
of variants of Xiaomi Citrus lineup based on Snapdragon 662 SoC.
Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@oss.qualcomm.com>
Signed-off-by: Adam Skladowski <a39.skl@gmail.com>
---
Documentation/devicetree/bindings/arm/qcom.yaml | 1 +
1 file changed, 1 insertion(+)
diff --git a/Documentation/devicetree/bindings/arm/qcom.yaml b/Documentation/devicetree/bindings/arm/qcom.yaml
index 68542f76df30..5363efadd4ee 100644
--- a/Documentation/devicetree/bindings/arm/qcom.yaml
+++ b/Documentation/devicetree/bindings/arm/qcom.yaml
@@ -1035,6 +1035,7 @@ properties:
- items:
- enum:
- fxtec,pro1x
+ - xiaomi,lemon
- const: qcom,sm6115
- items:
--
2.55.0
^ permalink raw reply related [flat|nested] 16+ messages in thread
* [PATCH v2 7/7] arm64: dts: qcom: Add Xiaomi Redmi 9T
2026-08-20 9:42 [PATCH v2 0/7] arm64: dts: qcom: Add 3 new devices Adam Skladowski
` (5 preceding siblings ...)
2026-08-20 9:42 ` [PATCH v2 6/7] dt-bindings: arm: qcom: Document Xiaomi Redmi 9T Adam Skladowski
@ 2026-08-20 9:42 ` Adam Skladowski
2026-08-20 9:53 ` sashiko-bot
2026-08-20 10:14 ` Konrad Dybcio
6 siblings, 2 replies; 16+ messages in thread
From: Adam Skladowski @ 2026-08-20 9:42 UTC (permalink / raw)
To: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
Conor Dooley, Kees Cook, Tony Luck, Guilherme G. Piccoli
Cc: linux-arm-msm, devicetree, linux-kernel, linux-hardening,
Adam Skladowski
Add a devicetree for the Xiaomi Redmi 9T smartphone, which is based
on the Bengal/SM6115 SoC.
Supported functionality as of this initial submission:
* Display via SimpleFB/SimpleDRM
* GPU
* I2C peripherals (Backlight)
* Power Button, Volume Keys
* Regulators
* Remoteprocs (ADSP, CDSP, MPSS)
* UFS/SDCARD
* USB
Device tree also contains supply maps to other subsystems like MDSS
but due to missing dependencies like panel those are disabled.
Signed-off-by: Adam Skladowski <a39.skl@gmail.com>
---
arch/arm64/boot/dts/qcom/Makefile | 1 +
arch/arm64/boot/dts/qcom/sm6115-xiaomi-lemon.dts | 497 +++++++++++++++++++++++
2 files changed, 498 insertions(+)
diff --git a/arch/arm64/boot/dts/qcom/Makefile b/arch/arm64/boot/dts/qcom/Makefile
index 1487f2beff3d..6dee0a99fdc6 100644
--- a/arch/arm64/boot/dts/qcom/Makefile
+++ b/arch/arm64/boot/dts/qcom/Makefile
@@ -345,6 +345,7 @@ dtb-$(CONFIG_ARCH_QCOM) += sm4250-oneplus-billie2.dtb
dtb-$(CONFIG_ARCH_QCOM) += sm4450-qrd.dtb
dtb-$(CONFIG_ARCH_QCOM) += sm6115-fxtec-pro1x.dtb
dtb-$(CONFIG_ARCH_QCOM) += sm6115p-lenovo-j606f.dtb
+dtb-$(CONFIG_ARCH_QCOM) += sm6115-xiaomi-lemon.dtb
dtb-$(CONFIG_ARCH_QCOM) += sm6125-sony-xperia-seine-pdx201.dtb
dtb-$(CONFIG_ARCH_QCOM) += sm6125-xiaomi-ginkgo.dtb
dtb-$(CONFIG_ARCH_QCOM) += sm6125-xiaomi-laurel-sprout.dtb
diff --git a/arch/arm64/boot/dts/qcom/sm6115-xiaomi-lemon.dts b/arch/arm64/boot/dts/qcom/sm6115-xiaomi-lemon.dts
new file mode 100644
index 000000000000..99140971a38b
--- /dev/null
+++ b/arch/arm64/boot/dts/qcom/sm6115-xiaomi-lemon.dts
@@ -0,0 +1,497 @@
+// SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause)
+/*
+ * Copyright (c) 2026 Adam Skladowski <a39skl@gmail.com>
+ */
+
+/dts-v1/;
+
+#include "sm6115.dtsi"
+#include "pm6125.dtsi"
+#include "pmi632.dtsi"
+#include <dt-bindings/leds/common.h>
+
+/delete-node/ &pil_adsp_mem;
+/delete-node/ &pil_gpu_mem;
+/delete-node/ &pil_ipa_fw_mem;
+/delete-node/ &pil_ipa_gsi_mem;
+
+/ {
+ model = "Xiaomi Redmi 9T";
+ compatible = "xiaomi,lemon", "qcom,sm6115";
+ chassis-type = "handset";
+
+ aliases {
+ mmc0 = &sdhc_2;
+ };
+
+ chosen {
+ #address-cells = <2>;
+ #size-cells = <2>;
+ ranges;
+
+ framebuffer0: framebuffer@5c000000 {
+ compatible = "simple-framebuffer";
+ reg = <0 0x5c000000 0 (2340 * 1080 * 4)>;
+ width = <1080>;
+ height = <2340>;
+ stride = <(1080 * 4)>;
+ format = "a8r8g8b8";
+ clocks = <&gcc GCC_DISP_HF_AXI_CLK>;
+ };
+ };
+
+ backlight_dsi: backlight-dsi {
+ compatible = "led-backlight";
+ leds = <&led_backlight>;
+ brightness-levels = <255>;
+ default-brightness-level = <190>;
+ /* Backlight controllers can differ between panel variants */
+ status = "disabled";
+ };
+
+ gpio-keys {
+ compatible = "gpio-keys";
+
+ pinctrl-0 = <&vol_up_n>;
+ pinctrl-names = "default";
+
+ key-volume-up {
+ label = "Volume Up";
+ linux,code = <KEY_VOLUMEUP>;
+ gpios = <&pm6125_gpios 5 GPIO_ACTIVE_LOW>;
+ debounce-interval = <15>;
+ linux,can-disable;
+ wakeup-source;
+ };
+ };
+
+ reserved-memory {
+ pil_adsp_mem: memory@53400000 {
+ reg = <0x0 0x53400000 0x0 0x2600000>;
+ no-map;
+ };
+
+ pil_ipa_fw_mem: memory@55a00000 {
+ reg = <0x0 0x55a00000 0x0 0x10000>;
+ no-map;
+ };
+
+ pil_ipa_gsi_mem: memory@55a10000 {
+ reg = <0x0 0x55a10000 0x0 0x5000>;
+ no-map;
+ };
+
+ pil_gpu_mem: memory@fa400000 {
+ reg = <0x0 0xfa400000 0x0 0x2000>;
+ no-map;
+ };
+
+ ramoops: ramoops@64000000 {
+ compatible = "ramoops";
+ no-map;
+ reg = <0x0 0x64000000 0x0 0x400000>;
+ record-size = <0x100000>;
+ console-size = <0x100000>;
+ pmsg-size = <0x200000>;
+ ecc-size = <16>;
+ };
+ };
+
+ vph_pwr: vph-pwr-regulator {
+ compatible = "regulator-fixed";
+ regulator-name = "vph_pwr";
+ regulator-min-microvolt = <3700000>;
+ regulator-max-microvolt = <3700000>;
+
+ regulator-always-on;
+ regulator-boot-on;
+ };
+};
+
+&dispcc {
+ /* Prevent simplefb from dying until we wire panel driver */
+ status = "disabled";
+};
+
+&gpi_dma0 {
+ status = "okay";
+};
+
+&gpu {
+ status = "okay";
+};
+
+&i2c1 {
+ status = "okay";
+
+ lm36923_bl: led-controller@36 {
+ compatible = "ti,lm36923";
+ reg = <0x36>;
+
+ pinctrl-0 = <&lm3692x_bl_active>;
+ pinctrl-names = "default";
+
+ enable-gpios = <&tlmm 99 GPIO_ACTIVE_HIGH>;
+ ti,ovp-microvolt = <29000000>;
+ /* Backlight controllers can differ between panel variants */
+ status = "disabled";
+
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ led_backlight: led@0 {
+ reg = <0>;
+ function = LED_FUNCTION_BACKLIGHT;
+ color = <LED_COLOR_ID_WHITE>;
+ label = ":backlight";
+ linux,default-trigger = "backlight";
+ led-max-microamp = <25000>;
+ };
+ };
+};
+
+&mdss_dsi0 {
+ vdda-supply = <&pm6125_l18>;
+};
+
+&mdss_dsi0_out {
+ data-lanes = <0 1 2 3>;
+};
+
+&pil_cdsp_mem {
+ reg = <0x0 0x51a00000 0x0 0xa00000>;
+};
+
+&pm6125_gpios {
+ vol_up_n: vol-up-n-state {
+ pins = "gpio5";
+ function = "normal";
+ power-source = <0>;
+ bias-pull-up;
+ input-enable;
+ };
+};
+
+&pmi632_typec {
+ status = "okay";
+
+ connector {
+ compatible = "usb-c-connector";
+
+ power-role = "dual";
+ data-role = "dual";
+ self-powered;
+
+ typec-power-opmode = "default";
+ pd-disable;
+
+ vbus-supply = <&pmi632_vbus>;
+
+ ports {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ port@0 {
+ reg = <0>;
+ pmi632_hs_in: endpoint {
+ remote-endpoint = <&usb_dwc3_hs>;
+ };
+ };
+
+ port@1 {
+ reg = <1>;
+ pmi632_ss_in: endpoint {
+ remote-endpoint = <&usb_qmpphy_out>;
+ };
+ };
+ };
+ };
+};
+
+&pmi632_vbus {
+ regulator-min-microamp = <500000>;
+ regulator-max-microamp = <1000000>;
+
+ status = "okay";
+};
+
+&pon_pwrkey {
+ status = "okay";
+};
+
+&pon_resin {
+ linux,code = <KEY_VOLUMEDOWN>;
+
+ status = "okay";
+};
+
+&qupv3_id_0 {
+ status = "okay";
+};
+
+&remoteproc_adsp {
+ status = "okay";
+};
+
+&remoteproc_cdsp {
+ status = "okay";
+};
+
+&remoteproc_mpss {
+ status = "okay";
+};
+
+&rpm_requests {
+ regulators-0 {
+ compatible = "qcom,rpm-pm6125-regulators";
+
+ pm6125_s6: s6 {
+ regulator-min-microvolt = <304000>;
+ regulator-max-microvolt = <1456000>;
+ };
+
+ pm6125_s7: s7 {
+ regulator-min-microvolt = <1280000>;
+ regulator-max-microvolt = <2080000>;
+ };
+
+ pm6125_s8: s8 {
+ regulator-min-microvolt = <1064000>;
+ regulator-max-microvolt = <1304000>;
+ };
+
+ pm6125_l1: l1 {
+ regulator-min-microvolt = <952000>;
+ regulator-max-microvolt = <1152000>;
+ };
+
+ pm6125_l4: l4 {
+ regulator-min-microvolt = <488000>;
+ regulator-max-microvolt = <1000000>;
+ };
+
+ pm6125_l5: l5 {
+ regulator-min-microvolt = <1648000>;
+ regulator-max-microvolt = <2960000>;
+ regulator-allow-set-load;
+
+ regulator-always-on;
+ };
+
+ pm6125_l6: l6 {
+ regulator-min-microvolt = <576000>;
+ regulator-max-microvolt = <656000>;
+ };
+
+ pm6125_l7: l7 {
+ /* sdhci2 vdd-io-bias supply */
+ regulator-min-microvolt = <1256000>;
+ regulator-max-microvolt = <1256000>;
+
+ regulator-always-on;
+ };
+
+ pm6125_l8: l8 {
+ regulator-min-microvolt = <400000>;
+ regulator-max-microvolt = <728000>;
+ };
+
+ pm6125_l9: l9 {
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <2000000>;
+ };
+
+ pm6125_l10: l10 {
+ regulator-min-microvolt = <1704000>;
+ regulator-max-microvolt = <1904000>;
+ };
+
+ pm6125_l11: l11 {
+ regulator-min-microvolt = <1768000>;
+ regulator-max-microvolt = <1952000>;
+ };
+
+ pm6125_l12: l12 {
+ regulator-min-microvolt = <1624000>;
+ regulator-max-microvolt = <1984000>;
+ };
+
+ pm6125_l13: l13 {
+ regulator-min-microvolt = <1504000>;
+ regulator-max-microvolt = <1952000>;
+ };
+
+ pm6125_l14: l14 {
+ regulator-min-microvolt = <1704000>;
+ regulator-max-microvolt = <1904000>;
+ };
+
+ pm6125_l15: l15 {
+ regulator-min-microvolt = <2920000>;
+ regulator-max-microvolt = <3232000>;
+ };
+
+ pm6125_l16: l16 {
+ regulator-min-microvolt = <1704000>;
+ regulator-max-microvolt = <1904000>;
+ };
+
+ pm6125_l17: l17 {
+ regulator-min-microvolt = <1152000>;
+ regulator-max-microvolt = <1384000>;
+ };
+
+ pm6125_l18: l18 {
+ regulator-min-microvolt = <1232000>;
+ regulator-max-microvolt = <1232000>;
+ };
+
+ pm6125_l19: l19 {
+ regulator-min-microvolt = <1624000>;
+ regulator-max-microvolt = <3304000>;
+ };
+
+ pm6125_l20: l20 {
+ regulator-min-microvolt = <1624000>;
+ regulator-max-microvolt = <3304000>;
+ };
+
+ pm6125_l21: l21 {
+ regulator-min-microvolt = <2400000>;
+ regulator-max-microvolt = <3600000>;
+ };
+
+ pm6125_l22: l22 {
+ regulator-min-microvolt = <2952000>;
+ regulator-max-microvolt = <2960000>;
+ regulator-allow-set-load;
+
+ regulator-always-on;
+ };
+
+ pm6125_l23: l23 {
+ regulator-min-microvolt = <3200000>;
+ regulator-max-microvolt = <3400000>;
+ };
+
+ pm6125_l24: l24 {
+ regulator-min-microvolt = <2704000>;
+ regulator-max-microvolt = <3600000>;
+ };
+ };
+};
+
+&sdhc_2 {
+ cd-gpios = <&tlmm 88 GPIO_ACTIVE_HIGH>;
+
+ pinctrl-0 = <&sdc2_state_on>, <&sdc2_cd_on>;
+ pinctrl-1 = <&sdc2_state_off>, <&sdc2_cd_off>;
+ pinctrl-names = "default", "sleep";
+
+ vmmc-supply = <&pm6125_l22>;
+ vqmmc-supply = <&pm6125_l5>;
+ /* No binding for vdd-io-bias on L7*/
+ no-sdio;
+ no-mmc;
+
+ status = "okay";
+};
+
+&sleep_clk {
+ clock-frequency = <32764>;
+};
+
+&spi2 {
+ status = "okay";
+};
+
+&tlmm {
+ gpio-reserved-ranges = <14 4>; /* Fingerprint SPI */
+
+ lm3692x_bl_active: lm3692x-active-state {
+ pins = "gpio99";
+ function = "gpio";
+ drive-strength = <0x02>;
+ bias-pull-up;
+ };
+
+ mdss_dsi_active: mdss-dsi-active-state {
+ pins = "gpio85";
+ function = "gpio";
+ drive-strength = <8>;
+ bias-disable;
+ };
+
+ sdc2_cd_on: sdc2-cd-on-state {
+ pins = "gpio88";
+ function = "gpio";
+ drive-strength = <2>;
+ bias-pull-up;
+ };
+
+ sdc2_cd_off: sdc2-cd-off-state {
+ pins = "gpio88";
+ function = "gpio";
+ drive-strength = <2>;
+ bias-disable;
+ };
+
+ te_active: te-active-state {
+ pins = "gpio81";
+ function = "mdp_vsync";
+ drive-strength = <2>;
+ bias-pull-down;
+ };
+};
+
+&ufs_mem_hc {
+ vcc-max-microamp = <600000>;
+ vcc-supply = <&pm6125_l24>;
+ vccq2-max-microamp = <600000>;
+ vccq2-supply = <&pm6125_l11>;
+ vdd-hba-supply = <&pm6125_l18>;
+
+ status = "okay";
+};
+
+&ufs_mem_phy {
+ vdda-phy-supply = <&pm6125_l4>;
+ vdda-pll-supply = <&pm6125_l12>;
+
+ status = "okay";
+};
+
+&usb {
+ status = "okay";
+};
+
+&usb_dwc3 {
+ maximum-speed = "high-speed";
+};
+
+&usb_dwc3_hs {
+ remote-endpoint = <&pmi632_hs_in>;
+};
+
+&usb_hsphy {
+ vdd-supply = <&pm6125_l4>;
+ vdda-pll-supply = <&pm6125_l12>;
+ vdda-phy-dpdm-supply = <&pm6125_l15>;
+
+ status = "okay";
+};
+
+&usb_qmpphy {
+ vdda-phy-supply = <&pm6125_l4>;
+ vdda-pll-supply = <&pm6125_l12>;
+
+ status = "okay";
+};
+
+&usb_qmpphy_out {
+ remote-endpoint = <&pmi632_ss_in>;
+};
+
+&xo_board {
+ clock-frequency = <19200000>;
+};
--
2.55.0
^ permalink raw reply related [flat|nested] 16+ messages in thread
* Re: [PATCH v2 7/7] arm64: dts: qcom: Add Xiaomi Redmi 9T
2026-08-20 9:42 ` [PATCH v2 7/7] arm64: dts: qcom: Add " Adam Skladowski
@ 2026-08-20 9:53 ` sashiko-bot
2026-08-20 10:14 ` Konrad Dybcio
1 sibling, 0 replies; 16+ messages in thread
From: sashiko-bot @ 2026-08-20 9:53 UTC (permalink / raw)
To: Adam Skladowski; +Cc: conor+dt, devicetree, robh
Thank you for your contribution! Sashiko AI review found 1 potential issue(s) to consider:
- [Low] Invalid `brightness-levels` property in `led-backlight` triggers boot warning and is ignored.
--
--- Patch [7]: [PATCH v2 7/7] arm64: dts: qcom: Add Xiaomi Redmi 9T ---
commit 98a4b41cf18b5589a5dbba3f7c9d120fe90da54f
Author: Adam Skladowski <a39.skl@gmail.com>
arm64: dts: qcom: Add Xiaomi Redmi 9T
This commit adds a devicetree for the Xiaomi Redmi 9T smartphone, which is
based on the Bengal/SM6115 SoC. It introduces initial support for features
like display, GPU, regulators, UFS, USB, and remoteprocs.
> diff --git a/arch/arm64/boot/dts/qcom/sm6115-xiaomi-lemon.dts b/arch/arm64/boot/dts/qcom/sm6115-xiaomi-lemon.dts
> new file mode 100644
> --- /dev/null
> +++ b/arch/arm64/boot/dts/qcom/sm6115-xiaomi-lemon.dts
[ ... ]
> + backlight_dsi: backlight-dsi {
> + compatible = "led-backlight";
> + leds = <&led_backlight>;
> + brightness-levels = <255>;
[Severity: Low]
Does providing a single value to brightness-levels trigger a boot warning?
The led-backlight driver typically expects brightness-levels to be an array
of multiple values mapping an index to a brightness level. Providing a single
element causes the driver to emit a "Not enough levels defined" warning during
probe and ignores the property completely.
> + default-brightness-level = <190>;
> + /* Backlight controllers can differ between panel variants */
> + status = "disabled";
> + };
[ ... ]
--
Sashiko AI review · https://sashiko.dev/#/patchset/20260820-next-patches-v2-0-7130d68183d9@gmail.com?part=7
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [PATCH v2 3/7] arm64: dts: qcom: Add Motorola One
2026-08-20 9:42 ` [PATCH v2 3/7] arm64: dts: qcom: Add Motorola One Adam Skladowski
@ 2026-08-20 9:56 ` sashiko-bot
2026-08-20 10:17 ` Konrad Dybcio
1 sibling, 0 replies; 16+ messages in thread
From: sashiko-bot @ 2026-08-20 9:56 UTC (permalink / raw)
To: Adam Skladowski; +Cc: robh, devicetree, conor+dt
Thank you for your contribution! Sashiko AI review found 3 potential issue(s) to consider:
- [High] Touchscreen `reset-gpios` logic is inverted, which will hold the controller in reset during operation.
- [Medium] The touchscreen node is disabled, contradicting the commit message claim of supported functionality.
- [Low] The `usb-role-switch` property in the `fcs,fusb302` node is a DT schema violation and misdirected.
--
--- Patch [3]: [PATCH v2 3/7] arm64: dts: qcom: Add Motorola One ---
commit a01f938ee143a61f1aad41106fd89f197d7a249a
Author: Adam Skladowski <a39.skl@gmail.com>
arm64: dts: qcom: Add Motorola One
This commit adds a devicetree for the Motorola One smartphone based on the
Jacala/MSM8953 SoC. It introduces support for basic functionality including
I2C peripherals, physical buttons, regulators, remoteprocs, and USB.
> diff --git a/arch/arm64/boot/dts/qcom/msm8953-motorola-deen.dts b/arch/arm64/boot/dts/qcom/msm8953-motorola-deen.dts
> new file mode 100644
> index 0000000000000..acb0b61b8f947
> --- /dev/null
> +++ b/arch/arm64/boot/dts/qcom/msm8953-motorola-deen.dts
[ ... ]
> +&i2c_1 {
> + status = "okay";
> +
> + typec-portc@22 {
> + compatible = "fcs,fusb302";
> + reg = <0x22>;
> + interrupts-extended = <&tlmm 9 IRQ_TYPE_LEVEL_LOW>;
> +
> + pinctrl-names = "default";
> + pinctrl-0 = <&fusb302_int_default>;
> +
> + usb-role-switch = <&usb3>;
[Severity: Low]
Does this property violate the fcs,fusb302 device tree schema? The binding
strictly disallows additional properties like usb-role-switch.
Also, should this point to the DWC3 core node (&usb3_dwc3) instead of the
wrapper node (&usb3) where the role switch is actually registered?
> + vbus-supply = <&fusb302_vbus>;
[ ... ]
> +&i2c_3 {
> + status = "okay";
> +
> + touchscreen@62 {
> + compatible = "novatek,nt36672a-ts";
> + reg = <0x62>;
> + interrupts-extended = <&tlmm 65 IRQ_TYPE_EDGE_RISING>;
> +
> + reset-gpios = <&tlmm 64 GPIO_ACTIVE_HIGH>;
[Severity: High]
Will this hold the touchscreen controller in reset during operation?
During driver probe, the reset GPIO is requested with GPIOD_OUT_LOW to bring
the controller out of reset. If the hardware reset line is active-low,
defining it as GPIO_ACTIVE_HIGH here will cause the driver to incorrectly
drive the pin physically low and hold the controller in reset.
> + iovcc-supply = <&pm8953_l6>;
> + /* vcc-supply should follow lab from panel */
> +
> + pinctrl-0 = <&ts_reset_default &ts_int_default>;
> + pinctrl-1 = <&ts_reset_sleep &ts_int_sleep>;
> + pinctrl-names = "default", "sleep";
> +
> + touchscreen-size-x = <720>;
> + touchscreen-size-y = <1520>;
> +
> + status = "disabled";
[Severity: Medium]
The commit message explicitly lists the touchscreen as supported functionality
in this initial submission, but it is disabled here.
Should the commit message be updated to reflect that it remains disabled
due to missing dependencies?
> + };
> +};
--
Sashiko AI review · https://sashiko.dev/#/patchset/20260820-next-patches-v2-0-7130d68183d9@gmail.com?part=3
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [PATCH v2 5/7] arm64: dts: qcom: Add LeEco Le2
2026-08-20 9:42 ` [PATCH v2 5/7] arm64: dts: qcom: Add " Adam Skladowski
@ 2026-08-20 9:59 ` sashiko-bot
2026-08-20 10:14 ` Konrad Dybcio
1 sibling, 0 replies; 16+ messages in thread
From: sashiko-bot @ 2026-08-20 9:59 UTC (permalink / raw)
To: Adam Skladowski; +Cc: robh, conor+dt, devicetree
Thank you for your contribution! Sashiko AI review found 4 potential issue(s) to consider:
- [High] WLED backlight node is missing the 'status = "okay";' override, leaving it disabled.
- [Medium] Missing Volume Down key functionality despite commit message claiming support for 'Volume Keys'
- [Medium] TUSB320 interrupt is configured with incorrect rising edge polarity.
- [Low] Devicetree node name `gpio_keys` uses an underscore instead of a hyphen.
--
--- Patch [5]: [PATCH v2 5/7] arm64: dts: qcom: Add LeEco Le2 ---
commit 2faf39eef8c89160868ac706e9e8325f190da424
Author: Adam Skladowski <a39.skl@gmail.com>
arm64: dts: qcom: Add LeEco Le2
Add a devicetree for the LeEco Le2 smartphone, which is based on the
Eldarion/MSM8976 SoC. Supported functionality includes I2C peripherals, Power
Button, Volume Keys, Regulators, WLED, Remoteprocs, and GPU.
> diff --git a/arch/arm64/boot/dts/qcom/msm8976-leeco-s2.dts b/arch/arm64/boot/dts/qcom/msm8976-leeco-s2.dts
> new file mode 100644
> index 0000000000000..acea087168afe
> --- /dev/null
> +++ b/arch/arm64/boot/dts/qcom/msm8976-leeco-s2.dts
> @@ -0,0 +1,435 @@
> +// SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause)
> +/*
> + * Copyright (c) 2026 Adam Skladowski <a39skl@gmail.com>
> + */
[ ... ]
> +/ {
> + model = "Leeco Le S2";
> + compatible = "leeco,s2", "qcom,msm8976";
> + chassis-type = "handset";
> +
> + gpio_keys {
[Severity: Low]
This isn't a bug, but should this node name use a hyphen instead of an
underscore (gpio-keys) to conform to standard devicetree naming conventions?
> + compatible = "gpio-keys";
> +
> + pinctrl-0 = <&gpio_key_default>;
> + pinctrl-names = "default";
> +
> + key-volume-up {
> + label = "Volume Up";
> + gpios = <&tlmm 113 GPIO_ACTIVE_LOW>;
> + linux,code = <KEY_VOLUMEUP>;
> + };
> + };
[Severity: Medium]
The commit message mentions support for "Volume Keys", but only the Volume Up
key is defined here. Is the Volume Down key missing?
On PM8950 platforms, Volume Down is typically routed to the PMIC resin pin,
but pm8950_resin isn't overridden to status = "okay"; in this file. Will this
leave the Volume Down key non-functional?
[ ... ]
> +&blsp2_i2c2 {
> + status = "okay";
> +
> + haptics: haptics@5a {
[ ... ]
> + };
> +
> + tiusb320: typec@47 {
> + compatible = "ti,tusb320";
> + reg = <0x47>;
> + interrupts-extended = <&tlmm 21 IRQ_TYPE_EDGE_RISING>;
[Severity: Medium]
The INT_N pin of the TUSB320 is an active-low open-drain output. Should this
interrupt be configured as IRQ_TYPE_EDGE_FALLING or IRQ_TYPE_LEVEL_LOW instead
of IRQ_TYPE_EDGE_RISING?
As it is, the kernel might ignore the high-to-low transition when a cable is
plugged in.
> +
> + pinctrl-0 = <&tusb320_int_active>;
> + pinctrl-names = "default";
> + };
> +};
[ ... ]
> +&pm8950_spmi_regulators {
> + vdd_s5-supply = <&vph_pwr>;
> +
> + /* Cluster 0 supply */
> + pm8950_spmi_s5: s5 {
> + regulator-min-microvolt = <950000>;
> + regulator-max-microvolt = <1165000>;
> + regulator-name = "VDD_APC0";
> + regulator-always-on;
> + regulator-boot-on;
> + };
> +};
> +
> +&pmi8950_wled {
> + qcom,current-limit-microamp = <20000>;
> + qcom,enabled-strings = <0 1>;
> + qcom,ovp-millivolt = <29600>;
> +};
[Severity: High]
Is this node missing a status = "okay"; property?
The pmi8950-wled device defaults to disabled in pmi8950.dtsi. Without
explicitly enabling it here, will the display backlight fail to probe during
boot?
[ ... ]
--
Sashiko AI review · https://sashiko.dev/#/patchset/20260820-next-patches-v2-0-7130d68183d9@gmail.com?part=5
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [PATCH v2 7/7] arm64: dts: qcom: Add Xiaomi Redmi 9T
2026-08-20 9:42 ` [PATCH v2 7/7] arm64: dts: qcom: Add " Adam Skladowski
2026-08-20 9:53 ` sashiko-bot
@ 2026-08-20 10:14 ` Konrad Dybcio
1 sibling, 0 replies; 16+ messages in thread
From: Konrad Dybcio @ 2026-08-20 10:14 UTC (permalink / raw)
To: Adam Skladowski, Bjorn Andersson, Konrad Dybcio, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Kees Cook, Tony Luck,
Guilherme G. Piccoli
Cc: linux-arm-msm, devicetree, linux-kernel, linux-hardening
On 8/20/26 11:42 AM, Adam Skladowski wrote:
> Add a devicetree for the Xiaomi Redmi 9T smartphone, which is based
> on the Bengal/SM6115 SoC.
>
> Supported functionality as of this initial submission:
>
> * Display via SimpleFB/SimpleDRM
> * GPU
> * I2C peripherals (Backlight)
> * Power Button, Volume Keys
> * Regulators
> * Remoteprocs (ADSP, CDSP, MPSS)
> * UFS/SDCARD
> * USB
>
> Device tree also contains supply maps to other subsystems like MDSS
> but due to missing dependencies like panel those are disabled.
>
> Signed-off-by: Adam Skladowski <a39.skl@gmail.com>
> ---
Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Konrad
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [PATCH v2 5/7] arm64: dts: qcom: Add LeEco Le2
2026-08-20 9:42 ` [PATCH v2 5/7] arm64: dts: qcom: Add " Adam Skladowski
2026-08-20 9:59 ` sashiko-bot
@ 2026-08-20 10:14 ` Konrad Dybcio
1 sibling, 0 replies; 16+ messages in thread
From: Konrad Dybcio @ 2026-08-20 10:14 UTC (permalink / raw)
To: Adam Skladowski, Bjorn Andersson, Konrad Dybcio, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Kees Cook, Tony Luck,
Guilherme G. Piccoli
Cc: linux-arm-msm, devicetree, linux-kernel, linux-hardening
On 8/20/26 11:42 AM, Adam Skladowski wrote:
> Add a devicetree for the LeEco Le2 smartphone, which is based
> on the Eldarion/MSM8976 SoC.
>
> Supported functionality as of this initial submission:
> * I2C peripherals (Touchscreen,Audio amp, Haptics, Extcon, Led)
> * Power Button, Volume Keys
> * Regulators (PM8950)
> * WLED (PMI8950)
> * Remoteprocs (WCNSS)
> * GPU
>
> Device tree also contains supply maps to other subsystems like MDSS
> but due to missing dependencies like panel those are disabled.
>
> Signed-off-by: Adam Skladowski <a39.skl@gmail.com>
> ---
Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Konrad
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [PATCH v2 3/7] arm64: dts: qcom: Add Motorola One
2026-08-20 9:42 ` [PATCH v2 3/7] arm64: dts: qcom: Add Motorola One Adam Skladowski
2026-08-20 9:56 ` sashiko-bot
@ 2026-08-20 10:17 ` Konrad Dybcio
2026-08-20 15:24 ` Adam Skladowski
1 sibling, 1 reply; 16+ messages in thread
From: Konrad Dybcio @ 2026-08-20 10:17 UTC (permalink / raw)
To: Adam Skladowski, Bjorn Andersson, Konrad Dybcio, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Kees Cook, Tony Luck,
Guilherme G. Piccoli
Cc: linux-arm-msm, devicetree, linux-kernel, linux-hardening
On 8/20/26 11:42 AM, Adam Skladowski wrote:
> Add a devicetree for the Motorola One smartphone, which is based
> on the Jacala/MSM8953 SoC.
>
> Supported functionality as of this initial submission:
> * I2C peripherals (Touchscreen,NFC)
> * Power Button, Volume Keys
> * Regulators (PM8953)
> * Remoteprocs (ADSP, MPSS, WCNSS)
> * USB
>
> Device tree also contains supply maps to other subsystems like MDSS
> but due to missing dependencies like panel those are disabled.
>
> Signed-off-by: Adam Skladowski <a39.skl@gmail.com>
> ---
[...]
> + typec-portc@22 {
> + compatible = "fcs,fusb302";
> + reg = <0x22>;
> + interrupts-extended = <&tlmm 9 IRQ_TYPE_LEVEL_LOW>;
> +
> + pinctrl-names = "default";
> + pinctrl-0 = <&fusb302_int_default>;
nit: outlying sort
> +
> + usb-role-switch = <&usb3>;
> + vbus-supply = <&fusb302_vbus>;
> +
> + connector {
> + compatible = "usb-c-connector";
> + label = "USB-C";
> + power-role = "dual";
> + data-role = "dual";
> + try-power-role = "sink";
> + typec-power-opmode = "default";
> + source-pdos = <PDO_FIXED(5000, 500,
> + PDO_FIXED_DUAL_ROLE |
> + PDO_FIXED_DATA_SWAP |
> + PDO_FIXED_USB_COMM)>;
> + sink-pdos = <PDO_FIXED(5000, 3000,
> + PDO_FIXED_DUAL_ROLE |
> + PDO_FIXED_DATA_SWAP |
> + PDO_FIXED_USB_COMM)>;
> + op-sink-microwatt = <2000000>;
This is inconsistent with the sink-PDOs you defined (5 V 3 A vs 2 W)
Konrad
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [PATCH v2 3/7] arm64: dts: qcom: Add Motorola One
2026-08-20 10:17 ` Konrad Dybcio
@ 2026-08-20 15:24 ` Adam Skladowski
2026-08-20 15:56 ` Konrad Dybcio
0 siblings, 1 reply; 16+ messages in thread
From: Adam Skladowski @ 2026-08-20 15:24 UTC (permalink / raw)
To: Konrad Dybcio, Bjorn Andersson, Konrad Dybcio, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Kees Cook, Tony Luck,
Guilherme G. Piccoli
Cc: linux-arm-msm, devicetree, linux-kernel, linux-hardening
On 8/20/26 12:17, Konrad Dybcio wrote:
> On 8/20/26 11:42 AM, Adam Skladowski wrote:
>> Add a devicetree for the Motorola One smartphone, which is based
>> on the Jacala/MSM8953 SoC.
>>
>> Supported functionality as of this initial submission:
>> * I2C peripherals (Touchscreen,NFC)
>> * Power Button, Volume Keys
>> * Regulators (PM8953)
>> * Remoteprocs (ADSP, MPSS, WCNSS)
>> * USB
>>
>> Device tree also contains supply maps to other subsystems like MDSS
>> but due to missing dependencies like panel those are disabled.
>>
>> Signed-off-by: Adam Skladowski <a39.skl@gmail.com>
>> ---
>
>
> [...]
>
>> + typec-portc@22 {
>> + compatible = "fcs,fusb302";
>> + reg = <0x22>;
>> + interrupts-extended = <&tlmm 9 IRQ_TYPE_LEVEL_LOW>;
>> +
>> + pinctrl-names = "default";
>> + pinctrl-0 = <&fusb302_int_default>;
> nit: outlying sort
>
>
>> +
>> + usb-role-switch = <&usb3>;
>> + vbus-supply = <&fusb302_vbus>;
>> +
>> + connector {
>> + compatible = "usb-c-connector";
>> + label = "USB-C";
>> + power-role = "dual";
>> + data-role = "dual";
>> + try-power-role = "sink";
>> + typec-power-opmode = "default";
>> + source-pdos = <PDO_FIXED(5000, 500,
>> + PDO_FIXED_DUAL_ROLE |
>> + PDO_FIXED_DATA_SWAP |
>> + PDO_FIXED_USB_COMM)>;
>> + sink-pdos = <PDO_FIXED(5000, 3000,
>> + PDO_FIXED_DUAL_ROLE |
>> + PDO_FIXED_DATA_SWAP |
>> + PDO_FIXED_USB_COMM)>;
>> + op-sink-microwatt = <2000000>;
> This is inconsistent with the sink-PDOs you defined (5 V 3 A vs 2 W)
>
> Konrad
To be honest i don't get what's this about.
Based on docs it says its minimal W value taken by port
and based on PMI8950 Charger it should be about 100mA@5V
while SMB1351 can also take as low as 70mA@5V
I could see it being higher when port is used to power SBC or something.
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [PATCH v2 3/7] arm64: dts: qcom: Add Motorola One
2026-08-20 15:24 ` Adam Skladowski
@ 2026-08-20 15:56 ` Konrad Dybcio
0 siblings, 0 replies; 16+ messages in thread
From: Konrad Dybcio @ 2026-08-20 15:56 UTC (permalink / raw)
To: Adam Skladowski, Bjorn Andersson, Konrad Dybcio, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Kees Cook, Tony Luck,
Guilherme G. Piccoli
Cc: linux-arm-msm, devicetree, linux-kernel, linux-hardening
On 8/20/26 5:24 PM, Adam Skladowski wrote:
>
> On 8/20/26 12:17, Konrad Dybcio wrote:
>> On 8/20/26 11:42 AM, Adam Skladowski wrote:
>>> Add a devicetree for the Motorola One smartphone, which is based
>>> on the Jacala/MSM8953 SoC.
[...]
>>> + source-pdos = <PDO_FIXED(5000, 500,
>>> + PDO_FIXED_DUAL_ROLE |
>>> + PDO_FIXED_DATA_SWAP |
>>> + PDO_FIXED_USB_COMM)>;
>>> + sink-pdos = <PDO_FIXED(5000, 3000,
>>> + PDO_FIXED_DUAL_ROLE |
>>> + PDO_FIXED_DATA_SWAP |
>>> + PDO_FIXED_USB_COMM)>;
>>> + op-sink-microwatt = <2000000>;
>> This is inconsistent with the sink-PDOs you defined (5 V 3 A vs 2 W)
>>
>> Konrad
> To be honest i don't get what's this about.
> Based on docs it says its minimal W value taken by port
> and based on PMI8950 Charger it should be about 100mA@5V
> while SMB1351 can also take as low as 70mA@5V
> I could see it being higher when port is used to power SBC or something.
Ah sorry, I didn't read the docs and just guessed what this property
did..
Konrad
^ permalink raw reply [flat|nested] 16+ messages in thread
end of thread, other threads:[~2026-08-20 15:57 UTC | newest]
Thread overview: 16+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-08-20 9:42 [PATCH v2 0/7] arm64: dts: qcom: Add 3 new devices Adam Skladowski
2026-08-20 9:42 ` [PATCH v2 1/7] dt-bindings: vendor-prefixes: Add LeEco Adam Skladowski
2026-08-20 9:42 ` [PATCH v2 2/7] dt-bindings: arm: qcom: Document Motorola Moto One Adam Skladowski
2026-08-20 9:42 ` [PATCH v2 3/7] arm64: dts: qcom: Add Motorola One Adam Skladowski
2026-08-20 9:56 ` sashiko-bot
2026-08-20 10:17 ` Konrad Dybcio
2026-08-20 15:24 ` Adam Skladowski
2026-08-20 15:56 ` Konrad Dybcio
2026-08-20 9:42 ` [PATCH v2 4/7] dt-bindings: arm: qcom: Document LeEco Le2 Adam Skladowski
2026-08-20 9:42 ` [PATCH v2 5/7] arm64: dts: qcom: Add " Adam Skladowski
2026-08-20 9:59 ` sashiko-bot
2026-08-20 10:14 ` Konrad Dybcio
2026-08-20 9:42 ` [PATCH v2 6/7] dt-bindings: arm: qcom: Document Xiaomi Redmi 9T Adam Skladowski
2026-08-20 9:42 ` [PATCH v2 7/7] arm64: dts: qcom: Add " Adam Skladowski
2026-08-20 9:53 ` sashiko-bot
2026-08-20 10:14 ` Konrad Dybcio
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox