[PATCH 1/2] dt-bindings: embedded-controller: add Lenovo Yoga Slim 7x Gen 11 EC

From: Oleg Keri

Date: Tue Sep 08 2026 - 05:25:23 EST


Document the Compal embedded controller found on the Lenovo Yoga Slim 7x
Gen 11, a Qualcomm Snapdragon X2 Elite (glymur) laptop. It sits on I2C at
address 0x70 and is distinct from the Qualcomm reference EC that the
reference designs place at 0x76.

Signed-off-by: Oleg Keri <okerixx@xxxxxxxxx>
---
.../lenovo,yoga-slim7x-gen11-ec.yaml | 56 +++++++++++++++++++
MAINTAINERS | 8 +++
2 files changed, 64 insertions(+)
create mode 100644 Documentation/devicetree/bindings/embedded-controller/lenovo,yoga-slim7x-gen11-ec.yaml

diff --git a/Documentation/devicetree/bindings/embedded-controller/lenovo,yoga-slim7x-gen11-ec.yaml b/Documentation/devicetree/bindings/embedded-controller/lenovo,yoga-slim7x-gen11-ec.yaml
new file mode 100644
index 000000000000..37337de86b0b
--- /dev/null
+++ b/Documentation/devicetree/bindings/embedded-controller/lenovo,yoga-slim7x-gen11-ec.yaml
@@ -0,0 +1,56 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/embedded-controller/lenovo,yoga-slim7x-gen11-ec.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Lenovo Yoga Slim 7x Gen 11 Embedded Controller
+
+maintainers:
+ - Oleg Keri <okerixx@xxxxxxxxx>
+
+description:
+ The Lenovo Yoga Slim 7x Gen 11, a Qualcomm Snapdragon X2 Elite (glymur)
+ laptop, has a Compal embedded controller on I2C. It reports board
+ thermistors, battery cell voltages and CPU fan speed, and drives the
+ keyboard backlight.
+
+ This controller is not the Qualcomm reference EC that the Snapdragon
+ reference designs place at address 0x76; it speaks a different command
+ set and answers at 0x70.
+
+properties:
+ compatible:
+ const: lenovo,yoga-slim7x-gen11-ec
+
+ reg:
+ const: 0x70
+
+ interrupts:
+ maxItems: 1
+ description:
+ The controller pulses this line while it has events queued.
+
+required:
+ - compatible
+ - reg
+ - interrupts
+
+additionalProperties: false
+
+examples:
+ - |
+ #include <dt-bindings/interrupt-controller/irq.h>
+
+ i2c {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ embedded-controller@70 {
+ compatible = "lenovo,yoga-slim7x-gen11-ec";
+ reg = <0x70>;
+
+ interrupts-extended = <&tlmm 66 IRQ_TYPE_EDGE_FALLING>;
+ };
+ };
+...
diff --git a/MAINTAINERS b/MAINTAINERS
index 38612eca2987..e35679264e22 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -14882,6 +14882,14 @@ S: Maintained
F: Documentation/ABI/testing/sysfs-driver-lenovo-yb9-kbdock
F: drivers/platform/x86/lenovo/yb9-kbdock.c

+LENOVO YOGA SLIM 7X GEN 11 EMBEDDED CONTROLLER DRIVER
+M: Oleg Keri <okerixx@xxxxxxxxx>
+L: linux-arm-msm@xxxxxxxxxxxxxxx
+S: Maintained
+F: Documentation/ABI/testing/sysfs-driver-lenovo-yoga-slim7x-gen11-ec
+F: Documentation/devicetree/bindings/embedded-controller/lenovo,yoga-slim7x-gen11-ec.yaml
+F: drivers/platform/arm64/lenovo-yoga-slim7x-gen11-ec.c
+
LETSKETCH HID TABLET DRIVER
M: Hans de Goede <hansg@xxxxxxxxxx>
L: linux-input@xxxxxxxxxxxxxxx
--
2.55.0