Kconfig 45.6 KB
Newer Older
1
# SPDX-License-Identifier: GPL-2.0-only
2 3 4 5 6 7 8
#
# X86 Platform Specific Drivers
#

menuconfig X86_PLATFORM_DEVICES
	bool "X86 Platform Specific Device Drivers"
	default y
9
	depends on X86
10 11 12 13 14 15 16 17 18
	---help---
	  Say Y here to get to see options for device drivers for various
	  x86 platforms, including vendor-specific laptop extension 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 X86_PLATFORM_DEVICES

19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53
config ACPI_WMI
	tristate "WMI"
	depends on ACPI
	help
	  This driver adds support for the ACPI-WMI (Windows Management
	  Instrumentation) mapper device (PNP0C14) found on some systems.

	  ACPI-WMI is a proprietary extension to ACPI to expose parts of the
	  ACPI firmware to userspace - this is done through various vendor
	  defined methods and data blocks in a PNP0C14 device, which are then
	  made available for userspace to call.

	  The implementation of this in Linux currently only exposes this to
	  other kernel space drivers.

	  This driver is a required dependency to build the firmware specific
	  drivers needed on many machines, including Acer and HP laptops.

	  It is safe to enable this driver even if your DSDT doesn't define
	  any ACPI-WMI devices.

config WMI_BMOF
	tristate "WMI embedded Binary MOF driver"
	depends on ACPI_WMI
	default ACPI_WMI
	---help---
	  Say Y here if you want to be able to read a firmware-embedded
	  WMI Binary MOF data. Using this requires userspace tools and may be
	  rather tedious.

	  To compile this driver as a module, choose M here: the module will
	  be called wmi-bmof.

config ALIENWARE_WMI
	tristate "Alienware Special feature control"
54
	depends on ACPI
55 56 57 58 59 60 61 62 63 64 65 66 67 68 69
	depends on LEDS_CLASS
	depends on NEW_LEDS
	depends on ACPI_WMI
	---help---
	 This is a driver for controlling Alienware BIOS driven
	 features.  It exposes an interface for controlling the AlienFX
	 zones on Alienware machines that don't contain a dedicated AlienFX
	 USB MCU such as the X51 and X51-R2.

config HUAWEI_WMI
	tristate "Huawei WMI laptop extras driver"
	depends on ACPI_BATTERY
	depends on ACPI_WMI
	depends on INPUT
	select INPUT_SPARSEKMAP
70
	select LEDS_CLASS
71 72
	select LEDS_TRIGGERS
	select LEDS_TRIGGER_AUDIO
73
	select NEW_LEDS
74 75 76 77 78 79 80
	help
	  This driver provides support for Huawei WMI hotkeys, battery charge
	  control, fn-lock, mic-mute LED, and other extra features.

	  To compile this driver as a module, choose M here: the module
	  will be called huawei-wmi.

81 82 83 84 85 86 87 88 89 90
config INTEL_WMI_SBL_FW_UPDATE
	tristate "Intel WMI Slim Bootloader firmware update signaling driver"
	depends on ACPI_WMI
	help
	  Say Y here if you want to be able to use the WMI interface to signal
	  Slim Bootloader to trigger update on next reboot.

	  To compile this driver as a module, choose M here: the module will
	  be called intel-wmi-sbl-fw-update.

91 92
config INTEL_WMI_THUNDERBOLT
	tristate "Intel WMI thunderbolt force power driver"
93
	depends on ACPI_WMI
94
	---help---
95 96 97 98
	  Say Y here if you want to be able to use the WMI interface on select
	  systems to force the power control of Intel Thunderbolt controllers.
	  This is useful for updating the firmware when devices are not plugged
	  into the controller.
99

100 101
	  To compile this driver as a module, choose M here: the module will
	  be called intel-wmi-thunderbolt.
102

103 104 105 106 107 108
config MXM_WMI
       tristate "WMI support for MXM Laptop Graphics"
       depends on ACPI_WMI
       ---help---
          MXM is a standard for laptop graphics cards, the WMI interface
	  is required for switchable nvidia graphics machines
109

110 111 112 113 114 115
config PEAQ_WMI
	tristate "PEAQ 2-in-1 WMI hotkey driver"
	depends on ACPI_WMI
	depends on INPUT
	help
	 Say Y here if you want to support WMI-based hotkeys on PEAQ 2-in-1s.
116

117 118 119 120 121 122 123 124 125
config XIAOMI_WMI
	tristate "Xiaomi WMI key driver"
	depends on ACPI_WMI
	depends on INPUT
	help
	  Say Y here if you want to support WMI-based keys on Xiaomi notebooks.

	  To compile this driver as a module, choose M here: the module will
	  be called xiaomi-wmi.
126

127 128
config ACERHDF
	tristate "Acer Aspire One temperature and fan driver"
129
	depends on ACPI && THERMAL
130
	select THERMAL_GOV_BANG_BANG
131 132 133 134 135 136
	---help---
	  This is a driver for Acer Aspire One netbooks. It allows to access
	  the temperature sensor and to control the fan.

	  After loading this driver the BIOS is still in control of the fan.
	  To let the kernel handle the fan, do:
137 138 139 140
	  echo -n enabled > /sys/class/thermal/thermal_zoneN/mode
	  where N=0,1,2... depending on the number of thermal nodes and the
	  detection order of your particular system.  The "type" parameter
	  in the same node directory will tell you if it is "acerhdf".
141 142 143 144 145 146 147

	  For more information about this driver see
	  <http://piie.net/files/acerhdf_README.txt>

	  If you have an Acer Aspire One netbook, say Y or M
	  here.

148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163
config ACER_WIRELESS
        tristate "Acer Wireless Radio Control Driver"
        depends on ACPI
        depends on INPUT
        ---help---
          The Acer Wireless Radio Control handles the airplane mode hotkey
          present on new Acer laptops.

          Say Y or M here if you have an Acer notebook with an airplane mode
          hotkey.

          If you choose to compile this driver as a module the module will be
          called acer-wireless.

config ACER_WMI
	tristate "Acer WMI Laptop Extras"
164
	depends on ACPI
165 166 167 168 169 170
	select LEDS_CLASS
	select NEW_LEDS
	depends on BACKLIGHT_CLASS_DEVICE
	depends on SERIO_I8042
	depends on INPUT
	depends on RFKILL || RFKILL = n
171
	depends on ACPI_WMI
172 173 174
	select INPUT_SPARSEKMAP
	# Acer WMI depends on ACPI_VIDEO when ACPI is enabled
        select ACPI_VIDEO if ACPI
175
	---help---
176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194
	  This is a driver for newer Acer (and Wistron) laptops. It adds
	  wireless radio and bluetooth control, and on some laptops,
	  exposes the mail LED and LCD backlight.

	  If you have an ACPI-WMI compatible Acer/ Wistron laptop, say Y or M
	  here.

config APPLE_GMUX
	tristate "Apple Gmux Driver"
	depends on ACPI && PCI
	depends on PNP
	depends on BACKLIGHT_CLASS_DEVICE
	depends on BACKLIGHT_APPLE=n || BACKLIGHT_APPLE
	depends on ACPI_VIDEO=n || ACPI_VIDEO
	---help---
	  This driver provides support for the gmux device found on many
	  Apple laptops, which controls the display mux for the hybrid
	  graphics as well as the backlight. Currently only backlight
	  control is supported by the driver.
