HID: fix reference count leak hidraw
[linux-2.6] / drivers / hid / Kconfig
1 #
2 # HID driver configuration
3 #
4 menuconfig HID_SUPPORT
5         bool "HID Devices"
6         depends on INPUT
7         default y
8         ---help---
9           Say Y here to get to see options for various computer-human interface
10           device drivers. This option alone does not add any kernel code.
11
12           If you say N, all options in this submenu will be skipped and disabled.
13
14 if HID_SUPPORT
15
16 config HID
17         tristate "Generic HID support"
18         depends on INPUT
19         default y
20         ---help---
21           A human interface device (HID) is a type of computer device that
22           interacts directly with and takes input from humans. The term "HID"
23           most commonly used to refer to the USB-HID specification, but other
24           devices (such as, but not strictly limited to, Bluetooth) are
25           designed using HID specification (this involves certain keyboards,
26           mice, tablets, etc). This option compiles into kernel the generic
27           HID layer code (parser, usages, etc.), which can then be used by
28           transport-specific HID implementation (like USB or Bluetooth).
29
30           For docs and specs, see http://www.usb.org/developers/hidpage/
31
32           If unsure, say Y
33
34 config HID_DEBUG
35         bool "HID debugging support"
36         default y if !EMBEDDED
37         depends on HID
38         ---help---
39         This option lets the HID layer output diagnostics about its internal
40         state, resolve HID usages, dump HID fields, etc. Individual HID drivers
41         use this debugging facility to output information about individual HID
42         devices, etc.
43
44         This feature is useful for those who are either debugging the HID parser
45         or any HID hardware device.
46
47         If unsure, say N
48
49 config HIDRAW
50         bool "/dev/hidraw raw HID device support"
51         depends on HID
52         ---help---
53         Say Y here if you want to support HID devices (from the USB
54         specification standpoint) that aren't strictly user interface
55         devices, like monitor controls and Uninterruptable Power Supplies.
56
57         This module supports these devices separately using a separate
58         event interface on /dev/hidraw.
59
60         There is also a /dev/hiddev configuration option in the USB HID
61         configuration menu. In comparison to hiddev, this device does not process
62         the hid events at all (no parsing, no lookups). This lets applications
63         to work on raw hid events when they want to, and avoid using transport-specific
64         userspace libhid/libusb libraries.
65
66         If unsure, say Y.
67
68 source "drivers/hid/usbhid/Kconfig"
69
70 menu "Special HID drivers"
71         depends on HID
72
73 config HID_COMPAT
74         bool "Load all HID drivers on hid core load"
75         default y
76         ---help---
77         Compatible option for older userspace. If you have system without udev
78         support of module loading through aliases and also old
79         module-init-tools which can't handle hid bus, choose Y here. Otherwise
80         say N. If you say N and your userspace is old enough, the only
81         functionality you lose is modules autoloading.
82
83         If unsure, say Y.
84
85 config HID_A4TECH
86         tristate "A4 tech" if EMBEDDED
87         depends on USB_HID
88         default y
89         ---help---
90         Support for A4 tech X5 and WOP-35 / Trust 450L mice.
91
92 config HID_APPLE
93         tristate "Apple" if EMBEDDED
94         depends on (USB_HID || BT_HIDP)
95         default y
96         ---help---
97         Support for some Apple devices which less or more break
98         HID specification.
99
100         Say Y here if you want support for keyboards of Apple iBooks, PowerBooks,
101         MacBooks, MacBook Pros and Apple Aluminum.
102
103 config HID_BELKIN
104         tristate "Belkin" if EMBEDDED
105         depends on USB_HID
106         default y
107         ---help---
108         Support for Belkin Flip KVM and Wireless keyboard.
109
110 config HID_BRIGHT
111         tristate "Bright" if EMBEDDED
112         depends on USB_HID
113         default y
114         ---help---
115         Support for Bright ABNT-2 keyboard.
116
117 config HID_CHERRY
118         tristate "Cherry" if EMBEDDED
119         depends on USB_HID
120         default y
121         ---help---
122         Support for Cherry Cymotion keyboard.
123
124 config HID_CHICONY
125         tristate "Chicony" if EMBEDDED
126         depends on USB_HID
127         default y
128         ---help---
129         Support for Chicony Tactical pad.
130
131 config HID_CYPRESS
132         tristate "Cypress" if EMBEDDED
133         depends on USB_HID
134         default y
135         ---help---
136         Support for cypress mouse and barcode readers.
137
138 config HID_DELL
139         tristate "Dell" if EMBEDDED
140         depends on USB_HID
141         default y
142         ---help---
143         Support for quirky Dell HID hardware that require
144         special LED handling (W7658 and SK8115 models)
145
146 config HID_EZKEY
147         tristate "Ezkey" if EMBEDDED
148         depends on USB_HID
149         default y
150         ---help---
151         Support for Ezkey BTC 8193 keyboard.
152
153 config HID_GYRATION
154         tristate "Gyration" if EMBEDDED
155         depends on USB_HID
156         default y
157         ---help---
158         Support for Gyration remote control.
159
160 config HID_LOGITECH
161         tristate "Logitech" if EMBEDDED
162         depends on USB_HID
163         default y
164         ---help---
165         Support for Logitech devices that are not fully compliant with HID standard.
166
167 config LOGITECH_FF
168         bool "Logitech force feedback"
169         depends on HID_LOGITECH
170         select INPUT_FF_MEMLESS
171         help
172           Say Y here if you have one of these devices:
173           - Logitech WingMan Cordless RumblePad
174           - Logitech WingMan Cordless RumblePad 2
175           - Logitech WingMan Force 3D
176           - Logitech Formula Force EX
177           - Logitech MOMO Force wheel
178
179           and if you want to enable force feedback for them.
180           Note: if you say N here, this device will still be supported, but without
181           force feedback.
182
183 config LOGIRUMBLEPAD2_FF
184         bool "Logitech Rumblepad 2 force feedback"
185         depends on HID_LOGITECH
186         select INPUT_FF_MEMLESS
187         help
188           Say Y here if you want to enable force feedback support for Logitech
189           Rumblepad 2 devices.
190
191 config HID_MICROSOFT
192         tristate "Microsoft" if EMBEDDED
193         depends on USB_HID
194         default y
195         ---help---
196         Support for Microsoft devices that are not fully compliant with HID standard.
197
198 config HID_MONTEREY
199         tristate "Monterey" if EMBEDDED
200         depends on USB_HID
201         default y
202         ---help---
203         Support for Monterey Genius KB29E.
204
205 config HID_PANTHERLORD
206         tristate "Pantherlord devices support" if EMBEDDED
207         depends on USB_HID
208         default y
209         ---help---
210         Support for PantherLord/GreenAsia based device support.
211
212 config PANTHERLORD_FF
213         bool "Pantherlord force feedback support"
214         depends on HID_PANTHERLORD
215         select INPUT_FF_MEMLESS
216         help
217           Say Y here if you have a PantherLord/GreenAsia based game controller
218           or adapter and want to enable force feedback support for it.
219
220 config HID_PETALYNX
221         tristate "Petalynx" if EMBEDDED
222         depends on USB_HID
223         default y
224         ---help---
225         Support for Petalynx Maxter remote control.
226
227 config HID_SAMSUNG
228         tristate "Samsung" if EMBEDDED
229         depends on USB_HID
230         default y
231         ---help---
232         Support for Samsung InfraRed remote control.
233
234 config HID_SONY
235         tristate "Sony" if EMBEDDED
236         depends on USB_HID
237         default y
238         ---help---
239         Support for Sony PS3 controller.
240
241 config HID_SUNPLUS
242         tristate "Sunplus" if EMBEDDED
243         depends on USB_HID
244         default y
245         ---help---
246         Support for Sunplus wireless desktop.
247
248 config THRUSTMASTER_FF
249         tristate "ThrustMaster devices support"
250         depends on USB_HID
251         select INPUT_FF_MEMLESS
252         help
253           Say Y here if you have a THRUSTMASTER FireStore Dual Power 2 or
254           a THRUSTMASTER Ferrari GT Rumble Force or Force Feedback Wheel.
255
256 config ZEROPLUS_FF
257         tristate "Zeroplus based game controller support"
258         depends on USB_HID
259         select INPUT_FF_MEMLESS
260         help
261           Say Y here if you have a Zeroplus based game controller.
262
263 endmenu
264
265 endif # HID_SUPPORT