Kconfig 35 KB

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