195

196
config ASUS_LAPTOP
197
	tristate "Asus Laptop Extras"
198
	depends on ACPI
199 200
	select LEDS_CLASS
	select NEW_LEDS
201
	depends on BACKLIGHT_CLASS_DEVICE
202
	depends on INPUT
C
Corentin Chary 已提交
203
	depends on RFKILL || RFKILL = n
204
	depends on ACPI_VIDEO || ACPI_VIDEO = n
205
	select INPUT_SPARSEKMAP
206
	---help---
207 208 209
	  This is a driver for Asus laptops, Lenovo SL and the Pegatron
	  Lucid tablet. It may also support some MEDION, JVC or VICTOR
	  laptops. It makes all the extra buttons generate standard
210 211 212 213 214
	  ACPI events and input events, and on the Lucid the built-in
	  accelerometer appears as an input device.  It also adds
	  support for video output switching, LCD backlight control,
	  Bluetooth and Wlan control, and most importantly, allows you
	  to blink those fancy LEDs.
215

216
	  For more information see <http://acpi4asus.sf.net>.
217 218 219

	  If you have an ACPI-compatible ASUS laptop, say Y or M here.

220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304
config ASUS_WIRELESS
	tristate "Asus Wireless Radio Control Driver"
	depends on ACPI
	depends on INPUT
	select NEW_LEDS
	select LEDS_CLASS
	---help---
	  The Asus Wireless Radio Control handles the airplane mode hotkey
	  present on some Asus laptops.

	  Say Y or M here if you have an ASUS notebook with an airplane mode
	  hotkey.

	  If you choose to compile this driver as a module the module will be
	  called asus-wireless.

config ASUS_WMI
	tristate "ASUS WMI Driver"
	depends on ACPI_WMI
	depends on ACPI_BATTERY
	depends on INPUT
	depends on HWMON
	depends on BACKLIGHT_CLASS_DEVICE
	depends on RFKILL || RFKILL = n
	depends on HOTPLUG_PCI
	depends on ACPI_VIDEO || ACPI_VIDEO = n
	select INPUT_SPARSEKMAP
	select LEDS_CLASS
	select NEW_LEDS
	---help---
	  Say Y here if you have a WMI aware Asus laptop (like Eee PCs or new
	  Asus Notebooks).

	  To compile this driver as a module, choose M here: the module will
	  be called asus-wmi.

config ASUS_NB_WMI
	tristate "Asus Notebook WMI Driver"
	depends on ASUS_WMI
	depends on SERIO_I8042 || SERIO_I8042 = n
	---help---
	  This is a driver for newer Asus notebooks. It adds extra features
	  like wireless radio and bluetooth control, leds, hotkeys, backlight...

	  For more information, see
	  <file:Documentation/ABI/testing/sysfs-platform-asus-wmi>

	  If you have an ACPI-WMI compatible Asus Notebook, say Y or M
	  here.

config EEEPC_LAPTOP
	tristate "Eee PC Hotkey Driver"
	depends on ACPI
	depends on INPUT
	depends on RFKILL || RFKILL = n
	depends on ACPI_VIDEO || ACPI_VIDEO = n
	depends on HOTPLUG_PCI
	depends on BACKLIGHT_CLASS_DEVICE
	select HWMON
	select LEDS_CLASS
	select NEW_LEDS
	select INPUT_SPARSEKMAP
	---help---
	  This driver supports the Fn-Fx keys on Eee PC laptops.

	  It  also gives access to some extra laptop functionalities like
	  Bluetooth, backlight and allows powering on/off some other
	  devices.

	  If you have an Eee PC laptop, say Y or M here. If this driver
	  doesn't work on your Eee PC, try eeepc-wmi instead.

config EEEPC_WMI
	tristate "Eee PC WMI Driver"
	depends on ASUS_WMI
	---help---
	  This is a driver for newer Eee PC laptops. It adds extra features
	  like wireless radio and bluetooth control, leds, hotkeys, backlight...

	  For more information, see
	  <file:Documentation/ABI/testing/sysfs-platform-asus-wmi>

	  If you have an ACPI-WMI compatible Eee PC laptop (>= 1000), say Y or M
	  here.

305 306 307 308 309 310 311 312 313
config DCDBAS
	tristate "Dell Systems Management Base Driver"
	depends on X86
	help
	  The Dell Systems Management Base Driver provides a sysfs interface
	  for systems management software to perform System Management
	  Interrupts (SMIs) and Host Control Actions (system power cycle or
	  power off after OS shutdown) on certain Dell systems.

314
	  See <file:Documentation/driver-api/dcdbas.rst> for more details on the driver
315 316 317 318 319 320
	  and the Dell systems on which Dell systems management software makes
	  use of this driver.

	  Say Y or M here to enable the driver for use by Dell systems
	  management software such as Dell OpenManage.

321
#
322 323 324
# The DELL_SMBIOS driver depends on ACPI_WMI and/or DCDBAS if those
# backends are selected. The "depends" line prevents a configuration
# where DELL_SMBIOS=y while either of those dependencies =m.
325
#
326
config DELL_SMBIOS
327
	tristate "Dell SMBIOS driver"
328
	depends on DCDBAS || DCDBAS=n
329
	depends on ACPI_WMI || ACPI_WMI=n
330 331 332 333 334
	---help---
	This provides support for the Dell SMBIOS calling interface.
	If you have a Dell computer you should enable this option.

	Be sure to select at least one backend for it to work properly.
335

336
config DELL_SMBIOS_WMI
337
	bool "Dell SMBIOS driver WMI backend"
338
	default y
339 340
	depends on ACPI_WMI
	select DELL_WMI_DESCRIPTOR
341
	depends on DELL_SMBIOS
342 343 344 345
	---help---
	This provides an implementation for the Dell SMBIOS calling interface
	communicated over ACPI-WMI.

346
	If you have a Dell computer from >2007 you should say Y here.
347 348 349
	If you aren't sure and this module doesn't work for your computer
	it just won't load.

350
config DELL_SMBIOS_SMM
351
	bool "Dell SMBIOS driver SMM backend"
352
	default y
353
	depends on DCDBAS
354
	depends on DELL_SMBIOS
355
	---help---
356 357
	This provides an implementation for the Dell SMBIOS calling interface
	communicated over SMI/SMM.
358

359
	If you have a Dell computer from <=2017 you should say Y here.
360 361
	If you aren't sure and this module doesn't work for your computer
	it just won't load.
362

363
config DELL_LAPTOP
364
	tristate "Dell Laptop Extras"
365
	depends on DMI
366
	depends on BACKLIGHT_CLASS_DEVICE
367
	depends on ACPI_VIDEO || ACPI_VIDEO = n
J
Johannes Berg 已提交
368
	depends on RFKILL || RFKILL = n
369
	depends on SERIO_I8042
370
	depends on DELL_SMBIOS
371
	select POWER_SUPPLY
372 373
	select LEDS_CLASS
	select NEW_LEDS
374 375
	select LEDS_TRIGGERS
	select LEDS_TRIGGER_AUDIO
376 377
	---help---
	This driver adds support for rfkill and backlight control to Dell
378
	laptops (except for some models covered by the Compal driver).
379

