[PATCH v7 3/3] arm64: dts: qcom: x1e80100-dell-xps13-9345: introduce EC

From: Aleksandrs Vinarskis

Date: Sun Oct 25 2026 - 19:58:19 EST


Describe embedded controller, its interrupt and required thermal zones.
Add user-friendly labels for know thermal zones.

Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@xxxxxxxxxxxxxxxx>
Reviewed-by: Konrad Dybcio <konrad.dybcio@xxxxxxxxxxxxxxxx>
Reviewed-by: Abel Vesa <abel.vesa@xxxxxxxxxxxxxxxx>
Signed-off-by: Aleksandrs Vinarskis <alex@xxxxxxxxxxxxx>
---
.../boot/dts/qcom/x1e80100-dell-xps13-9345.dts | 65 +++++++++++++++++++++-
1 file changed, 63 insertions(+), 2 deletions(-)

diff --git a/arch/arm64/boot/dts/qcom/x1e80100-dell-xps13-9345.dts b/arch/arm64/boot/dts/qcom/x1e80100-dell-xps13-9345.dts
index f48e6bc35006..3f0c17c845b3 100644
--- a/arch/arm64/boot/dts/qcom/x1e80100-dell-xps13-9345.dts
+++ b/arch/arm64/boot/dts/qcom/x1e80100-dell-xps13-9345.dts
@@ -759,8 +759,32 @@ retimer_ss0_con_sbu_out: endpoint {

&i2c5 {
clock-frequency = <100000>;
- status = "disabled";
- /* EC @0x3b */
+ status = "okay";
+
+ embedded-controller@3b {
+ compatible = "dell,xps13-9345-ec";
+ reg = <0x3b>;
+
+ interrupts-extended = <&tlmm 66 IRQ_TYPE_LEVEL_LOW>;
+
+ pinctrl-0 = <&ec_int_n_default>;
+ pinctrl-names = "default";
+
+ io-channels = <&pmk8550_vadc ADC5_GEN3_AMUX1_GPIO_100K_PU(1)>,
+ <&pmk8550_vadc ADC5_GEN3_AMUX2_GPIO_100K_PU(1)>,
+ <&pmk8550_vadc ADC5_GEN3_AMUX1_THM_100K_PU(1)>,
+ <&pmk8550_vadc ADC5_GEN3_AMUX2_THM_100K_PU(1)>,
+ <&pmk8550_vadc ADC5_GEN3_AMUX3_THM_100K_PU(1)>,
+ <&pmk8550_vadc ADC5_GEN3_AMUX4_THM_100K_PU(1)>,
+ <&pmk8550_vadc ADC5_GEN3_AMUX5_THM_100K_PU(1)>;
+ io-channel-names = "sys_therm1",
+ "sys_therm2",
+ "sys_therm3",
+ "sys_therm4",
+ "sys_therm5",
+ "sys_therm6",
+ "sys_therm7";
+ };
};

&i2c7 {
@@ -1025,6 +1049,37 @@ rtmr0_1p8_reg_en: rtmr0-1p8-reg-en-state {
};
};

+&pmk8550_vadc {
+ channel@144 {
+ label = "vph_pwr_therm";
+ };
+
+ channel@145 {
+ label = "usb_charger_right_therm";
+ };
+
+ channel@146 {
+ label = "ssd_conn_therm";
+ };
+
+ channel@147 {
+ label = "vreg_rtmr0_1p8_therm";
+ };
+
+ channel@148 {
+ label = "keyboard_therm";
+ };
+
+ channel@14a {
+ label = "lpddr5_therm";
+ };
+
+ /* Between Left USB charging controller and SSD connector */
+ channel@14b {
+ label = "sys_therm2";
+ };
+};
+
&qupv3_0 {
status = "okay";
};
@@ -1103,6 +1158,12 @@ cam_indicator_en: cam-indicator-en-state {
bias-disable;
};

+ ec_int_n_default: ec-int-n-state {
+ pins = "gpio66";
+ function = "gpio";
+ bias-disable;
+ };
+
edp_bl_en: edp-bl-en-state {
pins = "gpio74";
function = "gpio";

--
2.54.0