1# SPDX-License-Identifier: GPL-2.0-only 2# 3# X86 Platform Specific Drivers 4# 5 6menuconfig X86_PLATFORM_DEVICES 7 bool "X86 Platform Specific Device Drivers" 8 default y 9 depends on X86 10 help 11 Say Y here to get to see options for device drivers for various 12 x86 platforms, including vendor-specific laptop extension 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 X86_PLATFORM_DEVICES 18 19config ACPI_WMI 20 tristate "WMI" 21 depends on ACPI 22 help 23 This driver adds support for the ACPI-WMI (Windows Management 24 Instrumentation) mapper device (PNP0C14) found on some systems. 25 26 ACPI-WMI is a proprietary extension to ACPI to expose parts of the 27 ACPI firmware to userspace - this is done through various vendor 28 defined methods and data blocks in a PNP0C14 device, which are then 29 made available for userspace to call. 30 31 The implementation of this in Linux currently only exposes this to 32 other kernel space drivers. 33 34 This driver is a required dependency to build the firmware specific 35 drivers needed on many machines, including Acer and HP laptops. 36 37 It is safe to enable this driver even if your DSDT doesn't define 38 any ACPI-WMI devices. 39 40config WMI_BMOF 41 tristate "WMI embedded Binary MOF driver" 42 depends on ACPI_WMI 43 default ACPI_WMI 44 help 45 Say Y here if you want to be able to read a firmware-embedded 46 WMI Binary MOF (Managed Object Format) data. Using this requires 47 userspace tools and may be rather tedious. 48 49 To compile this driver as a module, choose M here: the module will 50 be called wmi-bmof. 51 52config HUAWEI_WMI 53 tristate "Huawei WMI laptop extras driver" 54 depends on ACPI_BATTERY 55 depends on ACPI_WMI 56 depends on INPUT 57 select INPUT_SPARSEKMAP 58 select LEDS_CLASS 59 select LEDS_TRIGGERS 60 select LEDS_TRIGGER_AUDIO 61 select NEW_LEDS 62 help 63 This driver provides support for Huawei WMI hotkeys, battery charge 64 control, fn-lock, mic-mute LED, and other extra features. 65 66 To compile this driver as a module, choose M here: the module 67 will be called huawei-wmi. 68 69config UV_SYSFS 70 tristate "Sysfs structure for UV systems" 71 depends on X86_UV 72 depends on SYSFS 73 help 74 This driver supports a sysfs tree describing information about 75 UV systems at /sys/firmware/sgi_uv/. 76 77 To compile this driver as a module, choose M here: the module will 78 be called uv_sysfs. 79 80config MXM_WMI 81 tristate "WMI support for MXM Laptop Graphics" 82 depends on ACPI_WMI 83 help 84 MXM is a standard for laptop graphics cards, the WMI interface 85 is required for switchable nvidia graphics machines 86 87config NVIDIA_WMI_EC_BACKLIGHT 88 tristate "EC Backlight Driver for Hybrid Graphics Notebook Systems" 89 depends on ACPI_VIDEO 90 depends on ACPI_WMI 91 depends on BACKLIGHT_CLASS_DEVICE 92 help 93 This driver provides a sysfs backlight interface for notebook systems 94 which are equipped with NVIDIA hybrid graphics and drive LCD backlight 95 levels through the Embedded Controller (EC). 96 97 Say Y or M here if you want to control the backlight on a notebook 98 system with an EC-driven backlight. 99 100 If you choose to compile this driver as a module the module will be 101 called nvidia-wmi-ec-backlight. 102 103config XIAOMI_WMI 104 tristate "Xiaomi WMI key driver" 105 depends on ACPI_WMI 106 depends on INPUT 107 help 108 Say Y here if you want to support WMI-based keys on Xiaomi notebooks. 109 110 To compile this driver as a module, choose M here: the module will 111 be called xiaomi-wmi. 112 113config GIGABYTE_WMI 114 tristate "Gigabyte WMI temperature driver" 115 depends on ACPI_WMI 116 depends on HWMON 117 help 118 Say Y here if you want to support WMI-based temperature reporting on 119 Gigabyte mainboards. 120 121 To compile this driver as a module, choose M here: the module will 122 be called gigabyte-wmi. 123 124config YOGABOOK 125 tristate "Lenovo Yoga Book tablet key driver" 126 depends on ACPI_WMI 127 depends on INPUT 128 depends on I2C 129 select LEDS_CLASS 130 select NEW_LEDS 131 help 132 Say Y here if you want to support the 'Pen' key and keyboard backlight 133 control on the Lenovo Yoga Book tablets. 134 135 To compile this driver as a module, choose M here: the module will 136 be called lenovo-yogabook. 137 138config ACERHDF 139 tristate "Acer Aspire One temperature and fan driver" 140 depends on ACPI && THERMAL 141 select THERMAL_GOV_BANG_BANG 142 help 143 This is a driver for Acer Aspire One netbooks. It allows to access 144 the temperature sensor and to control the fan. 145 146 After loading this driver the BIOS is still in control of the fan. 147 To let the kernel handle the fan, do: 148 echo -n enabled > /sys/class/thermal/thermal_zoneN/mode 149 where N=0,1,2... depending on the number of thermal nodes and the 150 detection order of your particular system. The "type" parameter 151 in the same node directory will tell you if it is "acerhdf". 152 153 For more information about this driver see 154 <https://piie.net/files/acerhdf_README.txt> 155 156 If you have an Acer Aspire One netbook, say Y or M 157 here. 158 159config ACER_WIRELESS 160 tristate "Acer Wireless Radio Control Driver" 161 depends on ACPI 162 depends on INPUT 163 help 164 The Acer Wireless Radio Control handles the airplane mode hotkey 165 present on new Acer laptops. 166 167 Say Y or M here if you have an Acer notebook with an airplane mode 168 hotkey. 169 170 If you choose to compile this driver as a module the module will be 171 called acer-wireless. 172 173config ACER_WMI 174 tristate "Acer WMI Laptop Extras" 175 depends on BACKLIGHT_CLASS_DEVICE 176 depends on SERIO_I8042 177 depends on INPUT 178 depends on RFKILL || RFKILL = n 179 depends on ACPI_WMI 180 select ACPI_VIDEO 181 select INPUT_SPARSEKMAP 182 select LEDS_CLASS 183 select NEW_LEDS 184 help 185 This is a driver for newer Acer (and Wistron) laptops. It adds 186 wireless radio and bluetooth control, and on some laptops, 187 exposes the mail LED and LCD backlight. 188 189 If you have an ACPI-WMI compatible Acer/ Wistron laptop, say Y or M 190 here. 191 192source "drivers/platform/x86/amd/Kconfig" 193 194config ADV_SWBUTTON 195 tristate "Advantech ACPI Software Button Driver" 196 depends on ACPI && INPUT 197 help 198 Say Y here to enable support for Advantech software defined 199 button feature. More information can be found at 200 <http://www.advantech.com.tw/products/> 201 202 To compile this driver as a module, choose M here. The module will 203 be called adv_swbutton. 204 205config APPLE_GMUX 206 tristate "Apple Gmux Driver" 207 depends on ACPI && PCI 208 depends on PNP 209 depends on BACKLIGHT_CLASS_DEVICE 210 help 211 This driver provides support for the gmux device found on many 212 Apple laptops, which controls the display mux for the hybrid 213 graphics as well as the backlight. Currently only backlight 214 control is supported by the driver. 215 216config ASUS_LAPTOP 217 tristate "Asus Laptop Extras" 218 depends on ACPI 219 select LEDS_CLASS 220 select NEW_LEDS 221 depends on BACKLIGHT_CLASS_DEVICE 222 depends on INPUT 223 depends on RFKILL || RFKILL = n 224 depends on ACPI_VIDEO || ACPI_VIDEO = n 225 select INPUT_SPARSEKMAP 226 help 227 This is a driver for Asus laptops, Lenovo SL and the Pegatron 228 Lucid tablet. It may also support some MEDION, JVC or VICTOR 229 laptops. It makes all the extra buttons generate standard 230 ACPI events and input events, and on the Lucid the built-in 231 accelerometer appears as an input device. It also adds 232 support for video output switching, LCD backlight control, 233 Bluetooth and Wlan control, and most importantly, allows you 234 to blink those fancy LEDs. 235 236 For more information see <http://acpi4asus.sf.net>. 237 238 If you have an ACPI-compatible ASUS laptop, say Y or M here. 239 240config ASUS_WIRELESS 241 tristate "Asus Wireless Radio Control Driver" 242 depends on ACPI 243 depends on INPUT 244 select NEW_LEDS 245 select LEDS_CLASS 246 help 247 The Asus Wireless Radio Control handles the airplane mode hotkey 248 present on some Asus laptops. 249 250 Say Y or M here if you have an ASUS notebook with an airplane mode 251 hotkey. 252 253 If you choose to compile this driver as a module the module will be 254 called asus-wireless. 255 256config ASUS_WMI 257 tristate "ASUS WMI Driver" 258 depends on ACPI_WMI 259 depends on ACPI_BATTERY 260 depends on INPUT 261 depends on HWMON 262 depends on BACKLIGHT_CLASS_DEVICE 263 depends on RFKILL || RFKILL = n 264 depends on HOTPLUG_PCI 265 depends on ACPI_VIDEO || ACPI_VIDEO = n 266 depends on SERIO_I8042 || SERIO_I8042 = n 267 select INPUT_SPARSEKMAP 268 select LEDS_CLASS 269 select NEW_LEDS 270 select LEDS_TRIGGERS 271 select LEDS_TRIGGER_AUDIO 272 select ACPI_PLATFORM_PROFILE 273 help 274 Say Y here if you have a WMI aware Asus laptop (like Eee PCs or new 275 Asus Notebooks). 276 277 To compile this driver as a module, choose M here: the module will 278 be called asus-wmi. 279 280config ASUS_NB_WMI 281 tristate "Asus Notebook WMI Driver" 282 depends on ASUS_WMI 283 help 284 This is a driver for newer Asus notebooks. It adds extra features 285 like wireless radio and bluetooth control, leds, hotkeys, backlight... 286 287 For more information, see 288 <file:Documentation/ABI/testing/sysfs-platform-asus-wmi> 289 290 If you have an ACPI-WMI compatible Asus Notebook, say Y or M 291 here. 292 293config ASUS_TF103C_DOCK 294 tristate "Asus TF103C 2-in-1 keyboard dock" 295 depends on ACPI 296 depends on I2C 297 depends on INPUT 298 depends on HID 299 depends on GPIOLIB 300 help 301 This is a driver for the keyboard, touchpad and USB port of the 302 keyboard dock for the Asus TF103C 2-in-1 tablet. 303 304 This keyboard dock has its own I2C attached embedded controller 305 and the keyboard and touchpad are also connected over I2C, 306 instead of using the usual USB connection. This means that the 307 keyboard dock requires this special driver to function. 308 309 If you have an Asus TF103C tablet say Y or M here, for a generic x86 310 distro config say M here. 311 312config MERAKI_MX100 313 tristate "Cisco Meraki MX100 Platform Driver" 314 depends on GPIOLIB 315 depends on GPIO_ICH 316 depends on LEDS_CLASS 317 select LEDS_GPIO 318 help 319 This driver provides support for the front button and LEDs on 320 the Cisco Meraki MX100 (Tinkerbell) 1U appliance. 321 322 To compile this driver as a module, choose M here: the module 323 will be called meraki-mx100. 324 325config EEEPC_LAPTOP 326 tristate "Eee PC Hotkey Driver" 327 depends on ACPI 328 depends on INPUT 329 depends on RFKILL || RFKILL = n 330 depends on ACPI_VIDEO || ACPI_VIDEO = n 331 depends on HOTPLUG_PCI 332 depends on BACKLIGHT_CLASS_DEVICE 333 select HWMON 334 select LEDS_CLASS 335 select NEW_LEDS 336 select INPUT_SPARSEKMAP 337 help 338 This driver supports the Fn-Fx keys on Eee PC laptops. 339 340 It also gives access to some extra laptop functionalities like 341 Bluetooth, backlight and allows powering on/off some other 342 devices. 343 344 If you have an Eee PC laptop, say Y or M here. If this driver 345 doesn't work on your Eee PC, try eeepc-wmi instead. 346 347config EEEPC_WMI 348 tristate "Eee PC WMI Driver" 349 depends on ASUS_WMI 350 help 351 This is a driver for newer Eee PC laptops. It adds extra features 352 like wireless radio and bluetooth control, leds, hotkeys, backlight... 353 354 For more information, see 355 <file:Documentation/ABI/testing/sysfs-platform-asus-wmi> 356 357 If you have an ACPI-WMI compatible Eee PC laptop (>= 1000), say Y or M 358 here. 359 360source "drivers/platform/x86/dell/Kconfig" 361 362config AMILO_RFKILL 363 tristate "Fujitsu-Siemens Amilo rfkill support" 364 depends on RFKILL 365 depends on SERIO_I8042 366 help 367 This is a driver for enabling wifi on some Fujitsu-Siemens Amilo 368 laptops. 369 370config FUJITSU_LAPTOP 371 tristate "Fujitsu Laptop Extras" 372 depends on ACPI 373 depends on INPUT 374 depends on BACKLIGHT_CLASS_DEVICE 375 depends on ACPI_VIDEO || ACPI_VIDEO = n 376 select INPUT_SPARSEKMAP 377 select NEW_LEDS 378 select LEDS_CLASS 379 help 380 This is a driver for laptops built by Fujitsu: 381 382 * P2xxx/P5xxx/S6xxx/S7xxx series Lifebooks 383 * Possibly other Fujitsu laptop models 384 * Tested with S6410 and S7020 385 386 It adds support for LCD brightness control and some hotkeys. 387 388 If you have a Fujitsu laptop, say Y or M here. 389 390config FUJITSU_TABLET 391 tristate "Fujitsu Tablet Extras" 392 depends on ACPI 393 depends on INPUT 394 help 395 This is a driver for tablets built by Fujitsu: 396 397 * Lifebook P1510/P1610/P1620/Txxxx 398 * Stylistic ST5xxx 399 * Possibly other Fujitsu tablet models 400 401 It adds support for the panel buttons, docking station detection, 402 tablet/notebook mode detection for convertible and 403 orientation detection for docked slates. 404 405 If you have a Fujitsu convertible or slate, say Y or M here. 406 407config GPD_POCKET_FAN 408 tristate "GPD Pocket Fan Controller support" 409 depends on ACPI 410 depends on THERMAL 411 help 412 Driver for the GPD Pocket vendor specific FAN02501 ACPI device 413 which controls the fan speed on the GPD Pocket. 414 415 Without this driver the fan on the Pocket will stay off independent 416 of the CPU temperature. Say Y or M if the kernel may be used on a 417 GPD pocket. 418 419source "drivers/platform/x86/hp/Kconfig" 420 421config WIRELESS_HOTKEY 422 tristate "Wireless hotkey button" 423 depends on ACPI 424 depends on INPUT 425 help 426 This driver provides supports for the wireless buttons found on some AMD, 427 HP, & Xioami laptops. 428 On such systems the driver should load automatically (via ACPI alias). 429 430 To compile this driver as a module, choose M here: the module will 431 be called wireless-hotkey. 432 433config IBM_RTL 434 tristate "Device driver to enable PRTL support" 435 depends on PCI 436 help 437 Enable support for IBM Premium Real Time Mode (PRTM). 438 This module will allow you the enter and exit PRTM in the BIOS via 439 sysfs on platforms that support this feature. System in PRTM will 440 not receive CPU-generated SMIs for recoverable errors. Use of this 441 feature without proper support may void your hardware warranty. 442 443 If the proper BIOS support is found the driver will load and create 444 /sys/devices/system/ibm_rtl/. The "state" variable will indicate 445 whether or not the BIOS is in PRTM. 446 state = 0 (BIOS SMIs on) 447 state = 1 (BIOS SMIs off) 448 449config IDEAPAD_LAPTOP 450 tristate "Lenovo IdeaPad Laptop Extras" 451 depends on ACPI 452 depends on RFKILL && INPUT 453 depends on SERIO_I8042 454 depends on BACKLIGHT_CLASS_DEVICE 455 depends on ACPI_VIDEO || ACPI_VIDEO = n 456 depends on ACPI_WMI || ACPI_WMI = n 457 select ACPI_PLATFORM_PROFILE 458 select INPUT_SPARSEKMAP 459 select NEW_LEDS 460 select LEDS_CLASS 461 help 462 This is a driver for Lenovo IdeaPad netbooks contains drivers for 463 rfkill switch, hotkey, fan control and backlight control. 464 465config LENOVO_YMC 466 tristate "Lenovo Yoga Tablet Mode Control" 467 depends on ACPI_WMI 468 depends on INPUT 469 depends on IDEAPAD_LAPTOP 470 select INPUT_SPARSEKMAP 471 help 472 This driver maps the Tablet Mode Control switch to SW_TABLET_MODE input 473 events for Lenovo Yoga notebooks. 474 475config SENSORS_HDAPS 476 tristate "Thinkpad Hard Drive Active Protection System (hdaps)" 477 depends on INPUT 478 help 479 This driver provides support for the IBM Hard Drive Active Protection 480 System (hdaps), which provides an accelerometer and other misc. data. 481 ThinkPads starting with the R50, T41, and X40 are supported. The 482 accelerometer data is readable via sysfs. 483 484 This driver also provides an absolute input class device, allowing 485 the laptop to act as a pinball machine-esque joystick. 486 487 If your ThinkPad is not recognized by the driver, please update to latest 488 BIOS. This is especially the case for some R52 ThinkPads. 489 490 Say Y here if you have an applicable laptop and want to experience 491 the awesome power of hdaps. 492 493config THINKPAD_ACPI 494 tristate "ThinkPad ACPI Laptop Extras" 495 depends on ACPI 496 depends on ACPI_BATTERY 497 depends on INPUT 498 depends on RFKILL || RFKILL = n 499 depends on ACPI_VIDEO || ACPI_VIDEO = n 500 depends on BACKLIGHT_CLASS_DEVICE 501 depends on I2C 502 depends on DRM 503 select ACPI_PLATFORM_PROFILE 504 select DRM_PRIVACY_SCREEN 505 select HWMON 506 select NVRAM 507 select NEW_LEDS 508 select LEDS_CLASS 509 select LEDS_TRIGGERS 510 select LEDS_TRIGGER_AUDIO 511 help 512 This is a driver for the IBM and Lenovo ThinkPad laptops. It adds 513 support for Fn-Fx key combinations, Bluetooth control, video 514 output switching, ThinkLight control, UltraBay eject and more. 515 For more information about this driver see 516 <file:Documentation/admin-guide/laptops/thinkpad-acpi.rst> and 517 <http://ibm-acpi.sf.net/> . 518 519 This driver was formerly known as ibm-acpi. 520 521 Extra functionality will be available if the rfkill (CONFIG_RFKILL) 522 and/or ALSA (CONFIG_SND) subsystems are available in the kernel. 523 Note that if you want ThinkPad-ACPI to be built-in instead of 524 modular, ALSA and rfkill will also have to be built-in. 525 526 If you have an IBM or Lenovo ThinkPad laptop, say Y or M here. 527 528config THINKPAD_ACPI_ALSA_SUPPORT 529 bool "Console audio control ALSA interface" 530 depends on THINKPAD_ACPI 531 depends on SND 532 depends on SND = y || THINKPAD_ACPI = SND 533 default y 534 help 535 Enables monitoring of the built-in console audio output control 536 (headphone and speakers), which is operated by the mute and (in 537 some ThinkPad models) volume hotkeys. 538 539 If this option is enabled, ThinkPad-ACPI will export an ALSA card 540 with a single read-only mixer control, which should be used for 541 on-screen-display feedback purposes by the Desktop Environment. 542 543 Optionally, the driver will also allow software control (the 544 ALSA mixer will be made read-write). Please refer to the driver 545 documentation for details. 546 547 All IBM models have both volume and mute control. Newer Lenovo 548 models only have mute control (the volume hotkeys are just normal 549 keys and volume control is done through the main HDA mixer). 550 551config THINKPAD_ACPI_DEBUGFACILITIES 552 bool "Maintainer debug facilities" 553 depends on THINKPAD_ACPI 554 help 555 Enables extra stuff in the thinkpad-acpi which is completely useless 556 for normal use. Read the driver source to find out what it does. 557 558 Say N here, unless you were told by a kernel maintainer to do 559 otherwise. 560 561config THINKPAD_ACPI_DEBUG 562 bool "Verbose debug mode" 563 depends on THINKPAD_ACPI 564 help 565 Enables extra debugging information, at the expense of a slightly 566 increase in driver size. 567 568 If you are not sure, say N here. 569 570config THINKPAD_ACPI_UNSAFE_LEDS 571 bool "Allow control of important LEDs (unsafe)" 572 depends on THINKPAD_ACPI 573 help 574 Overriding LED state on ThinkPads can mask important 575 firmware alerts (like critical battery condition), or misled 576 the user into damaging the hardware (undocking or ejecting 577 the bay while buses are still active), etc. 578 579 LED control on the ThinkPad is write-only (with very few 580 exceptions on very ancient models), which makes it 581 impossible to know beforehand if important information will 582 be lost when one changes LED state. 583 584 Users that know what they are doing can enable this option 585 and the driver will allow control of every LED, including 586 the ones on the dock stations. 587 588 Never enable this option on a distribution kernel. 589 590 Say N here, unless you are building a kernel for your own 591 use, and need to control the important firmware LEDs. 592 593config THINKPAD_ACPI_VIDEO 594 bool "Video output control support" 595 depends on THINKPAD_ACPI 596 default y 597 help 598 Allows the thinkpad_acpi driver to provide an interface to control 599 the various video output ports. 600 601 This feature often won't work well, depending on ThinkPad model, 602 display state, video output devices in use, whether there is a X 603 server running, phase of the moon, and the current mood of 604 Schroedinger's cat. If you can use X.org's RandR to control 605 your ThinkPad's video output ports instead of this feature, 606 don't think twice: do it and say N here to save memory and avoid 607 bad interactions with X.org. 608 609 NOTE: access to this feature is limited to processes with the 610 CAP_SYS_ADMIN capability, to avoid local DoS issues in platforms 611 where it interacts badly with X.org. 612 613 If you are not sure, say Y here but do try to check if you could 614 be using X.org RandR instead. 615 616config THINKPAD_ACPI_HOTKEY_POLL 617 bool "Support NVRAM polling for hot keys" 618 depends on THINKPAD_ACPI 619 default y 620 help 621 Some thinkpad models benefit from NVRAM polling to detect a few of 622 the hot key press events. If you know your ThinkPad model does not 623 need to do NVRAM polling to support any of the hot keys you use, 624 unselecting this option will save about 1kB of memory. 625 626 ThinkPads T40 and newer, R52 and newer, and X31 and newer are 627 unlikely to need NVRAM polling in their latest BIOS versions. 628 629 NVRAM polling can detect at most the following keys: ThinkPad/Access 630 IBM, Zoom, Switch Display (fn+F7), ThinkLight, Volume up/down/mute, 631 Brightness up/down, Display Expand (fn+F8), Hibernate (fn+F12). 632 633 If you are not sure, say Y here. The driver enables polling only if 634 it is strictly necessary to do so. 635 636config THINKPAD_LMI 637 tristate "Lenovo WMI-based systems management driver" 638 depends on ACPI_WMI 639 select FW_ATTR_CLASS 640 help 641 This driver allows changing BIOS settings on Lenovo machines whose 642 BIOS support the WMI interface. 643 644 To compile this driver as a module, choose M here: the module will 645 be called think-lmi. 646 647source "drivers/platform/x86/intel/Kconfig" 648 649config MSI_EC 650 tristate "MSI EC Extras" 651 depends on ACPI 652 depends on ACPI_BATTERY 653 help 654 This driver allows various MSI laptops' functionalities to be 655 controlled from userspace, including battery charge threshold. 656 657config MSI_LAPTOP 658 tristate "MSI Laptop Extras" 659 depends on ACPI 660 depends on BACKLIGHT_CLASS_DEVICE 661 depends on ACPI_VIDEO || ACPI_VIDEO = n 662 depends on RFKILL 663 depends on INPUT && SERIO_I8042 664 select INPUT_SPARSEKMAP 665 help 666 This is a driver for laptops built by MSI (MICRO-STAR 667 INTERNATIONAL): 668 669 MSI MegaBook S270 (MS-1013) 670 Cytron/TCM/Medion/Tchibo MD96100/SAM2000 671 672 It adds support for Bluetooth, WLAN and LCD brightness control. 673 674 More information about this driver is available at 675 <http://0pointer.de/lennart/tchibo.html>. 676 677 If you have an MSI S270 laptop, say Y or M here. 678 679config MSI_WMI 680 tristate "MSI WMI extras" 681 depends on ACPI_WMI 682 depends on INPUT 683 depends on BACKLIGHT_CLASS_DEVICE 684 depends on ACPI_VIDEO || ACPI_VIDEO = n 685 select INPUT_SPARSEKMAP 686 help 687 Say Y here if you want to support WMI-based hotkeys on MSI laptops. 688 689 To compile this driver as a module, choose M here: the module will 690 be called msi-wmi. 691 692config XO15_EBOOK 693 tristate "OLPC XO-1.5 ebook switch" 694 depends on OLPC || COMPILE_TEST 695 depends on ACPI && INPUT 696 help 697 Support for the ebook switch on the OLPC XO-1.5 laptop. 698 699 This switch is triggered as the screen is rotated and folded down to 700 convert the device into ebook form. 701 702config XO1_RFKILL 703 tristate "OLPC XO-1 software RF kill switch" 704 depends on OLPC || COMPILE_TEST 705 depends on RFKILL 706 help 707 Support for enabling/disabling the WLAN interface on the OLPC XO-1 708 laptop. 709 710config PCENGINES_APU2 711 tristate "PC Engines APUv2/3 front button and LEDs driver" 712 depends on INPUT && INPUT_KEYBOARD && GPIOLIB 713 depends on LEDS_CLASS 714 select GPIO_AMD_FCH 715 select KEYBOARD_GPIO_POLLED 716 select LEDS_GPIO 717 help 718 This driver provides support for the front button and LEDs on 719 PC Engines APUv2/APUv3 board. 720 721 To compile this driver as a module, choose M here: the module 722 will be called pcengines-apuv2. 723 724config BARCO_P50_GPIO 725 tristate "Barco P50 GPIO driver for identify LED/button" 726 depends on GPIOLIB 727 help 728 This driver provides access to the GPIOs for the identify button 729 and led present on Barco P50 board. 730 731 To compile this driver as a module, choose M here: the module 732 will be called barco-p50-gpio. 733 734config SAMSUNG_LAPTOP 735 tristate "Samsung Laptop driver" 736 depends on RFKILL || RFKILL = n 737 depends on ACPI_VIDEO || ACPI_VIDEO = n 738 depends on BACKLIGHT_CLASS_DEVICE 739 select LEDS_CLASS 740 select NEW_LEDS 741 help 742 This module implements a driver for a wide range of different 743 Samsung laptops. It offers control over the different 744 function keys, wireless LED, LCD backlight level. 745 746 It may also provide some sysfs files described in 747 <file:Documentation/ABI/testing/sysfs-driver-samsung-laptop> 748 749 To compile this driver as a module, choose M here: the module 750 will be called samsung-laptop. 751 752config SAMSUNG_Q10 753 tristate "Samsung Q10 Extras" 754 depends on ACPI 755 select BACKLIGHT_CLASS_DEVICE 756 help 757 This driver provides support for backlight control on Samsung Q10 758 and related laptops, including Dell Latitude X200. 759 760config ACPI_TOSHIBA 761 tristate "Toshiba Laptop Extras" 762 depends on ACPI 763 depends on ACPI_BATTERY 764 depends on ACPI_WMI 765 select LEDS_CLASS 766 select NEW_LEDS 767 depends on BACKLIGHT_CLASS_DEVICE 768 depends on INPUT 769 depends on SERIO_I8042 || SERIO_I8042 = n 770 depends on ACPI_VIDEO || ACPI_VIDEO = n 771 depends on HWMON || HWMON = n 772 depends on RFKILL || RFKILL = n 773 depends on IIO 774 select INPUT_SPARSEKMAP 775 help 776 This driver adds support for access to certain system settings 777 on "legacy free" Toshiba laptops. These laptops can be recognized by 778 their lack of a BIOS setup menu and APM support. 779 780 On these machines, all system configuration is handled through the 781 ACPI. This driver is required for access to controls not covered 782 by the general ACPI drivers, such as LCD brightness, video output, 783 etc. 784 785 This driver differs from the non-ACPI Toshiba laptop driver (located 786 under "Processor type and features") in several aspects. 787 Configuration is accessed by reading and writing text files in the 788 /proc tree instead of by program interface to /dev. Furthermore, no 789 power management functions are exposed, as those are handled by the 790 general ACPI drivers. 791 792 More information about this driver is available at 793 <http://memebeam.org/toys/ToshibaAcpiDriver>. 794 795 If you have a legacy free Toshiba laptop (such as the Libretto L1 796 series), say Y. 797 798config TOSHIBA_BT_RFKILL 799 tristate "Toshiba Bluetooth RFKill switch support" 800 depends on ACPI 801 depends on RFKILL || RFKILL = n 802 help 803 This driver adds support for Bluetooth events for the RFKill 804 switch on modern Toshiba laptops with full ACPI support and 805 an RFKill switch. 806 807 This driver handles RFKill events for the TOS6205 Bluetooth, 808 and re-enables it when the switch is set back to the 'on' 809 position. 810 811 If you have a modern Toshiba laptop with a Bluetooth and an 812 RFKill switch (such as the Portege R500), say Y. 813 814config TOSHIBA_HAPS 815 tristate "Toshiba HDD Active Protection Sensor" 816 depends on ACPI 817 help 818 This driver adds support for the built-in accelerometer 819 found on recent Toshiba laptops equipped with HID TOS620A 820 device. 821 822 This driver receives ACPI notify events 0x80 when the sensor 823 detects a sudden move or a harsh vibration, as well as an 824 ACPI notify event 0x81 whenever the movement or vibration has 825 been stabilized. 826 827 Also provides sysfs entries to get/set the desired protection 828 level and resetting the HDD protection interface. 829 830 If you have a recent Toshiba laptop with a built-in accelerometer 831 device, say Y. 832 833config TOSHIBA_WMI 834 tristate "Toshiba WMI Hotkeys Driver (EXPERIMENTAL)" 835 depends on ACPI_WMI 836 depends on INPUT 837 select INPUT_SPARSEKMAP 838 help 839 This driver adds hotkey monitoring support to some Toshiba models 840 that manage the hotkeys via WMI events. 841 842 WARNING: This driver is incomplete as it lacks a proper keymap and the 843 *notify function only prints the ACPI event type value. Be warned that 844 you will need to provide some information if you have a Toshiba model 845 with WMI event hotkeys and want to help with the development of this 846 driver. 847 848 If you have a WMI-based hotkeys Toshiba laptop, say Y or M here. 849 850config ACPI_CMPC 851 tristate "CMPC Laptop Extras" 852 depends on ACPI && INPUT 853 depends on RFKILL || RFKILL=n 854 select BACKLIGHT_CLASS_DEVICE 855 help 856 Support for Intel Classmate PC ACPI devices, including some 857 keys as input device, backlight device, tablet and accelerometer 858 devices. 859 860config COMPAL_LAPTOP 861 tristate "Compal (and others) Laptop Extras" 862 depends on ACPI 863 depends on BACKLIGHT_CLASS_DEVICE 864 depends on ACPI_VIDEO || ACPI_VIDEO = n 865 depends on RFKILL 866 depends on HWMON 867 depends on POWER_SUPPLY 868 help 869 This is a driver for laptops built by Compal, and some models by 870 other brands (e.g. Dell, Toshiba). 871 872 It adds support for rfkill, Bluetooth, WLAN, LCD brightness, hwmon 873 and battery charging level control. 874 875config LG_LAPTOP 876 tristate "LG Laptop Extras" 877 depends on ACPI 878 depends on ACPI_BATTERY 879 depends on ACPI_WMI 880 depends on INPUT 881 select INPUT_SPARSEKMAP 882 select NEW_LEDS 883 select LEDS_CLASS 884 help 885 This driver adds support for hotkeys as well as control of keyboard 886 backlight, battery maximum charge level and various other ACPI 887 features. 888 889 If you have an LG Gram laptop, say Y or M here. 890 891config PANASONIC_LAPTOP 892 tristate "Panasonic Laptop Extras" 893 depends on INPUT && ACPI 894 depends on BACKLIGHT_CLASS_DEVICE 895 depends on ACPI_VIDEO=n || ACPI_VIDEO 896 depends on SERIO_I8042 || SERIO_I8042 = n 897 select INPUT_SPARSEKMAP 898 help 899 This driver adds support for access to backlight control and hotkeys 900 on Panasonic Let's Note laptops. 901 902 If you have a Panasonic Let's note laptop (such as the R1(N variant), 903 R2, R3, R5, T2, W2 and Y2 series), say Y. 904 905config SONY_LAPTOP 906 tristate "Sony Laptop Extras" 907 depends on ACPI 908 depends on ACPI_VIDEO || ACPI_VIDEO = n 909 depends on BACKLIGHT_CLASS_DEVICE 910 depends on INPUT 911 depends on RFKILL 912 help 913 This mini-driver drives the SNC and SPIC devices present in the ACPI 914 BIOS of the Sony Vaio laptops. 915 916 It gives access to some extra laptop functionalities like Bluetooth, 917 screen brightness control, Fn keys and allows powering on/off some 918 devices. 919 920 Read <file:Documentation/admin-guide/laptops/sony-laptop.rst> for more information. 921 922config SONYPI_COMPAT 923 bool "Sonypi compatibility" 924 depends on SONY_LAPTOP 925 help 926 Build the sonypi driver compatibility code into the sony-laptop driver. 927 928config SYSTEM76_ACPI 929 tristate "System76 ACPI Driver" 930 depends on ACPI 931 depends on ACPI_BATTERY 932 depends on HWMON 933 depends on INPUT 934 select NEW_LEDS 935 select LEDS_CLASS 936 select LEDS_TRIGGERS 937 help 938 This is a driver for System76 laptops running open firmware. It adds 939 support for Fn-Fx key combinations, keyboard backlight, and airplane mode 940 LEDs. 941 942 If you have a System76 laptop running open firmware, say Y or M here. 943 944config TOPSTAR_LAPTOP 945 tristate "Topstar Laptop Extras" 946 depends on ACPI 947 depends on INPUT 948 select INPUT_SPARSEKMAP 949 select LEDS_CLASS 950 select NEW_LEDS 951 help 952 This driver adds support for hotkeys found on Topstar laptops. 953 954 If you have a Topstar laptop, say Y or M here. 955 956config SERIAL_MULTI_INSTANTIATE 957 tristate "Serial bus multi instantiate pseudo device driver" 958 depends on I2C && SPI && ACPI 959 help 960 Some ACPI-based systems list multiple devices in a single ACPI 961 firmware-node. This driver will instantiate separate clients 962 for each device in the firmware-node. 963 964 To compile this driver as a module, choose M here: the module 965 will be called serial-multi-instantiate. 966 967config MLX_PLATFORM 968 tristate "Mellanox Technologies platform support" 969 depends on ACPI && I2C && PCI 970 select REGMAP 971 help 972 This option enables system support for the Mellanox Technologies 973 platform. The Mellanox systems provide data center networking 974 solutions based on Virtual Protocol Interconnect (VPI) technology 975 enable seamless connectivity to 56/100Gb/s InfiniBand or 10/40/56GbE 976 connection. 977 978 If you have a Mellanox system, say Y or M here. 979 980config TOUCHSCREEN_DMI 981 bool "DMI based touchscreen configuration info" 982 depends on ACPI && DMI && I2C=y && TOUCHSCREEN_SILEAD 983 select EFI_EMBEDDED_FIRMWARE if EFI 984 help 985 Certain ACPI based tablets with e.g. Silead or Chipone touchscreens 986 do not have enough data in ACPI tables for the touchscreen driver to 987 handle the touchscreen properly, as OEMs expect the data to be baked 988 into the tablet model specific version of the driver shipped with the 989 the OS-image for the device. This option supplies the missing info. 990 Enable this for x86 tablets with Silead or Chipone touchscreens. 991 992source "drivers/platform/x86/x86-android-tablets/Kconfig" 993 994config FW_ATTR_CLASS 995 tristate 996 997config INTEL_IMR 998 bool "Intel Isolated Memory Region support" 999 depends on X86_INTEL_QUARK && IOSF_MBI 1000 help 1001 This option provides a means to manipulate Isolated Memory Regions. 1002 IMRs are a set of registers that define read and write access masks 1003 to prohibit certain system agents from accessing memory with 1 KiB 1004 granularity. 1005 1006 IMRs make it possible to control read/write access to an address 1007 by hardware agents inside the SoC. Read and write masks can be 1008 defined for: 1009 - eSRAM flush 1010 - Dirty CPU snoop (write only) 1011 - RMU access 1012 - PCI Virtual Channel 0/Virtual Channel 1 1013 - SMM mode 1014 - Non SMM mode 1015 1016 Quark contains a set of eight IMR registers and makes use of those 1017 registers during its bootup process. 1018 1019 If you are running on a Galileo/Quark say Y here. 1020 1021config INTEL_IPS 1022 tristate "Intel Intelligent Power Sharing" 1023 depends on ACPI && PCI 1024 help 1025 Intel Calpella platforms support dynamic power sharing between the 1026 CPU and GPU, maximizing performance in a given TDP. This driver, 1027 along with the CPU frequency and i915 drivers, provides that 1028 functionality. If in doubt, say Y here; it will only load on 1029 supported platforms. 1030 1031config INTEL_SCU_IPC 1032 bool 1033 1034config INTEL_SCU 1035 bool 1036 select INTEL_SCU_IPC 1037 1038config INTEL_SCU_PCI 1039 bool "Intel SCU PCI driver" 1040 depends on PCI 1041 select INTEL_SCU 1042 help 1043 This driver is used to bridge the communications between kernel 1044 and SCU on some embedded Intel x86 platforms. It also creates 1045 devices that are connected to the SoC through the SCU. 1046 Platforms supported: 1047 Medfield 1048 Clovertrail 1049 Merrifield 1050 Broxton 1051 Apollo Lake 1052 1053config INTEL_SCU_PLATFORM 1054 tristate "Intel SCU platform driver" 1055 depends on ACPI 1056 select INTEL_SCU 1057 help 1058 This driver is used to bridge the communications between kernel 1059 and SCU (sometimes called PMC as well). The driver currently 1060 supports Intel Elkhart Lake and compatible platforms. 1061 1062config INTEL_SCU_WDT 1063 bool 1064 default INTEL_SCU_PCI 1065 depends on INTEL_MID_WATCHDOG 1066 help 1067 This is a specific platform code to instantiate watchdog device 1068 on ACPI-based Intel MID platforms. 1069 1070config INTEL_SCU_IPC_UTIL 1071 tristate "Intel SCU IPC utility driver" 1072 depends on INTEL_SCU 1073 help 1074 The IPC Util driver provides an interface with the SCU enabling 1075 low level access for debug work and updating the firmware. Say 1076 N unless you will be doing this on an Intel MID platform. 1077 1078source "drivers/platform/x86/siemens/Kconfig" 1079 1080config WINMATE_FM07_KEYS 1081 tristate "Winmate FM07/FM07P front-panel keys driver" 1082 depends on INPUT 1083 help 1084 Winmate FM07 and FM07P in-vehicle computers have a row of five 1085 buttons below the display. This module adds an input device 1086 that delivers key events when these buttons are pressed. 1087 1088config SEL3350_PLATFORM 1089 tristate "SEL-3350 LEDs and power supplies" 1090 depends on ACPI 1091 depends on GPIOLIB 1092 depends on PINCTRL_BROXTON 1093 select POWER_SUPPLY 1094 select NEW_LEDS 1095 select LEDS_CLASS 1096 select LEDS_GPIO 1097 help 1098 Support for LEDs and power supplies on SEL-3350 computers. 1099 1100 To compile this driver as a module, choose M here: the module 1101 will be called sel3350-platform. 1102 1103endif # X86_PLATFORM_DEVICES 1104 1105config P2SB 1106 bool 1107 depends on PCI && X86 1108 help 1109 The Primary to Sideband (P2SB) bridge is an interface to some 1110 PCI devices connected through it. In particular, SPI NOR controller 1111 in Intel Apollo Lake SoC is one of such devices. 1112 1113 The main purpose of this library is to unhide P2SB device in case 1114 firmware kept it hidden on some platforms in order to access devices 1115 behind it. 1116