380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421
config DELL_RBTN
	tristate "Dell Airplane Mode Switch driver"
	depends on ACPI
	depends on INPUT
	depends on RFKILL
	---help---
	  Say Y here if you want to support Dell Airplane Mode Switch ACPI
	  device on Dell laptops. Sometimes it has names: DELLABCE or DELRBTN.
	  This driver register rfkill device or input hotkey device depending
	  on hardware type (hw switch slider or keyboard toggle button). For
	  rfkill devices it receive HW switch events and set correct hard
	  rfkill state.

	  To compile this driver as a module, choose M here: the module will
	  be called dell-rbtn.

config DELL_RBU
	tristate "BIOS update support for DELL systems via sysfs"
	depends on X86
	select FW_LOADER
	select FW_LOADER_USER_HELPER
	help
	 Say m if you want to have the option of updating the BIOS for your
	 DELL system. Note you need a Dell OpenManage or Dell Update package (DUP)
	 supporting application to communicate with the BIOS regarding the new
	 image for the image update to take effect.
	 See <file:Documentation/admin-guide/dell_rbu.rst> for more details on the driver.

config DELL_SMO8800
	tristate "Dell Latitude freefall driver (ACPI SMO88XX)"
	depends on ACPI
	---help---
	  Say Y here if you want to support SMO88XX freefall devices
	  on Dell Latitude laptops.

	  To compile this driver as a module, choose M here: the module will
	  be called dell-smo8800.

config DELL_WMI
	tristate "Dell WMI notifications"
	depends on ACPI_WMI
	depends on DMI
422
	depends on INPUT
423
	depends on ACPI_VIDEO || ACPI_VIDEO = n
424
	depends on DELL_SMBIOS
425
	select DELL_WMI_DESCRIPTOR
426
	select INPUT_SPARSEKMAP
427 428 429 430 431 432
	---help---
	  Say Y here if you want to support WMI-based hotkeys on Dell laptops.

	  To compile this driver as a module, choose M here: the module will
	  be called dell-wmi.

433 434 435 436
config DELL_WMI_DESCRIPTOR
	tristate
	depends on ACPI_WMI

437 438 439 440 441 442 443 444 445 446
config DELL_WMI_AIO
	tristate "WMI Hotkeys for Dell All-In-One series"
	depends on ACPI_WMI
	depends on INPUT
	select INPUT_SPARSEKMAP
	---help---
	  Say Y here if you want to support WMI-based hotkeys on Dell
	  All-In-One machines.

	  To compile this driver as a module, choose M here: the module will
447
	  be called dell-wmi-aio.
448

449 450 451 452 453 454 455 456
config DELL_WMI_LED
	tristate "External LED on Dell Business Netbooks"
	depends on LEDS_CLASS
	depends on ACPI_WMI
	help
	  This adds support for the Latitude 2100 and similar
	  notebooks that have an external LED.

457 458
config AMILO_RFKILL
	tristate "Fujitsu-Siemens Amilo rfkill support"
459
	depends on RFKILL
460
	depends on SERIO_I8042
461
	---help---
462 463
	  This is a driver for enabling wifi on some Fujitsu-Siemens Amilo
	  laptops.
464

465 466 467 468 469
config FUJITSU_LAPTOP
	tristate "Fujitsu Laptop Extras"
	depends on ACPI
	depends on INPUT
	depends on BACKLIGHT_CLASS_DEVICE
470
	depends on ACPI_VIDEO || ACPI_VIDEO = n
471
	select INPUT_SPARSEKMAP
472
	select LEDS_CLASS
473 474 475 476 477 478 479 480 481 482 483
	---help---
	  This is a driver for laptops built by Fujitsu:

	    * P2xxx/P5xxx/S6xxx/S7xxx series Lifebooks
	    * Possibly other Fujitsu laptop models
	    * Tested with S6410 and S7020

	  It adds support for LCD brightness control and some hotkeys.

	  If you have a Fujitsu laptop, say Y or M here.

R
Robert Gerlach 已提交
484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500
config FUJITSU_TABLET
       tristate "Fujitsu Tablet Extras"
       depends on ACPI
       depends on INPUT
       ---help---
         This is a driver for tablets built by Fujitsu:

           * Lifebook P1510/P1610/P1620/Txxxx
           * Stylistic ST5xxx
           * Possibly other Fujitsu tablet models

         It adds support for the panel buttons, docking station detection,
         tablet/notebook mode detection for convertible and
         orientation detection for docked slates.

         If you have a Fujitsu convertible or slate, say Y or M here.

501 502 503 504 505 506 507 508 509 510 511 512
config GPD_POCKET_FAN
	tristate "GPD Pocket Fan Controller support"
	depends on ACPI
	depends on THERMAL
	---help---
	  Driver for the GPD Pocket vendor specific FAN02501 ACPI device
	  which controls the fan speed on the GPD Pocket.

	  Without this driver the fan on the Pocket will stay off independent
	  of the CPU temperature. Say Y or M if the kernel may be used on a
	  GPD pocket.

513 514 515
config HP_ACCEL
	tristate "HP laptop accelerometer"
	depends on INPUT && ACPI
516
	depends on SERIO_I8042
517 518 519 520 521 522 523 524 525 526
	select SENSORS_LIS3LV02D
	select NEW_LEDS
	select LEDS_CLASS
	help
	  This driver provides support for the "Mobile Data Protection System 3D"
	  or "3D DriveGuard" feature of HP laptops. On such systems the driver
	  should load automatically (via ACPI alias).

	  Support for a led indicating disk protection will be provided as
	  hp::hddprotect. For more information on the feature, refer to
527
	  Documentation/misc-devices/lis3lv02d.rst.
528 529 530 531

	  To compile this driver as a module, choose M here: the module will
	  be called hp_accel.

532
config HP_WIRELESS
533
	tristate "HP wireless button"
534 535 536 537 538 539 540 541 542
	depends on ACPI
	depends on INPUT
	help
	 This driver provides supports for new HP wireless button for Windows 8.
	 On such systems the driver should load automatically (via ACPI alias).

	 To compile this driver as a module, choose M here: the module will
	 be called hp-wireless.

543 544 545 546
config HP_WMI
	tristate "HP WMI extras"
	depends on ACPI_WMI
	depends on INPUT
J
Johannes Berg 已提交
547
	depends on RFKILL || RFKILL = n
548
	select INPUT_SPARSEKMAP
549 550 551 552 553 554 555
	help
	 Say Y here if you want to support WMI-based hotkeys on HP laptops and
	 to read data from WMI such as docking or ambient light sensor state.

	 To compile this driver as a module, choose M here: the module will
	 be called hp-wmi.

556 557 558
config TC1100_WMI
	tristate "HP Compaq TC1100 Tablet WMI Extras"
	depends on !X86_64
559 560
	depends on ACPI
	depends on ACPI_WMI
561
	---help---
562 563
	  This is a driver for the WMI extensions (wireless and bluetooth power
	  control) of the HP Compaq TC1100 tablet.
564

565 566 567
config IBM_RTL
	tristate "Device driver to enable PRTL support"
	depends on PCI
568
	---help---
569 570 571 572 573
	 Enable support for IBM Premium Real Time Mode (PRTM).
	 This module will allow you the enter and exit PRTM in the BIOS via
	 sysfs on platforms that support this feature.  System in PRTM will
	 not receive CPU-generated SMIs for recoverable errors.  Use of this
	 feature without proper support may void your hardware warranty.
