aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* HID: remove warn() macro from usb hid driversFrom: Greg Kroah-Hartman2008-10-142-8/+12
| | | | | | | | | USB should not be having it's own printk macros, so remove warn() and use the system-wide standard of dev_warn() wherever possible. In the few places that will not work out, use a basic printk(). Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
* HID: remove info() macro from usb HID driversGreg Kroah-Hartman2008-10-143-5/+10
| | | | | | | | USB should not be having it's own printk macros, so remove info() and use the system-wide standard of dev_info() wherever possible. Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
* HID: add appletv IR receiver quirkPeter Korsgaard2008-10-142-0/+3
| | | | | | | Similar to the existing IRCONTROL4 handling Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
* HID: fix a lockup regression when using force feedback on a PID deviceAnssi Hannula2008-10-144-7/+37
| | | | | | | | | | | | | | | | | | | | | | | Commit 8006479c9b75fb6594a7b746af3d7f1fbb68f18f introduced a spinlock in input_dev->event_lock, which is locked when handling input events. However, the hid-pidff driver sleeps when handling events as it waits for reports being sent to the device before changing the report contents again. This causes a system lockup when trying to use force feedback with a PID device, a regression introduced in 2.6.24 and 2.6.23.15. Fix it by extracting the raw report data from struct hid_report immediately when hid_submit_report() is called, therefore allowing drivers to change the contents of struct hid_report immediately without affecting the already-queued transfer. In hid-pidff, re-add the removed usbhid_wait_io() to pidff_erase_effect() instead, to prevent a full report queue from causing the submission to fail, thus not freeing up device memory. pidff_erase_effect() is not called while dev->event_lock is held. Signed-off-by: Anssi Hannula <anssi.hannula@gmail.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
* HID: hiddev.h: Fix example code.Antonio Ospite2008-10-141-0/+2
| | | | | | | | | Fix hiddev.h example code. To get the correct usage code, you need to set report_type and report_id. Signed-off-by: Antonio Ospite <ospite@studenti.unina.it> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
* HID: hiddev.h: Fix mixed space and tabs in example code.Antonio Ospite2008-10-141-19/+19
| | | | | | | Fix mixed space and tabs in example code. Signed-off-by: Antonio Ospite <ospite@studenti.unina.it> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
* HID: convert to dev_* printsJiri Slaby2008-10-144-24/+27
| | | | | | | | | Since we have a real device bound to a driver, we may use struct device for printing. Use dev_* functions instead of printks in 4 drivers. Signed-off-by: Jiri Slaby <jirislaby@gmail.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
* HID: remove hid-ffJiri Slaby2008-10-145-94/+2
| | | | | | | | hid-ff.c now calls only pidff (generic driver), the special ones are now in separate drivers. Invoke pidff on all non-special directly. Signed-off-by: Jiri Slaby <jirislaby@gmail.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
* HID: move zeroplus FF processingJiri Slaby2008-10-1410-21/+76
| | | | | Signed-off-by: Jiri Slaby <jirislaby@gmail.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
* HID: move thrustmaster FF processingJiri Slaby2008-10-1410-66/+106
| | | | | Signed-off-by: Jiri Slaby <jirislaby@gmail.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
* HID: move pantherlord FF processingJiri Slaby2008-10-1411-20/+93
| | | | | | | | | Move the force feedback processing into a separate module. [jkosina@suse.cz: fix Kconfig texts a little bit] Signed-off-by: Jiri Slaby <jirislaby@gmail.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
* HID: fix incorrent length condition in hidraw_write()Jiri Kosina2008-10-141-1/+1
| | | | | | | | | | | | | | | The bound check on the buffer length if (count > HID_MIN_BUFFER_SIZE) is of course incorrent, the proper check is if (count > HID_MAX_BUFFER_SIZE) Fix it. Reported-by: Jerry Ryle <jerry@mindtribe.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
* HID: fix tty<->hid deadlockJiri Slaby2008-10-141-1/+10
| | | | | | | | | | | hid_compat_load() runs on the default workqueue, it request_module(), it execs modprobe, it exits, tty flushes default workqueue, it hangs, because we are still in it. Signed-off-by: Jiri Slaby <jirislaby@gmail.com> Tested-by: <Valdis.Kletnieks@vt.edu> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
* HID: ignore iBuddy devicesRemi Cattiau2008-10-142-0/+6
| | | | | | | | iBuddy devices claim to be HID devices, but they are not. Add them to the blacklist. Signed-off-by: Remi Cattiau <remi@cattiau.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
* HID: report descriptor fix for remaining MacBook JIS keyboardsTomoya Adachi2008-10-141-4/+4
| | | | | | | | | This patch fixes a problem that MacBook JIS keyboard sends wrong report descriptors. Although it has already been fixed in the first Core 2 Duo model, it still remains in other models of MacBook. Signed-off-by: Tomoya Adachi <adachi@il.is.s.u-tokyo.ac.jp> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
* HID: fix gyration build errorRandy Dunlap2008-10-141-1/+1
| | | | | | | | | | Fix config symbol name in ifdef to fix build error: ERROR: "hid_compat_gyration" [drivers/hid/hid-dummy.ko] undefined! Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com> Acked-by: Jiri Slaby <jirislaby@gmail.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
* HID: Autocentering support for Logitech MOMO Racing WheelSergey Belyashov2008-10-141-1/+27
| | | | | | | | | | | Current kernel has no support for autocentering for Logitech wheels. By default autocentering enabled in wheel and constant effect does not work properly. Using USB sniffer I found command which change autocentering settings: 0xFE, 0x0D, 0x0R, 0x0L, 0x80, 0x00, 0x00, where R - clockwise force, L - counter-clockwise (0x0-0xF, 0xC = 100%). Signed-off-by: Sergey Belyashov <Sergey.Belyashov@gmail.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
* HID: fix grammo in HID_COMPAT Kconfig help textAlex Chiang2008-10-141-1/+1
| | | | | | | The Kconfig option for HID_COMPAT should read "lose", not "loose". Signed-off-by: Alex Chiang <achiang@hp.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
* HID: add support for Super Dual Box Pro USB PS2/PS2 adapterJiri Kosina2008-10-142-1/+3
| | | | | | | | | This seems to be the very same device, as already supported Smartjoy dual Plus, but with slightly different vendor ID. Let's support this one too. Reported-by: David Ashley <dashxdr@gmail.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
* HID: remove ignore quirk for MGE UPS devicesRichard Hughes2008-10-141-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch reverts the change made four years ago here: http://www.vg.kernel.org/pub/linux/kernel/people/gregkh/usb/2.4/usb-hid-2.4.25-pre7.patch UPS's made by MGE can be used with usbhid just fine, and by removing the ignore quirk allows them to be used with HAL so they just work when plugged in, without needing to be manually configured. With the ignore quirk in place a user would have to configure NUT before the UPS could be used, as NUT uses it's own internal USB matching framework to match against the USB devices, do low level control messages on the device and then parse the HID tables all in userspace. This is not needed, as allowing the device to be claimed as a usbhid device allows it to be used like any other USB UPS device. The devices correctly advertise the power device page which can be queried for the device state. I assume the quirk was changed so that people using < libusb 0.1.8 could still use NUT's internal HID code to manage the UPS. libusb 0.1.8 was released quite some time ago: 2004-02-11. This patch does not break NUT as in drivers/libusb.c the device is force unbound from the kernel driver using usb_detach_kernel_driver_np () where it can be controlled like normal. [jkosina@suse.cz: adapt to the new hidbus code] Signed-off-by: Richard Hughes <rhughes@redhat.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
* HID: introduce list for hiddev creation forcingJiri Kosina2008-10-141-18/+29
| | | | | | | | Introduce a list of devices for which there is need to force a creation of the hiddev interface, but still they are operated by generic driver (i.e. certain UPS). Signed-off-by: Jiri Kosina <jkosina@suse.cz>
* HID: move logitech FF processingJiri Slaby2008-10-1413-50/+102
| | | | | | | | Merge the logitech force feedback processing directly into logitech driver from the usbhid core. Signed-off-by: Jiri Slaby <jirislaby@gmail.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
* HID: move reset leds quirkJiri Slaby2008-10-144-9/+8
| | | | | | | | Move the handling of the leds resetting from the core to the dell and logitech drivers. Signed-off-by: Jiri Slaby <jirislaby@gmail.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
* HID: move connect quirksJiri Slaby2008-10-1417-126/+159
| | | | | | | | | Move connecting from usbhid to the hid layer and fix also hidp in that manner. This removes all the ignore/force hidinput/hiddev connecting quirks. Signed-off-by: Jiri Slaby <jirislaby@gmail.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
* HID: move dell quirksJiri Slaby2008-10-146-2/+86
| | | | | Signed-off-by: Jiri Slaby <jirislaby@gmail.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
* HID: move sony quirksJiri Slaby2008-10-148-33/+123
| | | | | Signed-off-by: Jiri Slaby <jirislaby@gmail.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
* HID: remove rdesc quirk supportJiri Slaby2008-10-143-62/+0
| | | | | | | | | Remove support for both dynamic and static report descriptor quirks. There is no longer rdesc code which it would support, so it's useless. Signed-off-by: Jiri Slaby <jirislaby@gmail.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
* HID: remove hid-input-quirksJiri Slaby2008-10-144-63/+2
| | | | | | | Remove the file since these is no user now. Signed-off-by: Jiri Slaby <jirislaby@gmail.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
* HID: move samsung quirksJiri Slaby2008-10-147-39/+113
| | | | | Signed-off-by: Jiri Slaby <jirislaby@gmail.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
* HID: move gyration quirksJiri Slaby2008-10-147-46/+112
| | | | | Signed-off-by: Jiri Slaby <jirislaby@gmail.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
* HID: move monterey quirksJiri Slaby2008-10-148-38/+94
| | | | | Signed-off-by: Jiri Slaby <jirislaby@gmail.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
* HID: move petalynx quirksJiri Slaby2008-10-148-55/+134
| | | | | Signed-off-by: Jiri Slaby <jirislaby@gmail.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
* HID: move belkin quirksJiri Slaby2008-10-148-22/+123
| | | | | Signed-off-by: Jiri Slaby <jirislaby@gmail.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
* HID: move chicony quirksJiri Slaby2008-10-147-30/+95
| | | | | Signed-off-by: Jiri Slaby <jirislaby@gmail.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
* HID: move ezkey quirksJiri Slaby2008-10-148-40/+107
| | | | | Signed-off-by: Jiri Slaby <jirislaby@gmail.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
* HID: move cherry quirksJiri Slaby2008-10-148-41/+99
| | | | | Signed-off-by: Jiri Slaby <jirislaby@gmail.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
* HID: move a4tech quirksJiri Slaby2008-10-149-43/+175
| | | | | Signed-off-by: Jiri Slaby <jirislaby@gmail.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
* HID: move cypress quirksJiri Slaby2008-10-149-38/+177
| | | | | Signed-off-by: Jiri Slaby <jirislaby@gmail.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
* HID: move sunplus quirksJiri Slaby2008-10-148-37/+94
| | | | | Signed-off-by: Jiri Slaby <jirislaby@gmail.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
* HID: move microsoft quirksJiri Slaby2008-10-149-112/+241
| | | | | | | Move them from the core code to a separate driver. Signed-off-by: Jiri Slaby <jirislaby@gmail.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
* HID: indent switches/casesJiri Slaby2008-10-143-522/+508
| | | | | | | | Bring switch and cases into coding style and save thus some indentation to make the code tighter. Signed-off-by: Jiri Slaby <jirislaby@gmail.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
* HID: add compat supportJiri Slaby2008-10-148-2/+72
| | | | | | | | Add compat option to hid code to allow loading of all modules on systems which don't allow autoloading because of old userspace. Signed-off-by: Jiri Slaby <jirislaby@gmail.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
* HID: move apple quirksJiri Slaby2008-10-1412-327/+532
| | | | | | | Move them from the core code to a separate driver. Signed-off-by: Jiri Slaby <jslaby@suse.cz> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
* HID: move ignore quirksJiri Slaby2008-10-146-280/+168
| | | | | | | | | Move ignore quirks from usbhid-quirks into hid-core code. Also don't output warning when ENODEV is error code in usbhid and try ordinal input in hidp when that error is returned. Signed-off-by: Jiri Slaby <jslaby@suse.cz> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
* HID: move logitech quirksJiri Slaby2008-10-148-176/+343
| | | | | | | Move them from the core and input code to a separate driver. Signed-off-by: Jiri Slaby <jslaby@suse.cz> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
* HID: move usage input mapping to hid.hJiri Slaby2008-10-143-46/+103
| | | | | | | | This mapping are currently used on 2 placces and will be needed by more quirk drivers, so move them to hid.h to allow them to use it. Signed-off-by: Jiri Slaby <jslaby@suse.cz> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
* HID: move ids into separate fileJiri Slaby2008-10-142-406/+429
| | | | | | | | Move ids from hid-quirks.c into separate file, since it will be needed in more than one place. Signed-off-by: Jiri Slaby <jslaby@suse.cz> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
* HID: hid, make parsing event drivenJiri Slaby2008-10-147-239/+438
| | | | | | | | | | | Next step for complete hid bus, this patch includes: - call parser either from probe or from hid-core if there is no probe. - add ll_driver structure and centralize some stuff there (open, close...) - split and merge usb_hid_configure and hid_probe into several functions to allow hooks/fixes between them Signed-off-by: Jiri Slaby <jslaby@suse.cz> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
* HID: make a bus from hid codeJiri Slaby2008-10-146-104/+586
| | | | | | | | | | | | | | | | Make a bus from hid core. This is the first step for converting all the quirks and separate almost-drivers into real drivers attached to this bus. It's implemented to change behaviour in very tiny manner, so that no driver needs to be changed this time. Also add generic drivers for both usb and bt into usbhid or hidp respectively which will bind all non-blacklisted device. Those blacklisted will be either grabbed by special drivers or by nobody if they are broken at the very rude base. Signed-off-by: Jiri Slaby <jslaby@suse.cz> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
* modpost: add support for hidJiri Slaby2008-10-143-0/+29
| | | | | | | Generate aliases for hid device modules to support autoloading. Signed-off-by: Jiri Slaby <jirislaby@gmail.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>