cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

Kconfig (37752B)


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