574

575 576 577 578 579
	 If the proper BIOS support is found the driver will load and create
	 /sys/devices/system/ibm_rtl/.  The "state" variable will indicate
	 whether or not the BIOS is in PRTM.
	 state = 0 (BIOS SMIs on)
	 state = 1 (BIOS SMIs off)
580

581 582
config IDEAPAD_LAPTOP
	tristate "Lenovo IdeaPad Laptop Extras"
D
David Woodhouse 已提交
583
	depends on ACPI
584
	depends on RFKILL && INPUT
585
	depends on SERIO_I8042
586
	depends on BACKLIGHT_CLASS_DEVICE
587
	depends on ACPI_VIDEO || ACPI_VIDEO = n
588
	depends on ACPI_WMI || ACPI_WMI = n
I
Ike Panhc 已提交
589
	select INPUT_SPARSEKMAP
D
David Woodhouse 已提交
590
	help
591 592
	  This is a driver for Lenovo IdeaPad netbooks contains drivers for
	  rfkill switch, hotkey, fan control and backlight control.
D
David Woodhouse 已提交
593

594 595
config SENSORS_HDAPS
	tristate "Thinkpad Hard Drive Active Protection System (hdaps)"
596
	depends on INPUT
597 598 599 600 601
	help
	  This driver provides support for the IBM Hard Drive Active Protection
	  System (hdaps), which provides an accelerometer and other misc. data.
	  ThinkPads starting with the R50, T41, and X40 are supported.  The
	  accelerometer data is readable via sysfs.
602

603 604 605 606 607 608 609 610
	  This driver also provides an absolute input class device, allowing
	  the laptop to act as a pinball machine-esque joystick.

	  If your ThinkPad is not recognized by the driver, please update to latest
	  BIOS. This is especially the case for some R52 ThinkPads.

	  Say Y here if you have an applicable laptop and want to experience
	  the awesome power of hdaps.
611

612 613 614
config THINKPAD_ACPI
	tristate "ThinkPad ACPI Laptop Extras"
	depends on ACPI
615
	depends on ACPI_BATTERY
616
	depends on INPUT
J
Johannes Berg 已提交
617
	depends on RFKILL || RFKILL = n
618 619
	depends on ACPI_VIDEO || ACPI_VIDEO = n
	depends on BACKLIGHT_CLASS_DEVICE
620 621 622 623
	select HWMON
	select NVRAM
	select NEW_LEDS
	select LEDS_CLASS
624 625
	select LEDS_TRIGGERS
	select LEDS_TRIGGER_AUDIO
626 627 628 629 630
	---help---
	  This is a driver for the IBM and Lenovo ThinkPad laptops. It adds
	  support for Fn-Fx key combinations, Bluetooth control, video
	  output switching, ThinkLight control, UltraBay eject and more.
	  For more information about this driver see
631
	  <file:Documentation/admin-guide/laptops/thinkpad-acpi.rst> and
632 633 634 635
	  <http://ibm-acpi.sf.net/> .

	  This driver was formerly known as ibm-acpi.

636 637 638 639 640
	  Extra functionality will be available if the rfkill (CONFIG_RFKILL)
	  and/or ALSA (CONFIG_SND) subsystems are available in the kernel.
	  Note that if you want ThinkPad-ACPI to be built-in instead of
	  modular, ALSA and rfkill will also have to be built-in.

641 642
	  If you have an IBM or Lenovo ThinkPad laptop, say Y or M here.

643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665
config THINKPAD_ACPI_ALSA_SUPPORT
	bool "Console audio control ALSA interface"
	depends on THINKPAD_ACPI
	depends on SND
	depends on SND = y || THINKPAD_ACPI = SND
	default y
	---help---
	  Enables monitoring of the built-in console audio output control
	  (headphone and speakers), which is operated by the mute and (in
	  some ThinkPad models) volume hotkeys.

	  If this option is enabled, ThinkPad-ACPI will export an ALSA card
	  with a single read-only mixer control, which should be used for
	  on-screen-display feedback purposes by the Desktop Environment.

	  Optionally, the driver will also allow software control (the
	  ALSA mixer will be made read-write).  Please refer to the driver
	  documentation for details.

	  All IBM models have both volume and mute control.  Newer Lenovo
	  models only have mute control (the volume hotkeys are just normal
	  keys and volume control is done through the main HDA mixer).

666 667 668 669 670 671 672 673 674 675
config THINKPAD_ACPI_DEBUGFACILITIES
	bool "Maintainer debug facilities"
	depends on THINKPAD_ACPI
	---help---
	  Enables extra stuff in the thinkpad-acpi which is completely useless
	  for normal use.  Read the driver source to find out what it does.

	  Say N here, unless you were told by a kernel maintainer to do
	  otherwise.

676 677 678 679 680 681 682 683 684
config THINKPAD_ACPI_DEBUG
	bool "Verbose debug mode"
	depends on THINKPAD_ACPI
	---help---
	  Enables extra debugging information, at the expense of a slightly
	  increase in driver size.

	  If you are not sure, say N here.

685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707
config THINKPAD_ACPI_UNSAFE_LEDS
	bool "Allow control of important LEDs (unsafe)"
	depends on THINKPAD_ACPI
	---help---
	  Overriding LED state on ThinkPads can mask important
	  firmware alerts (like critical battery condition), or misled
	  the user into damaging the hardware (undocking or ejecting
	  the bay while buses are still active), etc.

	  LED control on the ThinkPad is write-only (with very few
	  exceptions on very ancient models), which makes it
	  impossible to know beforehand if important information will
	  be lost when one changes LED state.

	  Users that know what they are doing can enable this option
	  and the driver will allow control of every LED, including
	  the ones on the dock stations.

	  Never enable this option on a distribution kernel.

	  Say N here, unless you are building a kernel for your own
	  use, and need to control the important firmware LEDs.

708 709 710 711 712 713 714 715 716 717 718 719 720
config THINKPAD_ACPI_VIDEO
	bool "Video output control support"
	depends on THINKPAD_ACPI
	default y
	---help---
	  Allows the thinkpad_acpi driver to provide an interface to control
	  the various video output ports.

	  This feature often won't work well, depending on ThinkPad model,
	  display state, video output devices in use, whether there is a X
	  server running, phase of the moon, and the current mood of
	  Schroedinger's cat.  If you can use X.org's RandR to control
	  your ThinkPad's video output ports instead of this feature,
721 722
	  don't think twice: do it and say N here to save memory and avoid
	  bad interactions with X.org.
723

724 725 726 727 728 729
	  NOTE: access to this feature is limited to processes with the
	  CAP_SYS_ADMIN capability, to avoid local DoS issues in platforms
	  where it interacts badly with X.org.

	  If you are not sure, say Y here but do try to check if you could
	  be using X.org RandR instead.
730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750

