b0ab3360cc9ae4c5035d6a8cc9b9ed9a54bafbc9
[openwrt/staging/noltari.git] / package / kernel / linux / modules / input.mk
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
8 INPUT_MODULES_MENU:=Input modules
9
10 define KernelPackage/hid
11 SUBMENU:=$(INPUT_MODULES_MENU)
12 TITLE:=HID Devices
13 DEPENDS:=+kmod-input-core +kmod-input-evdev
14 KCONFIG:=CONFIG_HID CONFIG_HIDRAW=y CONFIG_HID_BATTERY_STRENGTH=y
15 FILES:=$(LINUX_DIR)/drivers/hid/hid.ko
16 AUTOLOAD:=$(call AutoLoad,61,hid)
17 endef
18
19 define KernelPackage/hid/description
20 Kernel modules for HID devices
21 endef
22
23 $(eval $(call KernelPackage,hid))
24
25 define KernelPackage/hid-generic
26 SUBMENU:=$(INPUT_MODULES_MENU)
27 TITLE:=Generic HID device support
28 DEPENDS:=+kmod-hid
29 KCONFIG:=CONFIG_HID_GENERIC
30 FILES:=$(LINUX_DIR)/drivers/hid/hid-generic.ko
31 AUTOLOAD:=$(call AutoProbe,hid-generic)
32 endef
33
34 define KernelPackage/hid/description
35 Kernel modules for generic HID device (e.g. keyboards and mice) support
36 endef
37
38 $(eval $(call KernelPackage,hid-generic))
39
40 define KernelPackage/input-core
41 SUBMENU:=$(INPUT_MODULES_MENU)
42 TITLE:=Input device core
43 KCONFIG:=CONFIG_INPUT
44 FILES:=$(LINUX_DIR)/drivers/input/input-core.ko
45 endef
46
47 define KernelPackage/input-core/description
48 Kernel modules for support of input device
49 endef
50
51 $(eval $(call KernelPackage,input-core))
52
53
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
63 define KernelPackage/input-evdev/description
64 Kernel modules for support of input device events
65 endef
66
67 $(eval $(call KernelPackage,input-evdev))
68
69
70 define KernelPackage/input-gpio-keys
71 SUBMENU:=$(INPUT_MODULES_MENU)
72 TITLE:=GPIO key support
73 DEPENDS:= @GPIO_SUPPORT +kmod-input-core
74 KCONFIG:= \
75 CONFIG_KEYBOARD_GPIO \
76 CONFIG_INPUT_KEYBOARD=y
77 FILES:=$(LINUX_DIR)/drivers/input/keyboard/gpio_keys.ko
78 AUTOLOAD:=$(call AutoProbe,gpio_keys,1)
79 endef
80
81 define KernelPackage/input-gpio-keys/description
82 This driver implements support for buttons connected
83 to GPIO pins of various CPUs (and some other chips).
84
85 See also gpio-button-hotplug which is an alternative, lower overhead
86 implementation that generates uevents instead of kernel input events.
87 endef
88
89 $(eval $(call KernelPackage,input-gpio-keys))
90
91
92 define KernelPackage/input-gpio-keys-polled
93 SUBMENU:=$(INPUT_MODULES_MENU)
94 TITLE:=Polled GPIO key support
95 DEPENDS:=@GPIO_SUPPORT +LINUX_5_10:kmod-input-polldev
96 KCONFIG:= \
97 CONFIG_KEYBOARD_GPIO_POLLED \
98 CONFIG_INPUT_KEYBOARD=y
99 FILES:=$(LINUX_DIR)/drivers/input/keyboard/gpio_keys_polled.ko
100 AUTOLOAD:=$(call AutoProbe,gpio_keys_polled,1)
101 endef
102
103 define KernelPackage/input-gpio-keys-polled/description
104 Kernel module for support polled GPIO keys input device
105
106 See also gpio-button-hotplug which is an alternative, lower overhead
107 implementation that generates uevents instead of kernel input events.
108 endef
109
110 $(eval $(call KernelPackage,input-gpio-keys-polled))
111
112
113 define KernelPackage/input-gpio-encoder
114 SUBMENU:=$(INPUT_MODULES_MENU)
115 TITLE:=GPIO rotary encoder
116 DEPENDS:=@GPIO_SUPPORT +kmod-input-core
117 KCONFIG:=CONFIG_INPUT_GPIO_ROTARY_ENCODER
118 FILES:=$(LINUX_DIR)/drivers/input/misc/rotary_encoder.ko
119 AUTOLOAD:=$(call AutoProbe,rotary_encoder)
120 endef
121
122 define KernelPackage/input-gpio-encoder/description
123 Kernel module to use rotary encoders connected to GPIO pins
124 endef
125
126 $(eval $(call KernelPackage,input-gpio-encoder))
127
128
129 define KernelPackage/input-joydev
130 SUBMENU:=$(INPUT_MODULES_MENU)
131 TITLE:=Joystick device support
132 DEPENDS:=+kmod-input-core
133 KCONFIG:=CONFIG_INPUT_JOYDEV
134 FILES:=$(LINUX_DIR)/drivers/input/joydev.ko
135 AUTOLOAD:=$(call AutoProbe,joydev)
136 endef
137
138 define KernelPackage/input-joydev/description
139 Kernel module for joystick support
140 endef
141
142 $(eval $(call KernelPackage,input-joydev))
143
144
145 define KernelPackage/input-polldev
146 SUBMENU:=$(INPUT_MODULES_MENU)
147 TITLE:=Polled Input device support
148 DEPENDS:=+kmod-input-core @LINUX_5_10
149 KCONFIG:=CONFIG_INPUT_POLLDEV
150 FILES:=$(LINUX_DIR)/drivers/input/input-polldev.ko
151 endef
152
153 define KernelPackage/input-polldev/description
154 Kernel module for support of polled input devices
155 endef
156
157 $(eval $(call KernelPackage,input-polldev))
158
159
160 define KernelPackage/input-matrixkmap
161 SUBMENU:=$(INPUT_MODULES_MENU)
162 TITLE:=Input matrix devices support
163 DEPENDS:=+kmod-input-core
164 KCONFIG:=CONFIG_INPUT_MATRIXKMAP
165 FILES:=$(LINUX_DIR)/drivers/input/matrix-keymap.ko
166 AUTOLOAD:=$(call AutoProbe,matrix-keymap)
167 endef
168
169 define KernelPackage/input-matrixkmap/description
170 Kernel module support for input matrix devices
171 endef
172
173 $(eval $(call KernelPackage,input-matrixkmap))
174
175
176 define KernelPackage/input-touchscreen-ads7846
177 SUBMENU:=$(INPUT_MODULES_MENU)
178 TITLE:=ADS7846/TSC2046/AD7873 and AD(S)7843 based touchscreens
179 DEPENDS:=+kmod-hwmon-core +kmod-input-core +kmod-spi-bitbang
180 KCONFIG:= \
181 CONFIG_INPUT_TOUCHSCREEN=y \
182 CONFIG_TOUCHSCREEN_PROPERTIES=y@lt5.13 \
183 CONFIG_TOUCHSCREEN_ADS7846
184 FILES:=$(LINUX_DIR)/drivers/input/touchscreen/ads7846.ko \
185 $(LINUX_DIR)/drivers/input/touchscreen/of_touchscreen.ko@lt5.13
186 AUTOLOAD:=$(call AutoProbe,ads7846)
187 endef
188
189 define KernelPackage/input-touchscreen-ads7846/description
190 Kernel module for ADS7846/TSC2046/AD7873 and AD(S)7843 based touchscreens
191 endef
192
193 $(eval $(call KernelPackage,input-touchscreen-ads7846))
194
195
196 define KernelPackage/input-touchscreen-edt-ft5x06
197 SUBMENU:=$(INPUT_MODULES_MENU)
198 TITLE:=EDT FT5x06 and Focaltech FT6236 based touchscreens
199 DEPENDS:=+kmod-i2c-core +kmod-input-core
200 KCONFIG:= \
201 CONFIG_INPUT_TOUCHSCREEN=y \
202 CONFIG_TOUCHSCREEN_PROPERTIES=y@lt5.13 \
203 CONFIG_TOUCHSCREEN_EDT_FT5X06
204 FILES:=$(LINUX_DIR)/drivers/input/touchscreen/edt-ft5x06.ko \
205 $(LINUX_DIR)/drivers/input/touchscreen/of_touchscreen.ko@lt5.13
206 AUTOLOAD:=$(call AutoProbe,edt-ft5x06)
207 endef
208
209 define KernelPackage/input-touchscreen-edt-ft5x06/description
210 Kernel module for EDT FT5206, FT5306, FT5406, FT5506, Evervision FT5726 \
211 and Focaltech FT6236 based touchscreens
212 endef
213
214 $(eval $(call KernelPackage,input-touchscreen-edt-ft5x06))
215
216
217 define KernelPackage/keyboard-imx
218 SUBMENU:=$(INPUT_MODULES_MENU)
219 TITLE:=IMX keypad support
220 DEPENDS:=@(TARGET_mxs||TARGET_imx) +kmod-input-matrixkmap
221 KCONFIG:= \
222 CONFIG_KEYBOARD_IMX \
223 CONFIG_INPUT_KEYBOARD=y
224 FILES:=$(LINUX_DIR)/drivers/input/keyboard/imx_keypad.ko
225 AUTOLOAD:=$(call AutoProbe,imx_keypad)
226 endef
227
228 define KernelPackage/keyboard-imx/description
229 Enable support for IMX keypad port.
230 endef
231
232 $(eval $(call KernelPackage,keyboard-imx))
233
234
235 define KernelPackage/input-uinput
236 SUBMENU:=$(INPUT_MODULES_MENU)
237 TITLE:=user input module
238 DEPENDS:=+kmod-input-core
239 KCONFIG:= \
240 CONFIG_INPUT_MISC=y \
241 CONFIG_INPUT_UINPUT
242 FILES:=$(LINUX_DIR)/drivers/input/misc/uinput.ko
243 AUTOLOAD:=$(call AutoProbe,uinput)
244 endef
245
246 define KernelPackage/input-uinput/description
247 user input modules needed for bluez
248 endef
249
250 $(eval $(call KernelPackage,input-uinput))