Kconfig 8.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277
  1. # SPDX-License-Identifier: GPL-2.0-only
  2. #
  3. # Lenovo X86 Platform Specific Drivers
  4. #
  5. config IDEAPAD_LAPTOP
  6. tristate "Lenovo IdeaPad Laptop Extras"
  7. depends on ACPI
  8. depends on ACPI_BATTERY
  9. depends on RFKILL && INPUT
  10. depends on SERIO_I8042
  11. depends on BACKLIGHT_CLASS_DEVICE
  12. depends on ACPI_VIDEO || ACPI_VIDEO = n
  13. depends on ACPI_WMI || ACPI_WMI = n
  14. select ACPI_PLATFORM_PROFILE
  15. select INPUT_SPARSEKMAP
  16. select NEW_LEDS
  17. select LEDS_CLASS
  18. help
  19. This is a driver for Lenovo IdeaPad netbooks contains drivers for
  20. rfkill switch, hotkey, fan control and backlight control.
  21. config LENOVO_WMI_HOTKEY_UTILITIES
  22. tristate "Lenovo Hotkey Utility WMI extras driver"
  23. depends on ACPI_WMI
  24. select NEW_LEDS
  25. select LEDS_CLASS
  26. imply IDEAPAD_LAPTOP
  27. help
  28. This driver provides WMI support for Lenovo customized hotkeys function,
  29. such as LED control for audio/mic mute event for Ideapad, YOGA, XiaoXin,
  30. Gaming, ThinkBook and so on.
  31. config LENOVO_WMI_CAMERA
  32. tristate "Lenovo WMI Camera Button driver"
  33. depends on ACPI_WMI
  34. depends on INPUT
  35. help
  36. This driver provides support for Lenovo camera button. The Camera
  37. button is a GPIO device. This driver receives ACPI notifications when
  38. the camera button is switched on/off.
  39. To compile this driver as a module, choose M here: the module
  40. will be called lenovo-wmi-camera.
  41. config LENOVO_YMC
  42. tristate "Lenovo Yoga Tablet Mode Control"
  43. depends on ACPI_WMI
  44. depends on INPUT
  45. depends on IDEAPAD_LAPTOP
  46. select INPUT_SPARSEKMAP
  47. help
  48. This driver maps the Tablet Mode Control switch to SW_TABLET_MODE input
  49. events for Lenovo Yoga notebooks.
  50. config THINKPAD_ACPI
  51. tristate "ThinkPad ACPI Laptop Extras"
  52. depends on ACPI_EC
  53. depends on ACPI_BATTERY
  54. depends on INPUT
  55. depends on RFKILL || RFKILL = n
  56. depends on ACPI_VIDEO || ACPI_VIDEO = n
  57. depends on BACKLIGHT_CLASS_DEVICE
  58. depends on I2C
  59. depends on DRM
  60. select ACPI_PLATFORM_PROFILE
  61. select DRM_PRIVACY_SCREEN
  62. select HWMON
  63. select NVRAM
  64. select NEW_LEDS
  65. select LEDS_CLASS
  66. select INPUT_SPARSEKMAP
  67. help
  68. This is a driver for the IBM and Lenovo ThinkPad laptops. It adds
  69. support for Fn-Fx key combinations, Bluetooth control, video
  70. output switching, ThinkLight control, UltraBay eject and more.
  71. For more information about this driver see
  72. <file:Documentation/admin-guide/laptops/thinkpad-acpi.rst> and
  73. <http://ibm-acpi.sf.net/> .
  74. This driver was formerly known as ibm-acpi.
  75. Extra functionality will be available if the rfkill (CONFIG_RFKILL)
  76. and/or ALSA (CONFIG_SND) subsystems are available in the kernel.
  77. Note that if you want ThinkPad-ACPI to be built-in instead of
  78. modular, ALSA and rfkill will also have to be built-in.
  79. If you have an IBM or Lenovo ThinkPad laptop, say Y or M here.
  80. config THINKPAD_ACPI_ALSA_SUPPORT
  81. bool "Console audio control ALSA interface"
  82. depends on THINKPAD_ACPI
  83. depends on SND
  84. depends on SND = y || THINKPAD_ACPI = SND
  85. default y
  86. help
  87. Enables monitoring of the built-in console audio output control
  88. (headphone and speakers), which is operated by the mute and (in
  89. some ThinkPad models) volume hotkeys.
  90. If this option is enabled, ThinkPad-ACPI will export an ALSA card
  91. with a single read-only mixer control, which should be used for
  92. on-screen-display feedback purposes by the Desktop Environment.
  93. Optionally, the driver will also allow software control (the
  94. ALSA mixer will be made read-write). Please refer to the driver
  95. documentation for details.
  96. All IBM models have both volume and mute control. Newer Lenovo
  97. models only have mute control (the volume hotkeys are just normal
  98. keys and volume control is done through the main HDA mixer).
  99. config THINKPAD_ACPI_DEBUGFACILITIES
  100. bool "Maintainer debug facilities"
  101. depends on THINKPAD_ACPI
  102. help
  103. Enables extra stuff in the thinkpad-acpi which is completely useless
  104. for normal use. Read the driver source to find out what it does.
  105. Say N here, unless you were told by a kernel maintainer to do
  106. otherwise.
  107. config THINKPAD_ACPI_DEBUG
  108. bool "Verbose debug mode"
  109. depends on THINKPAD_ACPI
  110. help
  111. Enables extra debugging information, at the expense of a slightly
  112. increase in driver size.
  113. If you are not sure, say N here.
  114. config THINKPAD_ACPI_UNSAFE_LEDS
  115. bool "Allow control of important LEDs (unsafe)"
  116. depends on THINKPAD_ACPI
  117. help
  118. Overriding LED state on ThinkPads can mask important
  119. firmware alerts (like critical battery condition), or misled
  120. the user into damaging the hardware (undocking or ejecting
  121. the bay while buses are still active), etc.
  122. LED control on the ThinkPad is write-only (with very few
  123. exceptions on very ancient models), which makes it
  124. impossible to know beforehand if important information will
  125. be lost when one changes LED state.
  126. Users that know what they are doing can enable this option
  127. and the driver will allow control of every LED, including
  128. the ones on the dock stations.
  129. Never enable this option on a distribution kernel.
  130. Say N here, unless you are building a kernel for your own
  131. use, and need to control the important firmware LEDs.
  132. config THINKPAD_ACPI_VIDEO
  133. bool "Video output control support"
  134. depends on THINKPAD_ACPI
  135. default y
  136. help
  137. Allows the thinkpad_acpi driver to provide an interface to control
  138. the various video output ports.
  139. This feature often won't work well, depending on ThinkPad model,
  140. display state, video output devices in use, whether there is a X
  141. server running, phase of the moon, and the current mood of
  142. Schroedinger's cat. If you can use X.org's RandR to control
  143. your ThinkPad's video output ports instead of this feature,
  144. don't think twice: do it and say N here to save memory and avoid
  145. bad interactions with X.org.
  146. NOTE: access to this feature is limited to processes with the
  147. CAP_SYS_ADMIN capability, to avoid local DoS issues in platforms
  148. where it interacts badly with X.org.
  149. If you are not sure, say Y here but do try to check if you could
  150. be using X.org RandR instead.
  151. config THINKPAD_ACPI_HOTKEY_POLL
  152. bool "Support NVRAM polling for hot keys"
  153. depends on THINKPAD_ACPI
  154. default y
  155. help
  156. Some thinkpad models benefit from NVRAM polling to detect a few of
  157. the hot key press events. If you know your ThinkPad model does not
  158. need to do NVRAM polling to support any of the hot keys you use,
  159. unselecting this option will save about 1kB of memory.
  160. ThinkPads T40 and newer, R52 and newer, and X31 and newer are
  161. unlikely to need NVRAM polling in their latest BIOS versions.
  162. NVRAM polling can detect at most the following keys: ThinkPad/Access
  163. IBM, Zoom, Switch Display (fn+F7), ThinkLight, Volume up/down/mute,
  164. Brightness up/down, Display Expand (fn+F8), Hibernate (fn+F12).
  165. If you are not sure, say Y here. The driver enables polling only if
  166. it is strictly necessary to do so.
  167. config THINKPAD_LMI
  168. tristate "Lenovo WMI-based systems management driver"
  169. depends on ACPI_WMI
  170. depends on DMI
  171. select FW_ATTR_CLASS
  172. help
  173. This driver allows changing BIOS settings on Lenovo machines whose
  174. BIOS support the WMI interface.
  175. To compile this driver as a module, choose M here: the module will
  176. be called think-lmi.
  177. config YOGABOOK
  178. tristate "Lenovo Yoga Book tablet key driver"
  179. depends on ACPI_WMI
  180. depends on INPUT
  181. depends on I2C
  182. select LEDS_CLASS
  183. select NEW_LEDS
  184. help
  185. Say Y here if you want to support the 'Pen' key and keyboard backlight
  186. control on the Lenovo Yoga Book tablets.
  187. To compile this driver as a module, choose M here: the module will
  188. be called lenovo-yogabook.
  189. config YT2_1380
  190. tristate "Lenovo Yoga Tablet 2 1380 fast charge driver"
  191. depends on SERIAL_DEV_BUS
  192. depends on EXTCON
  193. depends on ACPI
  194. help
  195. Say Y here to enable support for the custom fast charging protocol
  196. found on the Lenovo Yoga Tablet 2 1380F / 1380L models.
  197. To compile this driver as a module, choose M here: the module will
  198. be called lenovo-yogabook.
  199. config LENOVO_WMI_CAPDATA
  200. tristate
  201. depends on ACPI_WMI
  202. config LENOVO_WMI_EVENTS
  203. tristate
  204. depends on ACPI_WMI
  205. config LENOVO_WMI_HELPERS
  206. tristate
  207. depends on ACPI_WMI
  208. config LENOVO_WMI_GAMEZONE
  209. tristate "Lenovo GameZone WMI Driver"
  210. depends on ACPI_WMI
  211. depends on DMI
  212. select ACPI_PLATFORM_PROFILE
  213. select LENOVO_WMI_EVENTS
  214. select LENOVO_WMI_HELPERS
  215. select LENOVO_WMI_TUNING
  216. help
  217. Say Y here if you have a WMI aware Lenovo Legion device and would like to use the
  218. platform-profile firmware interface to manage power usage.
  219. To compile this driver as a module, choose M here: the module will
  220. be called lenovo-wmi-gamezone.
  221. config LENOVO_WMI_TUNING
  222. tristate "Lenovo Other Mode WMI Driver"
  223. depends on ACPI_WMI
  224. select HWMON
  225. select FW_ATTR_CLASS
  226. select LENOVO_WMI_CAPDATA
  227. select LENOVO_WMI_EVENTS
  228. select LENOVO_WMI_HELPERS
  229. help
  230. Say Y here if you have a WMI aware Lenovo Legion device and would like to use the
  231. firmware_attributes API to control various tunable settings typically exposed by
  232. Lenovo software in Windows.
  233. To compile this driver as a module, choose M here: the module will
  234. be called lenovo-wmi-other.