config THINKPAD_ACPI_HOTKEY_POLL
	bool "Support NVRAM polling for hot keys"
	depends on THINKPAD_ACPI
	default y
	---help---
	  Some thinkpad models benefit from NVRAM polling to detect a few of
	  the hot key press events.  If you know your ThinkPad model does not
	  need to do NVRAM polling to support any of the hot keys you use,
	  unselecting this option will save about 1kB of memory.

	  ThinkPads T40 and newer, R52 and newer, and X31 and newer are
	  unlikely to need NVRAM polling in their latest BIOS versions.

	  NVRAM polling can detect at most the following keys: ThinkPad/Access
	  IBM, Zoom, Switch Display (fn+F7), ThinkLight, Volume up/down/mute,
	  Brightness up/down, Display Expand (fn+F8), Hibernate (fn+F12).

	  If you are not sure, say Y here.  The driver enables polling only if
	  it is strictly necessary to do so.

751 752 753
config INTEL_ATOMISP2_PM
	tristate "Intel AtomISP2 dummy / power-management driver"
	depends on PCI && IOSF_MBI && PM
754
	depends on !INTEL_ATOMISP
J
Jean Delvare 已提交
755
	help
756 757 758 759
	  Power-management driver for Intel's Image Signal Processor found on
	  Bay Trail and Cherry Trail devices. This dummy driver's sole purpose
	  is to turn the ISP off (put it in D3) to save power and to allow
	  entering of S0ix modes.
J
Jean Delvare 已提交
760

761 762
	  To compile this driver as a module, choose M here: the module
	  will be called intel_atomisp2_pm.
J
Jean Delvare 已提交
763

764 765 766 767 768 769
config INTEL_CHT_INT33FE
	tristate "Intel Cherry Trail ACPI INT33FE Driver"
	depends on X86 && ACPI && I2C && REGULATOR
	depends on CHARGER_BQ24190=y || (CHARGER_BQ24190=m && m)
	depends on USB_ROLES_INTEL_XHCI=y || (USB_ROLES_INTEL_XHCI=m && m)
	depends on TYPEC_MUX_PI3USB30532=y || (TYPEC_MUX_PI3USB30532=m && m)
770
	---help---
771 772
	  This driver add support for the INT33FE ACPI device found on
	  some Intel Cherry Trail devices.
773

774 775
	  There are two kinds of INT33FE ACPI device possible: for hardware
	  with USB Type-C and Micro-B connectors. This driver supports both.
776

777 778 779 780 781
	  The INT33FE ACPI device has a CRS table with I2cSerialBusV2
	  resources for Fuel Gauge Controller and (in the Type-C variant)
	  FUSB302 USB Type-C Controller and PI3USB30532 USB switch.
	  This driver instantiates i2c-clients for these, so that standard
	  i2c drivers for these chips can bind to the them.
782

783 784 785 786
	  If you enable this driver it is advised to also select
	  CONFIG_BATTERY_BQ27XXX=m or CONFIG_BATTERY_BQ27XXX_I2C=m for Micro-B
	  device and CONFIG_TYPEC_FUSB302=m and CONFIG_BATTERY_MAX17042=m
	  for Type-C device.
787

788 789 790
config INTEL_HID_EVENT
	tristate "INTEL HID Event"
	depends on ACPI
791
	depends on INPUT
I
Ingo Molnar 已提交
792
	select INPUT_SPARSEKMAP
793 794 795
	help
	  This driver provides support for the Intel HID Event hotkey interface.
	  Some laptops require this driver for hotkey support.
796 797

	  To compile this driver as a module, choose M here: the module will
798
	  be called intel_hid.
799

800 801 802 803
config INTEL_INT0002_VGPIO
	tristate "Intel ACPI INT0002 Virtual GPIO driver"
	depends on GPIOLIB && ACPI
	select GPIOLIB_IRQCHIP
804
	---help---
805 806 807 808 809
	  Some peripherals on Bay Trail and Cherry Trail platforms signal a
	  Power Management Event (PME) to the Power Management Controller (PMC)
	  to wakeup the system. When this happens software needs to explicitly
	  clear the PME bus 0 status bit in the GPE0a_STS register to avoid an
	  IRQ storm on IRQ 9.
810

811 812 813 814
	  This is modelled in ACPI through the INT0002 ACPI device, which is
	  called a "Virtual GPIO controller" in ACPI because it defines the
	  event handler to call when the PME triggers through _AEI and _L02
	  methods as would be done for a real GPIO interrupt in ACPI.
815

816 817
	  To compile this driver as a module, choose M here: the module will
	  be called intel_int0002_vgpio.
818

819 820 821 822
config INTEL_MENLOW
	tristate "Thermal Management driver for Intel menlow platform"
	depends on ACPI_THERMAL
	select THERMAL
823
	---help---
824 825
	  ACPI thermal management enhancement driver on
	  Intel Menlow platform.
826

827
	  If unsure, say N.
828

829 830
config INTEL_OAKTRAIL
	tristate "Intel Oaktrail Platform Extras"
831
	depends on ACPI
832 833
	depends on ACPI_VIDEO || ACPI_VIDEO = n
	depends on RFKILL && BACKLIGHT_CLASS_DEVICE && ACPI
834
	---help---
835 836 837
	  Intel Oaktrail platform need this driver to provide interfaces to
	  enable/disable the Camera, WiFi, BT etc. devices. If in doubt, say Y
	  here; it will only load on supported platforms.
838

839 840
config INTEL_VBTN
	tristate "INTEL VIRTUAL BUTTON"
841
	depends on ACPI
842 843
	depends on INPUT
	select INPUT_SPARSEKMAP
844
	help
845 846
	  This driver provides support for the Intel Virtual Button interface.
	  Some laptops require this driver for power button support.
847

848 849
	  To compile this driver as a module, choose M here: the module will
	  be called intel_vbtn.
850

851 852
config SURFACE3_WMI
	tristate "Surface 3 WMI Driver"
853
	depends on ACPI_WMI
854 855 856
	depends on DMI
	depends on INPUT
	depends on SPI
857
	---help---
858
	  Say Y here if you have a Surface 3.
859 860

	  To compile this driver as a module, choose M here: the module will
861
	  be called surface3-wmi.
862

863 864 865
config SURFACE_3_BUTTON
	tristate "Power/home/volume buttons driver for Microsoft Surface 3 tablet"
	depends on ACPI && KEYBOARD_GPIO && I2C
866
	---help---
867
	  This driver handles the power/home/volume buttons on the Microsoft Surface 3 tablet.
868

869 870 871 872 873 874
config SURFACE_3_POWER_OPREGION
	tristate "Surface 3 battery platform operation region support"
	depends on ACPI && I2C
	help
	  This driver provides support for ACPI operation
	  region of the Surface 3 battery platform driver.
875

876 877 878 879 880
config SURFACE_PRO3_BUTTON
	tristate "Power/home/volume buttons driver for Microsoft Surface Pro 3/4 tablet"
	depends on ACPI && INPUT
	---help---
	  This driver handles the power/home/volume buttons on the Microsoft Surface Pro 3/4 tablet.
881

882 883 884 885 886 887 888 889 890 891 892
config MSI_LAPTOP
	tristate "MSI Laptop Extras"
	depends on ACPI
	depends on BACKLIGHT_CLASS_DEVICE
	depends on ACPI_VIDEO || ACPI_VIDEO = n
	depends on RFKILL
	depends on INPUT && SERIO_I8042
	select INPUT_SPARSEKMAP
	---help---
	  This is a driver for laptops built by MSI (MICRO-STAR
	  INTERNATIONAL):
893

