Skip to content

Commit b664517

Browse files
committed
Merge tag 'platform-drivers-x86-v6.18-1' of git://git.kernel.org/pub/scm/linux/kernel/git/pdx86/platform-drivers-x86
Pull x86 platform driver updates from Ilpo Järvinen: - amd/pmf: - Add support for adjusting PMF PPT and PPT APU thresholds - Extend custom BIOS inputs for more policies - Update ta_pmf_action structure to the latest PMF TA - arm64: - thinkpad-t14s-ec: Add EC driver for ThinkPad T14s Gen6 Snapdragon - int3472: - Increase handshake GPIO delay - intel/pmc: - SSRAM support for Lunar Lake and Panther Lake - Support reading substate requirements data from S0ix blockers (for platforms starting from Panther Lake) - Wildcat Lake support - intel-uncore-freq: - Solve duplicate sysfs entry warnings - Present unique domain ID per package - portwell-ec: - Support suspend/resume - Add hwmon support for voltage and temperature - redmi-wmi: - Add WMI driver for Redmibook keyboard - think-lmi: - Certificate support for ThinkCenter - x86-android-tables + others: - Convert away from legacy GPIO APIs - x86-android-tables: - Add support for Acer A1-840 tablet - Fix modules list for Lenovo devices - Stop using EPROBE_DEFER - Miscellaneous cleanups / refactoring / improvements * tag 'platform-drivers-x86-v6.18-1' of git://git.kernel.org/pub/scm/linux/kernel/git/pdx86/platform-drivers-x86: (63 commits) platform/x86: pcengines-apuv2: Use static device properties platform/x86: meraki-mx100: Use static device properties platform/x86: barco-p50-gpio: use software nodes for gpio-leds/keys platform/x86: x86-android-tablets: Stop using EPROBE_DEFER platform/x86: x86-android-tablets: Fix modules lists for Lenovo devices platform/x86: x86-android-tablets: Simplify lenovo_yoga_tab2_830_1050_exit() platform/x86: x86-android-tablets: Add support for Acer A1-840 tablet platform/x86: x86-android-tablets: Move Acer info to its own file platform/x86: x86-android-tablets: Update my email address platform/x86: x86-android-tablets: Simplify node-group [un]registration platform/x86: x86-android-tablets: use swnode_group instead of manual registering platform/x86: x86-android-tablets: replace bat_swnode with swnode_group platform/x86: x86-android-tablets: convert gpio_keys devices to GPIO references platform/x86: x86-android-tablets: remove support for GPIO lookup tables platform/x86: x86-android-tablets: convert Yoga Tab2 fast charger to GPIO references platform/x86: x86-android-tablets: convert HID-I2C devices to GPIO references platform/x86: x86-android-tablets: convert wm1502 devices to GPIO references platform/x86: x86-android-tablets: convert int3496 devices to GPIO references platform/x86: x86-android-tablets: convert EDT devices to GPIO references platform/x86: x86-android-tablets: convert Novatek devices to GPIO references ...
2 parents b4e5bb5 + b875409 commit b664517

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

51 files changed

+3383
-885
lines changed
Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2+
%YAML 1.2
3+
---
4+
$id: http://devicetree.org/schemas/embedded-controller/lenovo,thinkpad-t14s-ec.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: Lenovo Thinkpad T14s Embedded Controller
8+
9+
maintainers:
10+
- Sebastian Reichel <[email protected]>
11+
12+
description:
13+
The Qualcomm Snapdragon-based Lenovo Thinkpad T14s has an Embedded Controller
14+
(EC) which handles things such as keyboard backlight, LEDs or non-standard
15+
keys.
16+
17+
properties:
18+
compatible:
19+
const: lenovo,thinkpad-t14s-ec
20+
21+
reg:
22+
const: 0x28
23+
24+
interrupts:
25+
maxItems: 1
26+
27+
wakeup-source: true
28+
29+
required:
30+
- compatible
31+
- reg
32+
- interrupts
33+
34+
additionalProperties: false
35+
36+
examples:
37+
- |+
38+
#include <dt-bindings/interrupt-controller/irq.h>
39+
i2c {
40+
#address-cells = <1>;
41+
#size-cells = <0>;
42+
43+
embedded-controller@28 {
44+
compatible = "lenovo,thinkpad-t14s-ec";
45+
reg = <0x28>;
46+
interrupts-extended = <&tlmm 66 IRQ_TYPE_LEVEL_LOW>;
47+
wakeup-source;
48+
};
49+
};
50+
...

