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