894 895 896 897 898 899 900 901 902
	  MSI MegaBook S270 (MS-1013)
	  Cytron/TCM/Medion/Tchibo MD96100/SAM2000

	  It adds support for Bluetooth, WLAN and LCD brightness control.

	  More information about this driver is available at
	  <http://0pointer.de/lennart/tchibo.html>.

	  If you have an MSI S270 laptop, say Y or M here.
903

904 905 906 907
config MSI_WMI
	tristate "MSI WMI extras"
	depends on ACPI_WMI
	depends on INPUT
908
	depends on BACKLIGHT_CLASS_DEVICE
909
	depends on ACPI_VIDEO || ACPI_VIDEO = n
910
	select INPUT_SPARSEKMAP
911 912 913 914 915 916
	help
	 Say Y here if you want to support WMI-based hotkeys on MSI laptops.

	 To compile this driver as a module, choose M here: the module will
	 be called msi-wmi.

917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 935 936 937 938 939 940 941
config XO15_EBOOK
	tristate "OLPC XO-1.5 ebook switch"
	depends on OLPC || COMPILE_TEST
	depends on ACPI && INPUT
	---help---
	  Support for the ebook switch on the OLPC XO-1.5 laptop.

	  This switch is triggered as the screen is rotated and folded down to
	  convert the device into ebook form.

config XO1_RFKILL
	tristate "OLPC XO-1 software RF kill switch"
	depends on OLPC || COMPILE_TEST
	depends on RFKILL
	---help---
	  Support for enabling/disabling the WLAN interface on the OLPC XO-1
	  laptop.

config PCENGINES_APU2
	tristate "PC Engines APUv2/3 front button and LEDs driver"
	depends on INPUT && INPUT_KEYBOARD && GPIOLIB
	depends on LEDS_CLASS
	select GPIO_AMD_FCH
	select KEYBOARD_GPIO_POLLED
	select LEDS_GPIO
942
	help
943 944
	  This driver provides support for the front button and LEDs on
	  PC Engines APUv2/APUv3 board.
945

946 947 948 949 950 951 952 953
	  To compile this driver as a module, choose M here: the module
	  will be called pcengines-apuv2.

config SAMSUNG_LAPTOP
	tristate "Samsung Laptop driver"
	depends on RFKILL || RFKILL = n
	depends on ACPI_VIDEO || ACPI_VIDEO = n
	depends on BACKLIGHT_CLASS_DEVICE
954 955
	select LEDS_CLASS
	select NEW_LEDS
956
	---help---
957 958 959
	  This module implements a driver for a wide range of different
	  Samsung laptops.  It offers control over the different
	  function keys, wireless LED, LCD backlight level.
960

961 962
	  It may also provide some sysfs files described in
	  <file:Documentation/ABI/testing/sysfs-driver-samsung-laptop>
963

964 965 966 967 968
	  To compile this driver as a module, choose M here: the module
	  will be called samsung-laptop.

config SAMSUNG_Q10
	tristate "Samsung Q10 Extras"
969
	depends on ACPI
970 971 972 973 974 975 976
	select BACKLIGHT_CLASS_DEVICE
	---help---
	  This driver provides support for backlight control on Samsung Q10
	  and related laptops, including Dell Latitude X200.

config ACPI_TOSHIBA
	tristate "Toshiba Laptop Extras"
977
	depends on ACPI
978
	depends on ACPI_WMI
979 980
	select LEDS_CLASS
	select NEW_LEDS
981
	depends on BACKLIGHT_CLASS_DEVICE
982
	depends on INPUT
983
	depends on SERIO_I8042 || SERIO_I8042 = n
984
	depends on ACPI_VIDEO || ACPI_VIDEO = n
985
	depends on RFKILL || RFKILL = n
986
	depends on IIO
987
	select INPUT_SPARSEKMAP
988 989 990 991 992 993 994 995 996 997 998 999 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009
	---help---
	  This driver adds support for access to certain system settings
	  on "legacy free" Toshiba laptops.  These laptops can be recognized by
	  their lack of a BIOS setup menu and APM support.

	  On these machines, all system configuration is handled through the
	  ACPI.  This driver is required for access to controls not covered
	  by the general ACPI drivers, such as LCD brightness, video output,
	  etc.

	  This driver differs from the non-ACPI Toshiba laptop driver (located
	  under "Processor type and features") in several aspects.
	  Configuration is accessed by reading and writing text files in the
	  /proc tree instead of by program interface to /dev.  Furthermore, no
	  power management functions are exposed, as those are handled by the
	  general ACPI drivers.

	  More information about this driver is available at
	  <http://memebeam.org/toys/ToshibaAcpiDriver>.

	  If you have a legacy free Toshiba laptop (such as the Libretto L1
	  series), say Y.
1010 1011 1012 1013

config TOSHIBA_BT_RFKILL
	tristate "Toshiba Bluetooth RFKill switch support"
	depends on ACPI
1014
	depends on RFKILL || RFKILL = n
1015 1016 1017 1018 1019 1020 1021 1022 1023 1024 1025
	---help---
	  This driver adds support for Bluetooth events for the RFKill
	  switch on modern Toshiba laptops with full ACPI support and
	  an RFKill switch.

	  This driver handles RFKill events for the TOS6205 Bluetooth,
	  and re-enables it when the switch is set back to the 'on'
	  position.

	  If you have a modern Toshiba laptop with a Bluetooth and an
	  RFKill switch (such as the Portege R500), say Y.
1026

1027 1028 1029 1030 1031
config TOSHIBA_HAPS
	tristate "Toshiba HDD Active Protection Sensor"
	depends on ACPI
	---help---
	  This driver adds support for the built-in accelerometer
1032
	  found on recent Toshiba laptops equipped with HID TOS620A
1033 1034 1035 1036 1037 1038 1039 1040
	  device.

	  This driver receives ACPI notify events 0x80 when the sensor
	  detects a sudden move or a harsh vibration, as well as an
	  ACPI notify event 0x81 whenever the movement or vibration has
	  been stabilized.

	  Also provides sysfs entries to get/set the desired protection
1041
	  level and resetting the HDD protection interface.
1042 1043 1044 1045

	  If you have a recent Toshiba laptop with a built-in accelerometer
	  device, say Y.

1046 1047 1048 1049 1050 1051 1052 1053 1054 1055 1056 1057
config TOSHIBA_WMI
	tristate "Toshiba WMI Hotkeys Driver (EXPERIMENTAL)"
	depends on ACPI_WMI
	depends on INPUT
	select INPUT_SPARSEKMAP
	---help---
	  This driver adds hotkey monitoring support to some Toshiba models
	  that manage the hotkeys via WMI events.

	  WARNING: This driver is incomplete as it lacks a proper keymap and the
	  *notify function only prints the ACPI event type value. Be warned that
	  you will need to provide some information if you have a Toshiba model
M
Masanari Iida 已提交
1058
	  with WMI event hotkeys and want to help with the development of this
1059 1060 1061 1062
	  driver.

	  If you have a WMI-based hotkeys Toshiba laptop, say Y or M here.

1063 1064
config ACPI_CMPC
	tristate "CMPC Laptop Extras"
1065
	depends on ACPI && INPUT
1066
	depends on RFKILL || RFKILL=n
1067 1068 1069 1070 1071 1072
	select BACKLIGHT_CLASS_DEVICE
	help
	  Support for Intel Classmate PC ACPI devices, including some
	  keys as input device, backlight device, tablet and accelerometer
	  devices.

