xref: /linux/drivers/platform/x86/dell/Kconfig (revision 1193e205dbb6feca917dc8e1862ffcdf2194234b)
1f1e1ea51SMario Limonciello# SPDX-License-Identifier: GPL-2.0-only
2f1e1ea51SMario Limonciello#
3f1e1ea51SMario Limonciello# Dell X86 Platform Specific Drivers
4f1e1ea51SMario Limonciello#
5f1e1ea51SMario Limonciello
6f1e1ea51SMario Limonciellomenuconfig X86_PLATFORM_DRIVERS_DELL
7f1e1ea51SMario Limonciello	bool "Dell X86 Platform Specific Device Drivers"
8f1e1ea51SMario Limonciello	help
9f1e1ea51SMario Limonciello	  Say Y here to get to see options for device drivers for various
10f1e1ea51SMario Limonciello	  Dell x86 platforms, including vendor-specific laptop extension drivers.
11f1e1ea51SMario Limonciello	  This option alone does not add any kernel code.
12f1e1ea51SMario Limonciello
13f1e1ea51SMario Limonciello	  If you say N, all options in this submenu will be skipped and disabled.
14f1e1ea51SMario Limonciello
15f1e1ea51SMario Limoncielloif X86_PLATFORM_DRIVERS_DELL
16f1e1ea51SMario Limonciello
17f1e1ea51SMario Limoncielloconfig ALIENWARE_WMI
18f1e1ea51SMario Limonciello	tristate "Alienware Special feature control"
19f1e1ea51SMario Limonciello	default m
20f1e1ea51SMario Limonciello	depends on ACPI
21b1b8fcf6SKurt Borja	depends on ACPI_WMI
22b1b8fcf6SKurt Borja	depends on DMI
23f1e1ea51SMario Limonciello	depends on LEDS_CLASS
24f1e1ea51SMario Limonciello	depends on NEW_LEDS
25d6999078SKurt Borja	depends on HWMON
26b1b8fcf6SKurt Borja	help
27b1b8fcf6SKurt Borja	 This is a driver for controlling Alienware WMI driven features.
28b1b8fcf6SKurt Borja
29b1b8fcf6SKurt Borja	 On legacy devices, it exposes an interface for controlling the AlienFX
30b1b8fcf6SKurt Borja	 zones on Alienware machines that don't contain a dedicated
31b1b8fcf6SKurt Borja	 AlienFX USB MCU such as the X51 and X51-R2.
32b1b8fcf6SKurt Borja
33b1b8fcf6SKurt Borja	 On newer devices, it exposes the AWCC thermal control interface through
34b1b8fcf6SKurt Borja	 known Kernel APIs.
35b1b8fcf6SKurt Borja
36b1b8fcf6SKurt Borjaconfig ALIENWARE_WMI_LEGACY
37b1b8fcf6SKurt Borja	bool "Alienware Legacy WMI device driver"
38b1b8fcf6SKurt Borja	default y
39b1b8fcf6SKurt Borja	depends on ALIENWARE_WMI
40b1b8fcf6SKurt Borja	help
41b1b8fcf6SKurt Borja	 Legacy Alienware WMI driver with AlienFX LED control capabilities.
42b1b8fcf6SKurt Borja
43b1b8fcf6SKurt Borjaconfig ALIENWARE_WMI_WMAX
44b1b8fcf6SKurt Borja	bool "Alienware WMAX WMI device driver"
45b1b8fcf6SKurt Borja	default y
46b1b8fcf6SKurt Borja	depends on ALIENWARE_WMI
479f6c4304SKurt Borja	select ACPI_PLATFORM_PROFILE
48f1e1ea51SMario Limonciello	help
49b1b8fcf6SKurt Borja	 Alienware WMI driver with AlienFX LED, HDMI, amplifier, deep sleep and
50b1b8fcf6SKurt Borja	 AWCC thermal control capabilities.
51f1e1ea51SMario Limonciello
52f1e1ea51SMario Limoncielloconfig DCDBAS
53f1e1ea51SMario Limonciello	tristate "Dell Systems Management Base Driver"
54f1e1ea51SMario Limonciello	default m
55f1e1ea51SMario Limonciello	depends on X86
56f1e1ea51SMario Limonciello	help
57f1e1ea51SMario Limonciello	  The Dell Systems Management Base Driver provides a sysfs interface
58f1e1ea51SMario Limonciello	  for systems management software to perform System Management
59f1e1ea51SMario Limonciello	  Interrupts (SMIs) and Host Control Actions (system power cycle or
60f1e1ea51SMario Limonciello	  power off after OS shutdown) on certain Dell systems.
61f1e1ea51SMario Limonciello
62bb67bf1cSVegard Nossum	  See <file:Documentation/userspace-api/dcdbas.rst> for more details on the driver
63f1e1ea51SMario Limonciello	  and the Dell systems on which Dell systems management software makes
64f1e1ea51SMario Limonciello	  use of this driver.
65f1e1ea51SMario Limonciello
66f1e1ea51SMario Limonciello	  Say Y or M here to enable the driver for use by Dell systems
67f1e1ea51SMario Limonciello	  management software such as Dell OpenManage.
68f1e1ea51SMario Limonciello
69f1e1ea51SMario Limoncielloconfig DELL_LAPTOP
70f1e1ea51SMario Limonciello	tristate "Dell Laptop Extras"
71f1e1ea51SMario Limonciello	default m
72f1e1ea51SMario Limonciello	depends on DMI
73f1e1ea51SMario Limonciello	depends on BACKLIGHT_CLASS_DEVICE
74ab58016cSAndres Salomon	depends on ACPI_BATTERY
75f1e1ea51SMario Limonciello	depends on ACPI_VIDEO || ACPI_VIDEO = n
76f1e1ea51SMario Limonciello	depends on RFKILL || RFKILL = n
778af9fa37SPerry Yuan	depends on DELL_WMI || DELL_WMI = n
78f1e1ea51SMario Limonciello	depends on SERIO_I8042
79f1e1ea51SMario Limonciello	depends on DELL_SMBIOS
80f1e1ea51SMario Limonciello	select POWER_SUPPLY
81f1e1ea51SMario Limonciello	select LEDS_CLASS
82f1e1ea51SMario Limonciello	select NEW_LEDS
83f1e1ea51SMario Limonciello	help
84f1e1ea51SMario Limonciello	This driver adds support for rfkill and backlight control to Dell
85f1e1ea51SMario Limonciello	laptops (except for some models covered by the Compal driver).
86f1e1ea51SMario Limonciello
87f1e1ea51SMario Limoncielloconfig DELL_RBU
88f1e1ea51SMario Limonciello	tristate "BIOS update support for DELL systems via sysfs"
89f1e1ea51SMario Limonciello	default m
90f1e1ea51SMario Limonciello	depends on X86
91f1e1ea51SMario Limonciello	select FW_LOADER
92f1e1ea51SMario Limonciello	select FW_LOADER_USER_HELPER
93f1e1ea51SMario Limonciello	help
94f1e1ea51SMario Limonciello	 Say m if you want to have the option of updating the BIOS for your
95f1e1ea51SMario Limonciello	 DELL system. Note you need a Dell OpenManage or Dell Update package (DUP)
96f1e1ea51SMario Limonciello	 supporting application to communicate with the BIOS regarding the new
97f1e1ea51SMario Limonciello	 image for the image update to take effect.
98f1e1ea51SMario Limonciello	 See <file:Documentation/admin-guide/dell_rbu.rst> for more details on the driver.
99f1e1ea51SMario Limonciello
100f1e1ea51SMario Limoncielloconfig DELL_RBTN
101f1e1ea51SMario Limonciello	tristate "Dell Airplane Mode Switch driver"
102f1e1ea51SMario Limonciello	default m
103f1e1ea51SMario Limonciello	depends on ACPI
104f1e1ea51SMario Limonciello	depends on INPUT
105f1e1ea51SMario Limonciello	depends on RFKILL
106f1e1ea51SMario Limonciello	help
107f1e1ea51SMario Limonciello	  Say Y here if you want to support Dell Airplane Mode Switch ACPI
108f1e1ea51SMario Limonciello	  device on Dell laptops. Sometimes it has names: DELLABCE or DELRBTN.
109f1e1ea51SMario Limonciello	  This driver register rfkill device or input hotkey device depending
110f1e1ea51SMario Limonciello	  on hardware type (hw switch slider or keyboard toggle button). For
111f1e1ea51SMario Limonciello	  rfkill devices it receive HW switch events and set correct hard
112f1e1ea51SMario Limonciello	  rfkill state.
113f1e1ea51SMario Limonciello
114f1e1ea51SMario Limonciello	  To compile this driver as a module, choose M here: the module will
115f1e1ea51SMario Limonciello	  be called dell-rbtn.
116f1e1ea51SMario Limonciello
117996ad412SLyndon Sancheconfig DELL_PC
118996ad412SLyndon Sanche	tristate "Dell PC Extras"
119996ad412SLyndon Sanche	default m
120996ad412SLyndon Sanche	depends on ACPI
121996ad412SLyndon Sanche	depends on DMI
122996ad412SLyndon Sanche	depends on DELL_SMBIOS
123996ad412SLyndon Sanche	select ACPI_PLATFORM_PROFILE
124996ad412SLyndon Sanche	help
125996ad412SLyndon Sanche	This driver adds support for controlling the fan modes via platform_profile
126996ad412SLyndon Sanche	on supported Dell systems regardless of formfactor.
127996ad412SLyndon Sanche	Module will simply do nothing if thermal management commands are not
128996ad412SLyndon Sanche	supported.
129996ad412SLyndon Sanche
130f1e1ea51SMario Limonciello#
131f1e1ea51SMario Limonciello# The DELL_SMBIOS driver depends on ACPI_WMI and/or DCDBAS if those
132f1e1ea51SMario Limonciello# backends are selected. The "depends" line prevents a configuration
133f1e1ea51SMario Limonciello# where DELL_SMBIOS=y while either of those dependencies =m.
134f1e1ea51SMario Limonciello#
135f1e1ea51SMario Limoncielloconfig DELL_SMBIOS
136f1e1ea51SMario Limonciello	tristate "Dell SMBIOS driver"
137f1e1ea51SMario Limonciello	default m
138f1e1ea51SMario Limonciello	depends on DCDBAS || DCDBAS=n
139f1e1ea51SMario Limonciello	depends on ACPI_WMI || ACPI_WMI=n
140f1e1ea51SMario Limonciello	help
141f1e1ea51SMario Limonciello	This provides support for the Dell SMBIOS calling interface.
142f1e1ea51SMario Limonciello	If you have a Dell computer you should enable this option.
143f1e1ea51SMario Limonciello
144f1e1ea51SMario Limonciello	Be sure to select at least one backend for it to work properly.
145f1e1ea51SMario Limonciello
146f1e1ea51SMario Limoncielloconfig DELL_SMBIOS_WMI
147f1e1ea51SMario Limonciello	bool "Dell SMBIOS driver WMI backend"
148f1e1ea51SMario Limonciello	default y
149f1e1ea51SMario Limonciello	depends on ACPI_WMI
150f1e1ea51SMario Limonciello	select DELL_WMI_DESCRIPTOR
151f1e1ea51SMario Limonciello	depends on DELL_SMBIOS
152f1e1ea51SMario Limonciello	help
153f1e1ea51SMario Limonciello	This provides an implementation for the Dell SMBIOS calling interface
154f1e1ea51SMario Limonciello	communicated over ACPI-WMI.
155f1e1ea51SMario Limonciello
156f1e1ea51SMario Limonciello	If you have a Dell computer from >2007 you should say Y here.
157f1e1ea51SMario Limonciello	If you aren't sure and this module doesn't work for your computer
158f1e1ea51SMario Limonciello	it just won't load.
159f1e1ea51SMario Limonciello
160f1e1ea51SMario Limoncielloconfig DELL_SMBIOS_SMM
161f1e1ea51SMario Limonciello	bool "Dell SMBIOS driver SMM backend"
162f1e1ea51SMario Limonciello	default y
163f1e1ea51SMario Limonciello	depends on DCDBAS
164f1e1ea51SMario Limonciello	depends on DELL_SMBIOS
165f1e1ea51SMario Limonciello	help
166f1e1ea51SMario Limonciello	This provides an implementation for the Dell SMBIOS calling interface
167f1e1ea51SMario Limonciello	communicated over SMI/SMM.
168f1e1ea51SMario Limonciello
169f1e1ea51SMario Limonciello	If you have a Dell computer from <=2017 you should say Y here.
170f1e1ea51SMario Limonciello	If you aren't sure and this module doesn't work for your computer
171f1e1ea51SMario Limonciello	it just won't load.
172f1e1ea51SMario Limonciello
173f1e1ea51SMario Limoncielloconfig DELL_SMO8800
174f1e1ea51SMario Limonciello	tristate "Dell Latitude freefall driver (ACPI SMO88XX)"
175*e99e2c54SKrzysztof Kozlowski	default m if ACPI
176cc0809b7SHans de Goede	depends on I2C
177bc6b8d7eSAndy Shevchenko	depends on ACPI || COMPILE_TEST
178f1e1ea51SMario Limonciello	help
179f1e1ea51SMario Limonciello	  Say Y here if you want to support SMO88XX freefall devices
180f1e1ea51SMario Limonciello	  on Dell Latitude laptops.
181f1e1ea51SMario Limonciello
182f1e1ea51SMario Limonciello	  To compile this driver as a module, choose M here: the module will
183f1e1ea51SMario Limonciello	  be called dell-smo8800.
184f1e1ea51SMario Limonciello
185484bae9eSHans de Goedeconfig DELL_UART_BACKLIGHT
186484bae9eSHans de Goede	tristate "Dell AIO UART Backlight driver"
187484bae9eSHans de Goede	depends on ACPI
188b5f09430SHans de Goede	depends on ACPI_VIDEO
189484bae9eSHans de Goede	depends on BACKLIGHT_CLASS_DEVICE
190484bae9eSHans de Goede	depends on SERIAL_DEV_BUS
191484bae9eSHans de Goede	help
192484bae9eSHans de Goede	  Say Y here if you want to support Dell AIO UART backlight interface.
193484bae9eSHans de Goede	  The Dell AIO machines released after 2017 come with a UART interface
194484bae9eSHans de Goede	  to communicate with the backlight scalar board. This driver creates
195484bae9eSHans de Goede	  a standard backlight interface and talks to the scalar board through
196484bae9eSHans de Goede	  UART to adjust the AIO screen brightness.
197484bae9eSHans de Goede
198484bae9eSHans de Goede	  To compile this driver as a module, choose M here: the module will
199484bae9eSHans de Goede	  be called dell_uart_backlight.
200484bae9eSHans de Goede
201f1e1ea51SMario Limoncielloconfig DELL_WMI
202f1e1ea51SMario Limonciello	tristate "Dell WMI notifications"
203f1e1ea51SMario Limonciello	default m
204f1e1ea51SMario Limonciello	depends on ACPI_WMI
205f1e1ea51SMario Limonciello	depends on DMI
206f1e1ea51SMario Limonciello	depends on INPUT
207f1e1ea51SMario Limonciello	depends on ACPI_VIDEO || ACPI_VIDEO = n
208f1e1ea51SMario Limonciello	depends on DELL_SMBIOS
209f1e1ea51SMario Limonciello	select DELL_WMI_DESCRIPTOR
210f1e1ea51SMario Limonciello	select INPUT_SPARSEKMAP
211f1e1ea51SMario Limonciello	help
212f1e1ea51SMario Limonciello	  Say Y here if you want to support WMI-based hotkeys on Dell laptops.
213f1e1ea51SMario Limonciello
214f1e1ea51SMario Limonciello	  To compile this driver as a module, choose M here: the module will
215f1e1ea51SMario Limonciello	  be called dell-wmi.
216f1e1ea51SMario Limonciello
2178af9fa37SPerry Yuanconfig DELL_WMI_PRIVACY
2188af9fa37SPerry Yuan	bool "Dell WMI Hardware Privacy Support"
21992813dafSHans de Goede	depends on DELL_WMI
220a6021aa2SArnd Bergmann	depends on ACPI_EC
2218af9fa37SPerry Yuan	help
2228af9fa37SPerry Yuan	  This option adds integration with the "Dell Hardware Privacy"
2238af9fa37SPerry Yuan	  feature of Dell laptops to the dell-wmi driver.
2248af9fa37SPerry Yuan
225f1e1ea51SMario Limoncielloconfig DELL_WMI_AIO
226f1e1ea51SMario Limonciello	tristate "WMI Hotkeys for Dell All-In-One series"
227f1e1ea51SMario Limonciello	default m
228f1e1ea51SMario Limonciello	depends on ACPI_WMI
229f1e1ea51SMario Limonciello	depends on INPUT
230f1e1ea51SMario Limonciello	select INPUT_SPARSEKMAP
231f1e1ea51SMario Limonciello	help
232f1e1ea51SMario Limonciello	  Say Y here if you want to support WMI-based hotkeys on Dell
233f1e1ea51SMario Limonciello	  All-In-One machines.
234f1e1ea51SMario Limonciello
235f1e1ea51SMario Limonciello	  To compile this driver as a module, choose M here: the module will
236f1e1ea51SMario Limonciello	  be called dell-wmi-aio.
237f1e1ea51SMario Limonciello
238f1e1ea51SMario Limoncielloconfig DELL_WMI_DESCRIPTOR
239f1e1ea51SMario Limonciello	tristate
2400f07c023SThomas Weißschuh	default n
241f1e1ea51SMario Limonciello	depends on ACPI_WMI
242f1e1ea51SMario Limonciello
243a77272c1SArmin Wolfconfig DELL_WMI_DDV
244a77272c1SArmin Wolf	tristate "Dell WMI sensors Support"
245a77272c1SArmin Wolf	default m
246a77272c1SArmin Wolf	depends on ACPI_WMI
2473b7eeff9SArmin Wolf	depends on ACPI_BATTERY || HWMON
248a77272c1SArmin Wolf	help
2493b7eeff9SArmin Wolf	  This option adds support for WMI-based fan and thermal sensors
2503b7eeff9SArmin Wolf	  found on some Dell notebooks. It also supports various WMI-based battery
2513b7eeff9SArmin Wolf	  extras like reading of the battery temperature and ePPID.
252a77272c1SArmin Wolf
253a77272c1SArmin Wolf	  To compile this drivers as a module, choose M here: the module will
254a77272c1SArmin Wolf	  be called dell-wmi-ddv.
255a77272c1SArmin Wolf
256f1e1ea51SMario Limoncielloconfig DELL_WMI_LED
257f1e1ea51SMario Limonciello	tristate "External LED on Dell Business Netbooks"
258f1e1ea51SMario Limonciello	default m
259f1e1ea51SMario Limonciello	depends on LEDS_CLASS
260f1e1ea51SMario Limonciello	depends on ACPI_WMI
261f1e1ea51SMario Limonciello	help
262f1e1ea51SMario Limonciello	  This adds support for the Latitude 2100 and similar
263f1e1ea51SMario Limonciello	  notebooks that have an external LED.
264f1e1ea51SMario Limonciello
265f1e1ea51SMario Limoncielloconfig DELL_WMI_SYSMAN
266f1e1ea51SMario Limonciello	tristate "Dell WMI-based Systems management driver"
267f1e1ea51SMario Limonciello	default m
268f1e1ea51SMario Limonciello	depends on ACPI_WMI
269f1e1ea51SMario Limonciello	depends on DMI
270f1e1ea51SMario Limonciello	select NLS
2718a1c379cSMark Pearson	select FW_ATTR_CLASS
272f1e1ea51SMario Limonciello	help
273f1e1ea51SMario Limonciello	  This driver allows changing BIOS settings on many Dell machines from
274f1e1ea51SMario Limonciello	  2018 and newer without the use of any additional software.
275f1e1ea51SMario Limonciello
276f1e1ea51SMario Limonciello	  To compile this driver as a module, choose M here: the module will
277f1e1ea51SMario Limonciello	  be called dell-wmi-sysman.
278f1e1ea51SMario Limonciello
279f1e1ea51SMario Limoncielloendif # X86_PLATFORM_DRIVERS_DELL
280