MAINTAINERS

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21605,6 +21605,12 @@ S: Maintained
2160521605
T: git https://github.com/pkshih/rtw.git
2160621606
F: drivers/net/wireless/realtek/rtw89/
2160721607

21608+
REDMIBOOK WMI DRIVERS
21609+
M: Gladyshev Ilya <[email protected]>
21610+
21611+
S: Maintained
21612+
F: drivers/platform/x86/redmi-wmi.c
21613+
2160821614
REDPINE WIRELESS DRIVER
2160921615
2161021616
S: Orphan
@@ -25454,6 +25460,12 @@ W: http://thinkwiki.org/wiki/Ibm-acpi
2545425460
T: git git://repo.or.cz/linux-2.6/linux-acpi-2.6/ibm-acpi-2.6.git
2545525461
F: drivers/platform/x86/lenovo/thinkpad_acpi.c
2545625462

25463+
THINKPAD T14S EMBEDDED CONTROLLER DRIVER
25464+
M: Sebastian Reichel <[email protected]>
25465+
S: Maintained
25466+
F: Documentation/devicetree/bindings/embedded-controller/lenovo,thinkpad-t14s-ec.yaml
25467+
F: drivers/platform/arm64/lenovo-thinkpad-t14s.c
25468+
2545725469
THINKPAD LMI DRIVER
2545825470
M: Mark Pearson <[email protected]>
2545925471

arch/arm64/boot/dts/qcom/x1e78100-lenovo-thinkpad-t14s.dtsi

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -887,6 +887,24 @@
887887
};
888888
};
889889

890+
&i2c6 {
891+
clock-frequency = <400000>;
892+
893+
status = "okay";
894+
895+
embedded-controller@28 {
896+
compatible = "lenovo,thinkpad-t14s-ec";
897+
reg = <0x28>;
898+
899+
interrupts-extended = <&tlmm 66 IRQ_TYPE_LEVEL_LOW>;
900+
901+
pinctrl-0 = <&ec_int_n_default>;
902+
pinctrl-names = "default";
903+
904+
wakeup-source;
905+
};
906+
};
907+
890908
&i2c7 {
891909
clock-frequency = <400000>;
892910

@@ -1269,6 +1287,12 @@
12691287
<72 2>, /* Secure EC I2C connection (?) */
12701288
<238 1>; /* UFS Reset */
12711289

1290+
ec_int_n_default: ec-int-n-state {
1291+
pins = "gpio66";
1292+
function = "gpio";
1293+
bias-disable;
1294+
};
1295+
12721296
eusb3_reset_n: eusb3-reset-n-state {
12731297
pins = "gpio6";
12741298
function = "gpio";

drivers/platform/arm64/Kconfig

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -70,4 +70,24 @@ config EC_LENOVO_YOGA_C630
7070

7171
Say M or Y here to include this support.
7272

73+
config EC_LENOVO_THINKPAD_T14S
74+
tristate "Lenovo Thinkpad T14s Embedded Controller driver"
75+
depends on ARCH_QCOM || COMPILE_TEST
76+
depends on I2C
77+
depends on INPUT
78+
select INPUT_SPARSEKMAP
79+
select LEDS_CLASS
80+
select NEW_LEDS
81+
select SND_CTL_LED if SND
82+
help
83+
Driver for the Embedded Controller in the Qualcomm Snapdragon-based
84+
Lenovo Thinkpad T14s, which provides access to keyboard backlight
85+
and status LEDs.
86+
87+
This driver provides support for the mentioned laptop where this
88+
information is not properly exposed via the standard Qualcomm
89+
devices.
90+
91+
Say M or Y here to include this support.
92+
7393
endif # ARM64_PLATFORM_DEVICES

drivers/platform/arm64/Makefile

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,3 +8,4 @@
88
obj-$(CONFIG_EC_ACER_ASPIRE1) += acer-aspire1-ec.o
99
obj-$(CONFIG_EC_HUAWEI_GAOKUN) += huawei-gaokun-ec.o
1010
obj-$(CONFIG_EC_LENOVO_YOGA_C630) += lenovo-yoga-c630.o
11+
obj-$(CONFIG_EC_LENOVO_THINKPAD_T14S) += lenovo-thinkpad-t14s.o

0 commit comments

Comments
 (0)