xref: /linux/drivers/platform/arm64/Kconfig (revision db3a9dddab5f34fd3e6fd23271db37e56e75d27d)
1# SPDX-License-Identifier: GPL-2.0-only
2#
3# EC-like Drivers for aarch64 based devices.
4#
5
6menuconfig ARM64_PLATFORM_DEVICES
7	bool "ARM64 Platform-Specific Device Drivers"
8	depends on ARM64 || COMPILE_TEST
9	default ARM64
10	help
11	  Say Y here to get to see options for platform-specific device drivers
12	  for arm64 based devices, primarily EC-like device drivers.
13	  This option alone does not add any kernel code.
14
15	  If you say N, all options in this submenu will be skipped and disabled.
16
17if ARM64_PLATFORM_DEVICES
18
19config EC_ACER_ASPIRE1
20	tristate "Acer Aspire 1 Embedded Controller driver"
21	depends on ARCH_QCOM || COMPILE_TEST
22	depends on I2C
23	depends on DRM
24	depends on POWER_SUPPLY
25	depends on INPUT
26	help
27	  Say Y here to enable the EC driver for the (Snapdragon-based)
28	  Acer Aspire 1 laptop. The EC handles battery and charging
29	  monitoring as well as some misc functions like the lid sensor
30	  and USB Type-C DP HPD events.
31
32	  This driver provides battery and AC status support for the mentioned
33	  laptop where this information is not properly exposed via the
34	  standard ACPI devices.
35
36config EC_ASUS_GLYMUR
37	tristate "ASUS Zenbook A16 (Qualcomm) Embedded Controller driver"
38	depends on ARCH_QCOM || COMPILE_TEST
39	depends on I2C
40	depends on HWMON
41	depends on INPUT
42	depends on PM
43	depends on THERMAL || THERMAL=n
44	select NEW_LEDS
45	select LEDS_CLASS
46	help
47	  Say M or Y here to enable the EC driver for the Qualcomm Snapdragon-
48	  based ASUS Zenbook A16 (UX3607OA) and similar machines. It provides
49	  temperature sensors readout, fan monitoring, keyboard and EC event
50	  reporting.
51
52config EC_HUAWEI_GAOKUN
53	tristate "Huawei Matebook E Go Embedded Controller driver"
54	depends on ARCH_QCOM || COMPILE_TEST
55	depends on I2C
56	depends on INPUT
57	depends on HWMON
58	select AUXILIARY_BUS
59
60	help
61	  Say Y here to enable the EC driver for the Huawei Matebook E Go
62	  which is a sc8280xp-based 2-in-1 tablet. The driver handles battery
63	  (information, charge control) and USB Type-C DP HPD events as well
64	  as some misc functions like the lid sensor and temperature sensors,
65	  etc.
66
67	  This driver provides battery and AC status support for the mentioned
68	  laptop where this information is not properly exposed via the
69	  standard ACPI devices.
70
71	  Say M or Y here to include this support.
72
73config EC_LENOVO_YOGA_C630
74	tristate "Lenovo Yoga C630 Embedded Controller driver"
75	depends on ARCH_QCOM || COMPILE_TEST
76	depends on I2C
77	select AUXILIARY_BUS
78	help
79	  Driver for the Embedded Controller in the Qualcomm Snapdragon-based
80	  Lenovo Yoga C630, which provides battery and power adapter
81	  information.
82
83	  This driver provides battery and AC status support for the mentioned
84	  laptop where this information is not properly exposed via the
85	  standard ACPI devices.
86
87	  Say M or Y here to include this support.
88
89config EC_LENOVO_THINKPAD_T14S
90	tristate "Lenovo Thinkpad T14s Embedded Controller driver"
91	depends on ARCH_QCOM || COMPILE_TEST
92	depends on I2C
93	depends on INPUT
94	select INPUT_SPARSEKMAP
95	select LEDS_CLASS
96	select NEW_LEDS
97	select SND_CTL_LED if SND
98	help
99	  Driver for the Embedded Controller in the Qualcomm Snapdragon-based
100	  Lenovo Thinkpad T14s, which provides access to keyboard backlight
101	  and status LEDs.
102
103	  This driver provides support for the mentioned laptop where this
104	  information is not properly exposed via the standard Qualcomm
105	  devices.
106
107	  Say M or Y here to include this support.
108
109config EC_LENOVO_YOGA_SLIM7X_GEN11
110	tristate "Lenovo Yoga Slim 7x Gen 11 Embedded Controller driver"
111	depends on ARCH_QCOM || COMPILE_TEST
112	depends on I2C
113	depends on INPUT
114	depends on HWMON
115	select NEW_LEDS
116	select LEDS_CLASS
117	help
118	  Say Y here to enable the EC driver for the (Snapdragon X2 Elite,
119	  glymur-based) Lenovo Yoga Slim 7x Gen 11 laptop. The EC provides
120	  thermistors and CPU fan speed as hwmon channels, the keyboard
121	  backlight as an LED, Fn-lock as a sysfs attribute, and the mic-mute
122	  and airplane-mode keys.
123
124	  This is the Gen 11 (glymur) machine specifically. Its EC is a Compal
125	  design at i2c address 0x70 and speaks a different protocol from the
126	  Qualcomm reference EC that the reference designs place at 0x76, so
127	  EC_QCOM_HAMOA does not drive it - and conversely this driver does not
128	  cover the X1E-based Yoga Slim 7x Gen 9.
129
130	  To compile this driver as a module, choose M here: the module will
131	  be called lenovo-yoga-slim7x-gen11-ec.
132
133config EC_QCOM_HAMOA
134	tristate "Embedded Controller driver for Qualcomm Hamoa/Glymur reference devices"
135	depends on ARCH_QCOM || COMPILE_TEST
136	depends on I2C
137	depends on THERMAL || THERMAL=n
138	help
139	  Say M or Y here to enable the Embedded Controller driver for Qualcomm
140	  Snapdragon-based Hamoa/Glymur reference devices. The driver handles fan
141	  control, temperature sensors, access to EC state changes and supports
142	  reporting suspend entry/exit to the EC.
143
144	  This driver currently supports Hamoa/Purwa/Glymur reference devices.
145
146endif # ARM64_PLATFORM_DEVICES
147