input.mk 9.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333
  1. #
  2. # Copyright (C) 2006-2013 OpenWrt.org
  3. #
  4. # This is free software, licensed under the GNU General Public License v2.
  5. # See /LICENSE for more information.
  6. #
  7. INPUT_MODULES_MENU:=Input modules
  8. define KernelPackage/hid
  9. SUBMENU:=$(INPUT_MODULES_MENU)
  10. TITLE:=HID Devices
  11. DEPENDS:=+kmod-input-core +kmod-input-evdev
  12. KCONFIG:=CONFIG_HID CONFIG_HID_SUPPORT=y CONFIG_HIDRAW=y CONFIG_HID_BATTERY_STRENGTH=y
  13. FILES:=$(LINUX_DIR)/drivers/hid/hid.ko
  14. AUTOLOAD:=$(call AutoLoad,61,hid)
  15. endef
  16. define KernelPackage/hid/description
  17. Kernel modules for HID devices
  18. endef
  19. $(eval $(call KernelPackage,hid))
  20. define KernelPackage/hid-generic
  21. SUBMENU:=$(INPUT_MODULES_MENU)
  22. TITLE:=Generic HID device support
  23. DEPENDS:=+kmod-hid
  24. KCONFIG:=CONFIG_HID_GENERIC
  25. FILES:=$(LINUX_DIR)/drivers/hid/hid-generic.ko
  26. AUTOLOAD:=$(call AutoProbe,hid-generic)
  27. endef
  28. define KernelPackage/hid/description
  29. Kernel modules for generic HID device (e.g. keyboards and mice) support
  30. endef
  31. $(eval $(call KernelPackage,hid-generic))
  32. define KernelPackage/hid-alps
  33. SUBMENU:=$(INPUT_MODULES_MENU)
  34. TITLE:=Alps HID device support
  35. DEPENDS:=+kmod-hid
  36. KCONFIG:=CONFIG_HID_ALPS
  37. FILES:=$(LINUX_DIR)/drivers/hid/hid-alps.ko
  38. AUTOLOAD:=$(call AutoProbe,hid-alps)
  39. endef
  40. define KernelPackage/hid-alps/description
  41. Support for Alps I2C HID touchpads and StickPointer.
  42. endef
  43. $(eval $(call KernelPackage,hid-alps))
  44. define KernelPackage/input-core
  45. SUBMENU:=$(INPUT_MODULES_MENU)
  46. TITLE:=Input device core
  47. KCONFIG:=CONFIG_INPUT
  48. FILES:=$(LINUX_DIR)/drivers/input/input-core.ko
  49. endef
  50. define KernelPackage/input-core/description
  51. Kernel modules for support of input device
  52. endef
  53. $(eval $(call KernelPackage,input-core))
  54. define KernelPackage/input-evdev
  55. SUBMENU:=$(INPUT_MODULES_MENU)
  56. TITLE:=Input event device
  57. DEPENDS:=+kmod-input-core
  58. KCONFIG:=CONFIG_INPUT_EVDEV
  59. FILES:=$(LINUX_DIR)/drivers/input/evdev.ko
  60. AUTOLOAD:=$(call AutoLoad,60,evdev)
  61. endef
  62. define KernelPackage/input-evdev/description
  63. Kernel modules for support of input device events
  64. endef
  65. $(eval $(call KernelPackage,input-evdev))
  66. define KernelPackage/input-gpio-keys
  67. SUBMENU:=$(INPUT_MODULES_MENU)
  68. TITLE:=GPIO key support
  69. DEPENDS:= @GPIO_SUPPORT +kmod-input-core
  70. KCONFIG:= \
  71. CONFIG_KEYBOARD_GPIO \
  72. CONFIG_INPUT_KEYBOARD=y
  73. FILES:=$(LINUX_DIR)/drivers/input/keyboard/gpio_keys.ko
  74. AUTOLOAD:=$(call AutoProbe,gpio_keys,1)
  75. endef
  76. define KernelPackage/input-gpio-keys/description
  77. This driver implements support for buttons connected
  78. to GPIO pins of various CPUs (and some other chips).
  79. See also gpio-button-hotplug which is an alternative, lower overhead
  80. implementation that generates uevents instead of kernel input events.
  81. endef
  82. $(eval $(call KernelPackage,input-gpio-keys))
  83. define KernelPackage/input-gpio-keys-polled
  84. SUBMENU:=$(INPUT_MODULES_MENU)
  85. TITLE:=Polled GPIO key support
  86. DEPENDS:=@GPIO_SUPPORT +kmod-input-core
  87. KCONFIG:= \
  88. CONFIG_KEYBOARD_GPIO_POLLED \
  89. CONFIG_INPUT_KEYBOARD=y
  90. FILES:=$(LINUX_DIR)/drivers/input/keyboard/gpio_keys_polled.ko
  91. AUTOLOAD:=$(call AutoProbe,gpio_keys_polled,1)
  92. endef
  93. define KernelPackage/input-gpio-keys-polled/description
  94. Kernel module for support polled GPIO keys input device
  95. See also gpio-button-hotplug which is an alternative, lower overhead
  96. implementation that generates uevents instead of kernel input events.
  97. endef
  98. $(eval $(call KernelPackage,input-gpio-keys-polled))
  99. define KernelPackage/input-gpio-encoder
  100. SUBMENU:=$(INPUT_MODULES_MENU)
  101. TITLE:=GPIO rotary encoder
  102. DEPENDS:=@GPIO_SUPPORT +kmod-input-core
  103. KCONFIG:=CONFIG_INPUT_GPIO_ROTARY_ENCODER
  104. FILES:=$(LINUX_DIR)/drivers/input/misc/rotary_encoder.ko
  105. AUTOLOAD:=$(call AutoProbe,rotary_encoder)
  106. endef
  107. define KernelPackage/input-gpio-encoder/description
  108. Kernel module to use rotary encoders connected to GPIO pins
  109. endef
  110. $(eval $(call KernelPackage,input-gpio-encoder))
  111. define KernelPackage/input-matrix-keypad
  112. SUBMENU:=$(INPUT_MODULES_MENU)
  113. TITLE:=GPIO matrix keypad support
  114. DEPENDS:= @GPIO_SUPPORT +kmod-input-core +kmod-input-matrixkmap
  115. KCONFIG:= \
  116. CONFIG_KEYBOARD_MATRIX \
  117. CONFIG_INPUT_KEYBOARD=y
  118. FILES:=$(LINUX_DIR)/drivers/input/keyboard/matrix_keypad.ko
  119. AUTOLOAD:=$(call AutoProbe,matrix_keypad,1)
  120. endef
  121. define KernelPackage/input-matrix-keypad/description
  122. Enable support for GPIO driven matrix keypad.
  123. endef
  124. $(eval $(call KernelPackage,input-matrix-keypad))
  125. define KernelPackage/input-joydev
  126. SUBMENU:=$(INPUT_MODULES_MENU)
  127. TITLE:=Joystick device support
  128. DEPENDS:=+kmod-input-core
  129. KCONFIG:=CONFIG_INPUT_JOYDEV
  130. FILES:=$(LINUX_DIR)/drivers/input/joydev.ko
  131. AUTOLOAD:=$(call AutoProbe,joydev)
  132. endef
  133. define KernelPackage/input-joydev/description
  134. Kernel module for joystick support
  135. endef
  136. $(eval $(call KernelPackage,input-joydev))
  137. define KernelPackage/input-matrixkmap
  138. SUBMENU:=$(INPUT_MODULES_MENU)
  139. TITLE:=Input matrix devices support
  140. DEPENDS:=+kmod-input-core
  141. KCONFIG:=CONFIG_INPUT_MATRIXKMAP
  142. FILES:=$(LINUX_DIR)/drivers/input/matrix-keymap.ko
  143. AUTOLOAD:=$(call AutoProbe,matrix-keymap)
  144. endef
  145. define KernelPackage/input-matrixkmap/description
  146. Kernel module support for input matrix devices
  147. endef
  148. $(eval $(call KernelPackage,input-matrixkmap))
  149. define KernelPackage/input-touchscreen-ads7846
  150. SUBMENU:=$(INPUT_MODULES_MENU)
  151. TITLE:=ADS7846/TSC2046/AD7873 and AD(S)7843 based touchscreens
  152. DEPENDS:=+kmod-hwmon-core +kmod-input-core +kmod-spi-bitbang
  153. KCONFIG:= \
  154. CONFIG_INPUT_TOUCHSCREEN=y \
  155. CONFIG_TOUCHSCREEN_ADS7846
  156. FILES:=$(LINUX_DIR)/drivers/input/touchscreen/ads7846.ko
  157. AUTOLOAD:=$(call AutoProbe,ads7846)
  158. endef
  159. define KernelPackage/input-touchscreen-ads7846/description
  160. Kernel module for ADS7846/TSC2046/AD7873 and AD(S)7843 based touchscreens
  161. endef
  162. $(eval $(call KernelPackage,input-touchscreen-ads7846))
  163. define KernelPackage/input-touchscreen-edt-ft5x06
  164. SUBMENU:=$(INPUT_MODULES_MENU)
  165. TITLE:=EDT FT5x06 and Focaltech FT6236 based touchscreens
  166. DEPENDS:=+kmod-i2c-core +kmod-input-core +kmod-regmap-i2c
  167. KCONFIG:= \
  168. CONFIG_INPUT_TOUCHSCREEN=y \
  169. CONFIG_TOUCHSCREEN_EDT_FT5X06
  170. FILES:=$(LINUX_DIR)/drivers/input/touchscreen/edt-ft5x06.ko
  171. AUTOLOAD:=$(call AutoProbe,edt-ft5x06)
  172. endef
  173. define KernelPackage/input-touchscreen-edt-ft5x06/description
  174. Kernel module for EDT FT5206, FT5306, FT5406, FT5506, Evervision FT5726 \
  175. and Focaltech FT6236 based touchscreens
  176. endef
  177. $(eval $(call KernelPackage,input-touchscreen-edt-ft5x06))
  178. define KernelPackage/keyboard-imx
  179. SUBMENU:=$(INPUT_MODULES_MENU)
  180. TITLE:=IMX keypad support
  181. DEPENDS:=@(TARGET_mxs||TARGET_imx) +kmod-input-matrixkmap
  182. KCONFIG:= \
  183. CONFIG_KEYBOARD_IMX \
  184. CONFIG_INPUT_KEYBOARD=y
  185. FILES:=$(LINUX_DIR)/drivers/input/keyboard/imx_keypad.ko
  186. AUTOLOAD:=$(call AutoProbe,imx_keypad)
  187. endef
  188. define KernelPackage/keyboard-imx/description
  189. Enable support for IMX keypad port.
  190. endef
  191. $(eval $(call KernelPackage,keyboard-imx))
  192. define KernelPackage/input-uinput
  193. SUBMENU:=$(INPUT_MODULES_MENU)
  194. TITLE:=user input module
  195. DEPENDS:=+kmod-input-core
  196. KCONFIG:= \
  197. CONFIG_INPUT_MISC=y \
  198. CONFIG_INPUT_UINPUT
  199. FILES:=$(LINUX_DIR)/drivers/input/misc/uinput.ko
  200. AUTOLOAD:=$(call AutoProbe,uinput)
  201. endef
  202. define KernelPackage/input-uinput/description
  203. user input modules needed for bluez
  204. endef
  205. $(eval $(call KernelPackage,input-uinput))
  206. define KernelPackage/input-mouse-ps2
  207. SUBMENU:=$(INPUT_MODULES_MENU)
  208. TITLE:=PS/2 mouse support
  209. DEPENDS:=+kmod-i2c-core +kmod-input-core +kmod-input-serio-libps2
  210. KCONFIG:= \
  211. CONFIG_INPUT_MOUSE=y \
  212. CONFIG_MOUSE_PS2 \
  213. CONFIG_MOUSE_PS2_ALPS=y \
  214. CONFIG_MOUSE_PS2_BYD=y \
  215. CONFIG_MOUSE_PS2_LOGIPS2PP=y \
  216. CONFIG_MOUSE_PS2_SYNAPTICS=y \
  217. CONFIG_MOUSE_PS2_SYNAPTICS_SMBUS=y \
  218. CONFIG_MOUSE_PS2_CYPRESS=y \
  219. CONFIG_MOUSE_PS2_LIFEBOOK=y \
  220. CONFIG_MOUSE_PS2_TRACKPOINT=y \
  221. CONFIG_MOUSE_PS2_ELANTECH=y \
  222. CONFIG_MOUSE_PS2_ELANTECH_SMBUS=y \
  223. CONFIG_MOUSE_PS2_SENTELIC=y \
  224. CONFIG_MOUSE_PS2_TOUCHKIT=y \
  225. CONFIG_MOUSE_PS2_OLPC=y \
  226. CONFIG_MOUSE_PS2_FOCALTECH=y \
  227. CONFIG_MOUSE_PS2_VMMOUSE=y
  228. FILES:=$(LINUX_DIR)/drivers/input/mouse/psmouse.ko
  229. AUTOLOAD:=$(call AutoProbe,psmouse)
  230. endef
  231. define KernelPackage/input-mouse-ps2/description
  232. Support for standard 2 or 3-button PS/2 mouse, as well as PS/2
  233. mice with wheels and extra buttons, Microsoft, Logitech or Genius
  234. compatible, and many touchpads as well.
  235. endef
  236. $(eval $(call KernelPackage,input-mouse-ps2))
  237. define KernelPackage/input-serio
  238. SUBMENU:=$(INPUT_MODULES_MENU)
  239. TITLE:=Serial I/O support
  240. KCONFIG:= CONFIG_SERIO
  241. FILES:=$(LINUX_DIR)/drivers/input/serio/serio.ko
  242. AUTOLOAD:=$(call AutoProbe,serio,1)
  243. endef
  244. define KernelPackage/input-serio/description
  245. Kernel module to support input device that uses serial I/O to
  246. communicate with the system
  247. endef
  248. $(eval $(call KernelPackage,input-serio))
  249. define KernelPackage/input-serio-libps2
  250. SUBMENU:=$(INPUT_MODULES_MENU)
  251. TITLE:=PS/2 Serial I/O support
  252. DEPENDS:=+kmod-input-serio
  253. KCONFIG:= CONFIG_SERIO_LIBPS2
  254. FILES:=$(LINUX_DIR)/drivers/input/serio/libps2.ko
  255. AUTOLOAD:=$(call AutoProbe,libps2,1)
  256. endef
  257. define KernelPackage/input-serio-libps2/description
  258. Kernel module to support devices connected to a PS/2 port, such
  259. as PS/2 mouse or standard AT keyboard.
  260. endef
  261. $(eval $(call KernelPackage,input-serio-libps2))