aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/usb/input/ati_remote.c
Commit message (Collapse)AuthorAge
* [PATCH] slab: remove SLAB_ATOMICChristoph Lameter2006-12-07
| | | | | | | | SLAB_ATOMIC is an alias of GFP_ATOMIC Signed-off-by: Christoph Lameter <clameter@sgi.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* usb: ati_remote free urb cleanupMariusz Kozlowski2006-12-01
| | | | | | | | - usb_free_urb() cleanup Signed-off-by: Mariusz Kozlowski <m.kozlowski@tuxland.pl> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* [PATCH] usb: ati remote memleak fixMariusz Kozlowski2006-11-25
| | | | | | | | | | | | | This is a bug. When checking for ati_remote->outbuf we free freeing ati_remote->inbuf so we end up freeing ati_remote->inbuf twice. Also the checks for 'ati_remote->inbuf != NULL' and 'ati_remote->outbuf != NULL' are redundant as usb_buffer_free() does this. Signed-off-by: Mariusz Kozlowski <m.kozlowski@tuxland.pl> Acked-by: Greg KH <greg@kroah.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* IRQ: Maintain regs pointer globally rather than passing to IRQ handlersDavid Howells2006-10-05
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Maintain a per-CPU global "struct pt_regs *" variable which can be used instead of passing regs around manually through all ~1800 interrupt handlers in the Linux kernel. The regs pointer is used in few places, but it potentially costs both stack space and code to pass it around. On the FRV arch, removing the regs parameter from all the genirq function results in a 20% speed up of the IRQ exit path (ie: from leaving timer_interrupt() to leaving do_IRQ()). Where appropriate, an arch may override the generic storage facility and do something different with the variable. On FRV, for instance, the address is maintained in GR28 at all times inside the kernel as part of general exception handling. Having looked over the code, it appears that the parameter may be handed down through up to twenty or so layers of functions. Consider a USB character device attached to a USB hub, attached to a USB controller that posts its interrupts through a cascaded auxiliary interrupt controller. A character device driver may want to pass regs to the sysrq handler through the input layer which adds another few layers of parameter passing. I've build this code with allyesconfig for x86_64 and i386. I've runtested the main part of the code on FRV and i386, though I can't test most of the drivers. I've also done partial conversion for powerpc and MIPS - these at least compile with minimal configurations. This will affect all archs. Mostly the changes should be relatively easy. Take do_IRQ(), store the regs pointer at the beginning, saving the old one: struct pt_regs *old_regs = set_irq_regs(regs); And put the old one back at the end: set_irq_regs(old_regs); Don't pass regs through to generic_handle_irq() or __do_IRQ(). In timer_interrupt(), this sort of change will be necessary: - update_process_times(user_mode(regs)); - profile_tick(CPU_PROFILING, regs); + update_process_times(user_mode(get_irq_regs())); + profile_tick(CPU_PROFILING); I'd like to move update_process_times()'s use of get_irq_regs() into itself, except that i386, alone of the archs, uses something other than user_mode(). Some notes on the interrupt handling in the drivers: (*) input_dev() is now gone entirely. The regs pointer is no longer stored in the input_dev struct. (*) finish_unlinks() in drivers/usb/host/ohci-q.c needs checking. It does something different depending on whether it's been supplied with a regs pointer or not. (*) Various IRQ handler function pointers have been moved to type irq_handler_t. Signed-Off-By: David Howells <dhowells@redhat.com> (cherry picked from 1b16e7ac850969f38b375e511e3fa2f474a33867 commit)
* USB: ati_remote: Use usb_endpoint_* functions.Luiz Fernando N. Capitulino2006-09-27
| | | | | | Signed-off-by: Luiz Fernando N. Capitulino <lcapitulino@mandriva.com.br> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* Input: ati_remote - use msec instead of jiffiesDmitry Torokhov2006-08-04
| | | | | | | By using milliseconds instead of jiffies to calculate acceleration factor we make the code immune to changes in HZ. Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: ati_remote - add missing input_sync()Dmitry Torokhov2006-08-04
| | | | | | | | | When emulating button toggle drivers need to send input_sync() between 'down' and 'up' events, otherwise some users might miss keypress because device's state is only considered finalized after EV_SYN/SYN_REPORT is received. Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: ati_remote - relax permissions sysfs module parametersDmitry Torokhov2006-08-04
| | | | | | Allow changing debug and channel_mask parameters on the fly. Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: ati_remote - make filter time a module parameterEdwin Huffstutler2006-08-04
| | | | Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* USB: ati_remote.c: autorepeat fixMarko Macek2006-08-02
| | | | | | | | | | | | | | | When HZ is set to 250 (new default) or 100, the time span during which repeated events from the device are ignored could be too small due to ms->jiffies rounding. This causes the auto repeat to kick in early making it impossible for the user to generate individual press/release events. Increate the timeout to compensate. Signed-off-by: Marko Macek <Marko.Macek@gmx.net> Cc: Dmitry Torokhov <dtor_core@ameritech.net> Cc: Vojtech Pavlik <vojtech@suse.cz> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* Remove obsolete #include <linux/config.h>Jörn Engel2006-06-30
| | | | | Signed-off-by: Jörn Engel <joern@wohnheim.fh-wedel.de> Signed-off-by: Adrian Bunk <bunk@stusta.de>
* [PATCH] USB: move <linux/usb_input.h> to <linux/usb/input.h>David Brownell2006-06-21
| | | | | | | | Move <linux/usb_input.h> to <linux/usb/input.h> and remove some redundant includes. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* [PATCH] USB: convert a bunch of USB semaphores to mutexesArjan van de Ven2006-03-20
| | | | | | | | the patch below converts a bunch of semaphores-used-as-mutex in the USB code to mutexes Signed-off-by: Arjan van de Ven <arjan@infradead.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* [PATCH] USB: ati_remote: use time_before() and friendsMarcelo Feitoza Parisi2006-01-04
| | | | | | | | They deal with wrapping correctly and are nicer to read. Signed-off-by: Marcelo Feitoza Parisi <marcelo@feitoza.com.br> Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* [PATCH] USB: mark various usb tables constArjan van de Ven2006-01-04
| | | | | | | | | | patch below marks various USB tables and variables as const so that they end up in .rodata section and don't cacheline share with things that get written to. For the non-array variables it also allows gcc to optimize more. Signed-off-by: Arjan van de Ven <arjan@infradead.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* [PATCH] USB: remove .owner field from struct usb_driverGreg Kroah-Hartman2006-01-04
| | | | | | It is no longer needed, so let's remove it, saving a bit of memory. Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* [PATCH] drivers/usb/input: convert to dynamic input_dev allocationDmitry Torokhov2005-10-28
| | | | | | | | | Input: convert drivers/iusb/input to dynamic input_dev allocation This is required for input_dev sysfs integration Signed-off-by: Dmitry Torokhov <dtor@mail.ru> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* Input: introduce usb_to_input_id() to uniformly produceDmitry Torokhov2005-06-30
| | | | | | struct input_id for USB input devices. Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Merge master.kernel.org:/pub/scm/linux/kernel/git/gregkh/usb-2.6Linus Torvalds2005-06-27
|\
| * [PATCH] USB: fix atiremote input doesn`t register `device` & `driver` ↵Vincent Vanackere2005-06-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | section in sysfs (/sys/class/input/event#) > On Sun, Apr 10, 2005 at 07:21:28PM +0600, Viktor A. Danilov wrote: > > > > PROBLEM: aiptek input doesn`t register `device` & `driver` section in sysfs (/sys/class/input/event#) > > REASON: `dev` - field not filled... > > SOLUTION: in linux/drivers/usb/input/aiptek.c write > > aiptek->inputdev.dev = &intf->dev; > > before calling > > input_register_device(&aiptek->inputdev); The following (tested) patch fixes the exact same issue with the ATI Remote input driver. Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* | Input: remove user counters from drivers/usb/input since inputDmitry Torokhov2005-05-29
| | | | | | | | | | | | | | core takes care of calling open and close methods only when needed. Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* | Input: whitespace fixes in drivers/usb/inputDmitry Torokhov2005-05-29
|/ | | | Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* [PATCH] USB: Fix for ati_remotePatrick Boettcher2005-04-23
| | | | | | | | | | | | | | when stealing code from ati_remote for a GPL-driver of my usbradio (because of its neat usb int transfers) I found out, that the inbuf is freed twice. I don't have the ati-remote, so I don't know it is a problem at all, but it looks strange to me anyway. Also I don't know if it has been fixed already in newer kernel versions. From: Patrick Boettcher <patrick.boettcher@desy.de> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* Linux-2.6.12-rc2v2.6.12-rc2Linus Torvalds2005-04-16
Initial git repository build. I'm not bothering with the full history, even though we have it. We can create a separate "historical" git archive of that later if we want to, and in the meantime it's about 3.2GB when imported into git - space that would just make the early git days unnecessarily complicated, when we don't have a lot of good infrastructure for it. Let it rip!