1073 1074 1075 1076 1077 1078 1079 1080
config COMPAL_LAPTOP
	tristate "Compal (and others) Laptop Extras"
	depends on ACPI
	depends on BACKLIGHT_CLASS_DEVICE
	depends on ACPI_VIDEO || ACPI_VIDEO = n
	depends on RFKILL
	depends on HWMON
	depends on POWER_SUPPLY
1081
	---help---
1082 1083
	  This is a driver for laptops built by Compal, and some models by
	  other brands (e.g. Dell, Toshiba).
1084

1085 1086
	  It adds support for rfkill, Bluetooth, WLAN, LCD brightness, hwmon
	  and battery charging level control.
1087

1088 1089 1090 1091 1092 1093 1094 1095 1096 1097 1098
config LG_LAPTOP
	tristate "LG Laptop Extras"
	depends on ACPI
	depends on ACPI_WMI
	depends on INPUT
	select INPUT_SPARSEKMAP
	select LEDS_CLASS
	help
	 This driver adds support for hotkeys as well as control of keyboard
	 backlight, battery maximum charge level and various other ACPI
	 features.
1099

1100 1101 1102 1103 1104 1105 1106 1107 1108 1109
	 If you have an LG Gram laptop, say Y or M here.

config PANASONIC_LAPTOP
	tristate "Panasonic Laptop Extras"
	depends on INPUT && ACPI
	depends on BACKLIGHT_CLASS_DEVICE
	select INPUT_SPARSEKMAP
	---help---
	  This driver adds support for access to backlight control and hotkeys
	  on Panasonic Let's Note laptops.
1110

1111 1112
	  If you have a Panasonic Let's note laptop (such as the R1(N variant),
	  R2, R3, R5, T2, W2 and Y2 series), say Y.
1113

1114 1115 1116 1117 1118 1119 1120
config SONY_LAPTOP
	tristate "Sony Laptop Extras"
	depends on ACPI
	depends on ACPI_VIDEO || ACPI_VIDEO = n
	depends on BACKLIGHT_CLASS_DEVICE
	depends on INPUT
	depends on RFKILL
1121
	---help---
1122 1123
	  This mini-driver drives the SNC and SPIC devices present in the ACPI
	  BIOS of the Sony Vaio laptops.
1124

1125 1126 1127
	  It gives access to some extra laptop functionalities like Bluetooth,
	  screen brightness control, Fn keys and allows powering on/off some
	  devices.
1128

1129
	  Read <file:Documentation/admin-guide/laptops/sony-laptop.rst> for more information.
1130

1131 1132 1133 1134 1135 1136 1137 1138
config SONYPI_COMPAT
	bool "Sonypi compatibility"
	depends on SONY_LAPTOP
	---help---
	  Build the sonypi driver compatibility code into the sony-laptop driver.

config SYSTEM76_ACPI
	tristate "System76 ACPI Driver"
1139
	depends on ACPI
1140 1141 1142
	select NEW_LEDS
	select LEDS_CLASS
	select LEDS_TRIGGERS
1143
	help
1144 1145 1146
	  This is a driver for System76 laptops running open firmware. It adds
	  support for Fn-Fx key combinations, keyboard backlight, and airplane mode
	  LEDs.
1147

1148
	  If you have a System76 laptop running open firmware, say Y or M here.
1149

1150 1151
config TOPSTAR_LAPTOP
	tristate "Topstar Laptop Extras"
1152 1153 1154
	depends on ACPI
	depends on INPUT
	select INPUT_SPARSEKMAP
1155 1156
	select LEDS_CLASS
	select NEW_LEDS
1157
	---help---
1158
	  This driver adds support for hotkeys found on Topstar laptops.
1159

1160
	  If you have a Topstar laptop, say Y or M here.
1161

1162 1163 1164
config I2C_MULTI_INSTANTIATE
	tristate "I2C multi instantiate pseudo device driver"
	depends on I2C && ACPI
1165
	help
1166 1167 1168
	  Some ACPI-based systems list multiple i2c-devices in a single ACPI
	  firmware-node. This driver will instantiate separate i2c-clients
	  for each device in the firmware-node.
1169

1170 1171
	  To compile this driver as a module, choose M here: the module
	  will be called i2c-multi-instantiate.
1172

1173 1174 1175 1176 1177 1178 1179 1180 1181
config MLX_PLATFORM
	tristate "Mellanox Technologies platform support"
	depends on I2C && REGMAP
	---help---
	  This option enables system support for the Mellanox Technologies
	  platform. The Mellanox systems provide data center networking
	  solutions based on Virtual Protocol Interconnect (VPI) technology
	  enable seamless connectivity to 56/100Gb/s InfiniBand or 10/40/56GbE
	  connection.
D
Durgadoss R 已提交
1182

1183 1184 1185 1186 1187
	  If you have a Mellanox system, say Y or M here.

config TOUCHSCREEN_DMI
	bool "DMI based touchscreen configuration info"
	depends on ACPI && DMI && I2C=y && TOUCHSCREEN_SILEAD
1188
	select EFI_EMBEDDED_FIRMWARE if EFI
1189
	---help---
1190 1191 1192 1193 1194 1195
	  Certain ACPI based tablets with e.g. Silead or Chipone touchscreens
	  do not have enough data in ACPI tables for the touchscreen driver to
	  handle the touchscreen properly, as OEMs expect the data to be baked
	  into the tablet model specific version of the driver shipped with the
	  the OS-image for the device. This option supplies the missing info.
	  Enable this for x86 tablets with Silead or Chipone touchscreens.
1196

1197 1198 1199 1200 1201 1202 1203 1204 1205 1206 1207 1208
config INTEL_IMR
	bool "Intel Isolated Memory Region support"
	depends on X86_INTEL_QUARK && IOSF_MBI
	---help---
	  This option provides a means to manipulate Isolated Memory Regions.
	  IMRs are a set of registers that define read and write access masks
	  to prohibit certain system agents from accessing memory with 1 KiB
	  granularity.

	  IMRs make it possible to control read/write access to an address
	  by hardware agents inside the SoC. Read and write masks can be
	  defined for:
1209 1210 1211 1212 1213 1214
		- eSRAM flush
		- Dirty CPU snoop (write only)
		- RMU access
		- PCI Virtual Channel 0/Virtual Channel 1
		- SMM mode
		- Non SMM mode
1215

1216 1217
	  Quark contains a set of eight IMR registers and makes use of those
	  registers during its bootup process.
1218

1219 1220 1221 1222
	  If you are running on a Galileo/Quark say Y here.

config INTEL_IPS
	tristate "Intel Intelligent Power Sharing"
1223
	depends on ACPI && PCI
1224
	---help---
1225 1226 1227 1228 1229
	  Intel Calpella platforms support dynamic power sharing between the
	  CPU and GPU, maximizing performance in a given TDP.  This driver,
	  along with the CPU frequency and i915 drivers, provides that
	  functionality.  If in doubt, say Y here; it will only load on
	  supported platforms.
1230

1231 1232 1233 1234
config INTEL_RST
        tristate "Intel Rapid Start Technology Driver"
	depends on ACPI
	---help---
1235
	  This driver provides support for modifying parameters on systems
