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