devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/3] platform: arm64: thinkpad-t14s-ec: new driver
@ 2025-08-31 21:28 Sebastian Reichel
  2025-08-31 21:28 ` [PATCH 1/3] dt-bindings: platform: Add Lenovo Thinkpad T14s EC Sebastian Reichel
                   ` (4 more replies)
  0 siblings, 5 replies; 18+ messages in thread
From: Sebastian Reichel @ 2025-08-31 21:28 UTC (permalink / raw)
  To: Sebastian Reichel, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
	Hans de Goede, Ilpo Järvinen, Bryan O'Donoghue,
	Bjorn Andersson, Konrad Dybcio, Mark Pearson
  Cc: Derek J. Clark, Henrique de Moraes Holschuh, devicetree,
	linux-kernel, platform-driver-x86, linux-arm-msm

Introduce driver for the ThinkPad T14s Gen6 Snapdragon EC. In theory
it seems to be compatible with the ThinkPad ACPI driver, but these
devices are booted with device tree. As the name implies, the existing
ThinkPad ACPI driver only supports the ACPI interface. Looking at
the implementation, the ACPI DSDT contains many mapping functions
to translate the low level I2C messages into the interface used by
the ThinkPad ACPI driver. Adding DT support to the ThinkPad ACPI driver
would require adding all those translation functions, which would add
more or less the same amount of code as writing a separate driver using
the low level interface directly. I don't think it's sensible to make
the existing ACPI driver even more complicated, so I went for a separate
driver.

I managed to get system LEDs, audio LEDs, extra keys and the keyboard
backlight control working. The EC also seems to be used for some thermal
bits, which I haven't looked into deeply. As far as I understand most
thermal and fan control is handled by a different controller
(0x36@i2c5) anyways.

Apart from that the EC is involved in proper system suspend, which
is something I do not yet understand (I don't have any documentation
apart from the dis-assembled DSDT and existing ACPI driver). Right
now I disabled wake capabilities for the IRQ, since it would wake
up the system when closing the LID. Hopefully a way to mask specific
events will be found in the future.

Signed-off-by: Sebastian Reichel <sre@kernel.org>
---
Sebastian Reichel (3):
      dt-bindings: platform: Add Lenovo Thinkpad T14s EC
      platform: arm64: thinkpad-t14s-ec: new driver
      arm64: dts: qcom: x1e80100-t14s: add EC

 .../bindings/platform/lenovo,thinkpad-t14s-ec.yaml |  49 ++
 MAINTAINERS                                        |   6 +
 .../dts/qcom/x1e78100-lenovo-thinkpad-t14s.dtsi    |  23 +
 drivers/platform/arm64/Kconfig                     |  20 +
 drivers/platform/arm64/Makefile                    |   1 +
 drivers/platform/arm64/lenovo-thinkpad-t14s.c      | 597 +++++++++++++++++++++
 6 files changed, 696 insertions(+)
---
base-commit: c8bc81a52d5a2ac2e4b257ae123677cf94112755
change-id: 20250831-thinkpad-t14s-ec-ddeb23dbdafb

Best regards,
-- 
Sebastian Reichel <sebastian.reichel@collabora.com>


^ permalink raw reply	[flat|nested] 18+ messages in thread

end of thread, other threads:[~2025-09-02 22:58 UTC | newest]

Thread overview: 18+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-08-31 21:28 [PATCH 0/3] platform: arm64: thinkpad-t14s-ec: new driver Sebastian Reichel
2025-08-31 21:28 ` [PATCH 1/3] dt-bindings: platform: Add Lenovo Thinkpad T14s EC Sebastian Reichel
2025-08-31 23:53   ` Bryan O'Donoghue
2025-09-01  9:28   ` Krzysztof Kozlowski
2025-08-31 21:28 ` [PATCH 2/3] platform: arm64: thinkpad-t14s-ec: new driver Sebastian Reichel
2025-09-01  8:43   ` Bryan O'Donoghue
2025-09-01 15:20     ` Sebastian Reichel
2025-09-01 15:52       ` Bryan O'Donoghue
2025-09-01  9:51   ` Ilpo Järvinen
2025-09-01 13:48   ` Mark Pearson
2025-09-01 16:10     ` Sebastian Reichel
2025-09-01 16:23       ` Neil Armstrong
2025-09-02 10:27       ` Konrad Dybcio
2025-09-02 22:58         ` Sebastian Reichel
2025-08-31 21:28 ` [PATCH 3/3] arm64: dts: qcom: x1e80100-t14s: add EC Sebastian Reichel
2025-09-02 10:28   ` Konrad Dybcio
2025-09-01  9:03 ` [PATCH 0/3] platform: arm64: thinkpad-t14s-ec: new driver Neil Armstrong
2025-09-02 13:17 ` Rob Herring (Arm)

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).