1236 1237 1238 1239 1240 1241 1242
	  equipped with Intel's Rapid Start Technology. When put in an ACPI
	  sleep state, these devices will wake after either a configured
	  timeout or when the system battery reaches a critical state,
	  automatically copying memory contents to disk. On resume, the
	  firmware will copy the memory contents back to RAM and resume the OS
	  as usual.

1243 1244 1245 1246 1247 1248 1249 1250 1251 1252 1253 1254 1255 1256
config INTEL_SMARTCONNECT
        tristate "Intel Smart Connect disabling driver"
	depends on ACPI
	---help---
	  Intel Smart Connect is a technology intended to permit devices to
	  update state by resuming for a short period of time at regular
	  intervals. If a user enables this functionality under Windows and
	  then reboots into Linux, the system may remain configured to resume
	  on suspend. In the absence of any userspace to support it, the system
	  will then remain awake until something triggers another suspend.

	  This driver checks to determine whether the device has Intel Smart
	  Connect enabled, and if so disables it.

1257
source "drivers/platform/x86/intel_speed_select_if/Kconfig"
1258

1259 1260 1261 1262 1263 1264 1265 1266 1267 1268
config INTEL_TURBO_MAX_3
	bool "Intel Turbo Boost Max Technology 3.0 enumeration driver"
	depends on X86_64 && SCHED_MC_PRIO
	---help---
	  This driver reads maximum performance ratio of each CPU and set up
	  the scheduler priority metrics. In this way scheduler can prefer
	  CPU with higher performance to schedule tasks.
	  This driver is only required when the system is not using Hardware
	  P-States (HWP). In HWP mode, priority can be read from ACPI tables.

1269 1270 1271 1272 1273 1274 1275 1276 1277 1278 1279 1280 1281 1282
config INTEL_UNCORE_FREQ_CONTROL
	tristate "Intel Uncore frequency control driver"
	depends on X86_64
	help
	  This driver allows control of uncore frequency limits on
	  supported server platforms.
	  Uncore frequency controls RING/LLC (last-level cache) clocks.

	  To compile this driver as a module, choose M here: the module
	  will be called intel-uncore-frequency.

config INTEL_BXTWC_PMIC_TMU
	tristate "Intel BXT Whiskey Cove TMU Driver"
	depends on REGMAP
1283 1284
	depends on MFD_INTEL_PMC_BXT
	depends on INTEL_SOC_PMIC_BXTWC
1285
	---help---
1286 1287 1288
	  Select this driver to use Intel BXT Whiskey Cove PMIC TMU feature.
	  This driver enables the alarm wakeup functionality in the TMU unit
	  of Whiskey Cove PMIC.
1289

1290 1291 1292 1293 1294 1295 1296 1297 1298 1299 1300
config INTEL_CHTDC_TI_PWRBTN
	tristate "Intel Cherry Trail Dollar Cove TI power button driver"
	depends on INTEL_SOC_PMIC_CHTDC_TI
	depends on INPUT
	---help---
	  This option adds a power button driver driver for Dollar Cove TI
	  PMIC on Intel Cherry Trail devices.

	  To compile this driver as a module, choose M here: the module
	  will be called intel_chtdc_ti_pwrbtn.

1301 1302 1303 1304 1305 1306 1307 1308 1309
config INTEL_MFLD_THERMAL
       tristate "Thermal driver for Intel Medfield platform"
       depends on MFD_INTEL_MSIC && THERMAL
       help
         Say Y here to enable thermal driver support for the  Intel Medfield
         platform.

config INTEL_MID_POWER_BUTTON
	tristate "power button driver for Intel MID platforms"
1310
	depends on INTEL_SCU && INPUT
1311 1312 1313 1314 1315
	help
	  This driver handles the power button on the Intel MID platforms.

	  If unsure, say N.

1316 1317 1318 1319 1320 1321 1322 1323 1324 1325 1326
config INTEL_MRFLD_PWRBTN
	tristate "Intel Merrifield Basin Cove power button driver"
	depends on INTEL_SOC_PMIC_MRFLD
	depends on INPUT
	---help---
	  This option adds a power button driver for Basin Cove PMIC
	  on Intel Merrifield devices.

	  To compile this driver as a module, choose M here: the module
	  will be called intel_mrfld_pwrbtn.

1327 1328 1329 1330 1331 1332 1333 1334
config INTEL_PMC_CORE
	tristate "Intel PMC Core driver"
	depends on PCI
	---help---
	  The Intel Platform Controller Hub for Intel Core SoCs provides access
	  to Power Management Controller registers via a PCI interface. This
	  driver can utilize debugging capabilities and supported features as
	  exposed by the Power Management Controller.
1335

1336 1337 1338 1339 1340
	  Supported features:
		- SLP_S0_RESIDENCY counter
		- PCH IP Power Gating status
		- LTR Ignore
		- MPHY/PLL gating status (Sunrisepoint PCH only)
1341

1342 1343 1344 1345 1346
config INTEL_PUNIT_IPC
	tristate "Intel P-Unit IPC Driver"
	---help---
	  This driver provides support for Intel P-Unit Mailbox IPC mechanism,
	  which is used to bridge the communications between kernel and P-Unit.
1347

1348
config INTEL_SCU_IPC
1349 1350 1351 1352 1353 1354 1355 1356
	bool

config INTEL_SCU
	bool
	select INTEL_SCU_IPC

config INTEL_SCU_PCI
	bool "Intel SCU PCI driver"
1357
	depends on PCI
1358 1359 1360 1361
	select INTEL_SCU
	help
	  This driver is used to bridge the communications between kernel
	  and SCU on some embedded Intel x86 platforms. It also creates
1362 1363 1364 1365 1366 1367 1368
	  devices that are connected to the SoC through the SCU.
	  Platforms supported:
	    Medfield
	    Clovertrail
	    Merrifield
	    Broxton
	    Apollo Lake
1369

1370 1371 1372 1373 1374 1375 1376 1377 1378
config INTEL_SCU_PLATFORM
	tristate "Intel SCU platform driver"
	depends on ACPI
	select INTEL_SCU
	help
	  This driver is used to bridge the communications between kernel
	  and SCU (sometimes called PMC as well). The driver currently
	  supports Intel Elkhart Lake and compatible platforms.

1379 1380
config INTEL_SCU_IPC_UTIL
	tristate "Intel SCU IPC utility driver"
1381
	depends on INTEL_SCU
1382 1383 1384 1385
	---help---
	  The IPC Util driver provides an interface with the SCU enabling
	  low level access for debug work and updating the firmware. Say
	  N unless you will be doing this on an Intel MID platform.
1386

1387 1388
config INTEL_TELEMETRY
	tristate "Intel SoC Telemetry Driver"
1389 1390 1391
	depends on X86_64
	depends on MFD_INTEL_PMC_BXT
	depends on INTEL_PUNIT_IPC
1392 1393 1394 1395 1396 1397
	---help---
	  This driver provides interfaces to configure and use
	  telemetry for INTEL SoC from APL onwards. It is also
	  used to get various SoC events and parameters
	  directly via debugfs files. Various tools may use
	  this interface for SoC state monitoring.
1398

1399
endif # X86_PLATFORM_DEVICES
1400 1401 1402 1403

config PMC_ATOM
       def_bool y
       depends on PCI
1404
       select COMMON_CLK