mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-01-17 03:50:37 +00:00
Introduce EC driver for the ThinkPad T14s Gen6 Snapdragon, which is in theory compatible with ThinkPad ACPI. On Linux the system is booted with device tree, which is not supported by the ThinkPad ACPI driver (drivers/platform/x86/lenovo/thinkpad_acpi.c). Also most of the hardware compatibility is handled via ACPI tables, which are obviously not used when booting via device tree. Thus adding DT compatibility to the existing driver is not worth it as there is almost no code sharing. The driver currently exposes features, which are not available via other means: * Extra Keys * System LEDs * Keyboard Backlight Control The driver has been developed by reading the ACPI DSDT. There are some more features around thermal control, which are not yet supported by the driver. The speaker mute and mic mute LEDs need some additional changes in the ALSA UCM to be set automatically. Tested-by: Neil Armstrong <neil.armstrong@linaro.org> # on Thinkpad T14S OLED Reviewed-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org> Signed-off-by: Sebastian Reichel <sre@kernel.org> Link: https://patch.msgid.link/20250918-thinkpad-t14s-ec-v5-2-ac0bc6382c5c@collabora.com [ij: folded in patch from Chen Ni <nichen@iscas.ac.cn>] Link: https://patch.msgid.link/20250926091302.817919-1-nichen@iscas.ac.cn [ij: folded in patch from Lukas Bulwahn <lbulwahn@redhat.com>] Link: https://patch.msgid.link/20250926071859.138396-1-lukas.bulwahn@redhat.com Reviewed-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com> Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
94 lines
2.9 KiB
Plaintext
94 lines
2.9 KiB
Plaintext
# SPDX-License-Identifier: GPL-2.0-only
|
|
#
|
|
# EC-like Drivers for aarch64 based devices.
|
|
#
|
|
|
|
menuconfig ARM64_PLATFORM_DEVICES
|
|
bool "ARM64 Platform-Specific Device Drivers"
|
|
depends on ARM64 || COMPILE_TEST
|
|
default ARM64
|
|
help
|
|
Say Y here to get to see options for platform-specific device drivers
|
|
for arm64 based devices, primarily EC-like device drivers.
|
|
This option alone does not add any kernel code.
|
|
|
|
If you say N, all options in this submenu will be skipped and disabled.
|
|
|
|
if ARM64_PLATFORM_DEVICES
|
|
|
|
config EC_ACER_ASPIRE1
|
|
tristate "Acer Aspire 1 Embedded Controller driver"
|
|
depends on ARCH_QCOM || COMPILE_TEST
|
|
depends on I2C
|
|
depends on DRM
|
|
depends on POWER_SUPPLY
|
|
depends on INPUT
|
|
help
|
|
Say Y here to enable the EC driver for the (Snapdragon-based)
|
|
Acer Aspire 1 laptop. The EC handles battery and charging
|
|
monitoring as well as some misc functions like the lid sensor
|
|
and USB Type-C DP HPD events.
|
|
|
|
This driver provides battery and AC status support for the mentioned
|
|
laptop where this information is not properly exposed via the
|
|
standard ACPI devices.
|
|
|
|
config EC_HUAWEI_GAOKUN
|
|
tristate "Huawei Matebook E Go Embedded Controller driver"
|
|
depends on ARCH_QCOM || COMPILE_TEST
|
|
depends on I2C
|
|
depends on INPUT
|
|
depends on HWMON
|
|
select AUXILIARY_BUS
|
|
|
|
help
|
|
Say Y here to enable the EC driver for the Huawei Matebook E Go
|
|
which is a sc8280xp-based 2-in-1 tablet. The driver handles battery
|
|
(information, charge control) and USB Type-C DP HPD events as well
|
|
as some misc functions like the lid sensor and temperature sensors,
|
|
etc.
|
|
|
|
This driver provides battery and AC status support for the mentioned
|
|
laptop where this information is not properly exposed via the
|
|
standard ACPI devices.
|
|
|
|
Say M or Y here to include this support.
|
|
|
|
config EC_LENOVO_YOGA_C630
|
|
tristate "Lenovo Yoga C630 Embedded Controller driver"
|
|
depends on ARCH_QCOM || COMPILE_TEST
|
|
depends on I2C
|
|
select AUXILIARY_BUS
|
|
help
|
|
Driver for the Embedded Controller in the Qualcomm Snapdragon-based
|
|
Lenovo Yoga C630, which provides battery and power adapter
|
|
information.
|
|
|
|
This driver provides battery and AC status support for the mentioned
|
|
laptop where this information is not properly exposed via the
|
|
standard ACPI devices.
|
|
|
|
Say M or Y here to include this support.
|
|
|
|
config EC_LENOVO_THINKPAD_T14S
|
|
tristate "Lenovo Thinkpad T14s Embedded Controller driver"
|
|
depends on ARCH_QCOM || COMPILE_TEST
|
|
depends on I2C
|
|
depends on INPUT
|
|
select INPUT_SPARSEKMAP
|
|
select LEDS_CLASS
|
|
select NEW_LEDS
|
|
select SND_CTL_LED if SND
|
|
help
|
|
Driver for the Embedded Controller in the Qualcomm Snapdragon-based
|
|
Lenovo Thinkpad T14s, which provides access to keyboard backlight
|
|
and status LEDs.
|
|
|
|
This driver provides support for the mentioned laptop where this
|
|
information is not properly exposed via the standard Qualcomm
|
|
devices.
|
|
|
|
Say M or Y here to include this support.
|
|
|
|
endif # ARM64_PLATFORM_DEVICES
|