539d2707aa61cb81cf0a8e69d02b344e1a20d87c
[openwrt.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)
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 +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 rotay 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/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
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-matrix/description
170  Kernel module support for input matrix devices
171 endef
172
173 $(eval $(call KernelPackage,input-matrixkmap))
174
175
176 define KernelPackage/keyboard-imx
177   SUBMENU:=$(INPUT_MODULES_MENU)
178   TITLE:=IMX keypad support
179   DEPENDS:=@(TARGET_mxs||TARGET_imx6) +kmod-input-matrixkmap
180   KCONFIG:= \
181         CONFIG_KEYBOARD_IMX \
182         CONFIG_INPUT_KEYBOARD=y
183   FILES:=$(LINUX_DIR)/drivers/input/keyboard/imx_keypad.ko
184   AUTOLOAD:=$(call AutoProbe,imx_keypad)
185 endef
186
187 define KernelPackage/keyboard-imx/description
188  Enable support for IMX keypad port.
189 endef
190
191 $(eval $(call KernelPackage,keyboard-imx))
192
193
194 define KernelPackage/input-uinput
195   SUBMENU:=$(INPUT_MODULES_MENU)
196   TITLE:=user input module
197   DEPENDS:=+kmod-input-core
198   KCONFIG:= \
199         CONFIG_INPUT_MISC=y \
200         CONFIG_INPUT_UINPUT
201   FILES:=$(LINUX_DIR)/drivers/input/misc/uinput.ko
202   AUTOLOAD:=$(call AutoProbe,uinput)
203 endef
204
205 define KernelPackage/input-uinput/description
206   user input modules needed for bluez
207 endef
208
209 $(eval $(call KernelPackage,input-uinput))