aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/input/mouse/alps.c (follow)
AgeCommit message (Collapse)AuthorFilesLines
2010-03-09Input: alps - add support for the touchpad on Toshiba Tecra A11-11LThomas Bächler1-0/+2
Signed-off-by: Thomas Bächler <thomas@archlinux.org> Cc: stable@kernel.org Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2009-12-15Input: ALPS - add interleaved protocol support (Dell E6x00 series)Sebastian Kapfer1-27/+227
Properly handle version of the protocol where standard PS/2 packets from trackpoint are stuffed into middle (byte 3-6) of the standard ALPS packets when both the touchpad and trackpoint are used together. The patch is based on work done by Matthew Chapman and additional research done by David Kubicek and Erik Osterholm: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/296610 Many thanks to David Kubicek for his efforts in researching fine points of this new version of the protocol, especially interaction between pad and stick in these models. Signed-off-by: Sebastian Kapfer <sebastian_kapfer@gmx.net> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2009-12-11Input: ALPS - do not set REL_X/REL_Y capabilities on the touchpadDmitry Torokhov1-0/+11
Relative events are only reported via secondary device therefore device associated with the touchpad should not advertise these capabilities. Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2009-11-20Input: ALPS - add support for touchpads with 4-directional buttonMaxim Levitsky1-35/+65
The touchpad on Acer Aspire 5720, 5520 and some other Aspire models (signature 0x73, 0x02, 0x50) has a button that can be rocked in 4 different directions. Make the driver to generate BTN_0..BTN_3 events in response. The Synaptics driver by default maps BTN_0 and BTN_1 to up and down, so there should be no visible changes with the old setup that generated BTN_FORWARD and BTN_BACK (also mapped to up and down). Signed-off-by: Maxim Levitsky <maximlevitsky@gmail.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2009-09-10Input: psmouse - use boolean typeDmitry Torokhov1-8/+12
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2009-06-11Input: ALPS - handle touchpoints buttons correctlyUlrich Dangel1-4/+9
When pressing any button belonging to the touchpoint, the generated click events don't belong to the touchpoint but to the touchpad. This patch fixes this behaviour, the events will be sent via the correct device, so scrolling with touchpoint is possible. Signed-off-by: Ulrich Dangel <uli@spamt.net> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2009-05-08Input: ALPS - Dell Latitude D630/D800 have DualPointDmitry Torokhov1-9/+9
Dell Latitude D630/D800 have DualPoint (touchpad plus trackpoint) instead of a simple touchpad and a pass-through port for external PS/2 mouse. Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
2009-04-23Input: ALPS - add signature for Toshiba Satellite Pro M10Dmitry Torokhov1-0/+1
This toshiba has a touchpad with trackpoint and 2 sets of left and right buttons (above and below touchpad). Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2008-09-10Input: ALPS - add signature for DualPoint found in Dell Latitude E6500Elvis Pranskevichus1-0/+1
Signed-off-by: Elvis Pranskevichus <el@prans.net> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2008-03-18Input: ALPS - fix forward/back buttons reversed on Acer 5520-5290Laszlo Kajan1-2/+2
ALPS_FW_BK_1 protocol flavor seems to have forward and backward keys reversed. Signed-off-by: Laszlo Kajan <kajla@bioinfo.pl> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2008-03-18Input: ALPS - put secondary device in proper place in sysfsDmitry Torokhov1-0/+1
Secondary input device did not have parent set up causing it to appear in the root of sysfs device hierarchy. Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2008-01-17Input: ALPS - fix sync loss on Acer Aspire 5720ZGDmitry Torokhov1-1/+1
The recently added support for Dell Volstro 1400 was causing protocol synchronization errors on Acer Aspire 5720ZG, fix it. Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2007-10-19get rid of input BIT* duplicate definesJiri Slaby1-12/+14
get rid of input BIT* duplicate defines use newly global defined macros for input layer. Also remove includes of input.h from non-input sources only for BIT macro definiton. Define the macro temporarily in local manner, all those local definitons will be removed further in this patchset (to not break bisecting). BIT macro will be globally defined (1<<x) Signed-off-by: Jiri Slaby <jirislaby@gmail.com> Cc: <dtor@mail.ru> Acked-by: Jiri Kosina <jkosina@suse.cz> Cc: <lenb@kernel.org> Acked-by: Marcel Holtmann <marcel@holtmann.org> Cc: <perex@suse.cz> Acked-by: Mauro Carvalho Chehab <mchehab@infradead.org> Cc: <vernux@us.ibm.com> Cc: <malattia@linux.it> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2007-10-11Input: ALPS - add signature for ThinkPad R61Dmitry Torokhov1-0/+1
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2007-09-05Input: ALPS - add support for model found in Dell Vostro 1400William Pettersson1-0/+1
Signed-off-by: William Pettersson <william.pettersson@gmail.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2007-05-22Input: ALPS - force stream modeDmitry Torokhov1-27/+31
ALPS appears to need SETSTREAM command after reset, otherwise it does not produce any data. Now that we do not request stream mode by default individual drivers need to take care of it. [Jason Riedy <ejr@cs.berkeley.edu> - fix oops] Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2007-04-12Input: ALPS - handle errors from input_register_device()Dmitry Torokhov1-4/+9
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-10-05IRQ: Maintain regs pointer globally rather than passing to IRQ handlersDavid Howells1-6/+4
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)
2006-09-10Input: constify psmouse driverHelge Deller1-4/+4
Signed-off-by: Helge Deller <deller@gmx.de> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-06-26Input: fix potential overflows in driver/input/mouseDmitry Torokhov1-1/+1
Change all sprintfs into snprintfs to make sure we won't stomp on data adjacent to our buffers. Noticed by Wouter Paesen <wouter@kangaroot.net> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-05-29Input: alps - fix old protocol decodingYotam Medini1-2/+2
Correct touchpad left & right keys assignments for ALPS_OLDPROTO that were swapped. Old protocol is used on UMAX ActionBook-530T notebook. Signed-off-by: Yotam Medini <yotam.medini@gmail.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-01-14Input: psmouse - attempt to re-synchronize mouse every 5 secondsDmitry Torokhov1-0/+38
This should help driver to deal vith KVMs that reset mice when switching between boxes. Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2005-12-21Input: ALPS - add signature for HP ze1115Larry Finger1-0/+1
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2005-12-14[PATCH] Input: ALPS - correctly report button presses on Fujitsu Siemens S6010Vojtech Pavlik1-1/+1
Without this patch Forward and Backward buttons on the touchpad do not generate any events. Signed-off-by: Dmitry Torokhov <dtor@mail.ru> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-10-28[PATCH] drivers/input/mouse: convert to dynamic input_dev allocationDmitry Torokhov1-30/+33
Input: convert drivers/input/mouse 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>
2005-09-04Input: ALPS - fix wheel decodingVojtech Pavlik1-1/+1
Signed-off-by: Vojtech Pavlik <vojtech@suse.cz> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2005-07-11Input: ALPS - unconditionally enable tapping modePeter Osterlund1-18/+7
The condition in alps_init() was also inverted and the driver was enabling tapping mode only if it was already enabled. Signed-off-by: Peter Osterlund <petero2@telia.com> Signed-off-by: Vojtech Pavlik <vojtech@suse.cz> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2005-07-11Input: ALPS - fix resume (for DualPoints)David Moore1-2/+2
The driver would not reset pass-through mode when performing resume of a DualPoint touchpad causing it to stop working until next reboot. Signed-off-by: Vojtech Pavlik <vojtech@suse.cz> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2005-06-27Merge rsync://rsync.kernel.org/pub/scm/linux/kernel/git/dtor/input.git manuallyLinus Torvalds1-21/+31
Some manual fixups required due to clashes with the PF_FREEZE cleanups.
2005-06-16[PATCH] ALPS: fix enabling hardware tappingDmitry Torokhov1-1/+1
It looks like logic for enabling hardware tapping in ALPS driver was inverted and we enable it only if it was already enabled by BIOS or firmware. I have a confirmation from one user that the patch below fixes the problem for him and it might be beneficial if we could get it into 2.6.12. Signed-off-by: Dmitry Torokhov <dtor@mail.ru> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-06-01Input: add ps2_drain() to libps2 to allow reading and discardingDmitry Torokhov1-2/+1
given number of bytes from device. Change ps2_command to allow using 0 as command ID and actually pass it to the device instead of working as a drain. Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2005-06-01Input: ALPS - fix forward/back buttons on Ahtec laptop.Ivan Casado Ruiz1-8/+21
I have an Ahtec laptop with a ALPS GlidePoint device, with 4 buttons. With Linux hernel 2.6.12rc4 and rc5 I'm unable to use the vertical scroll buttons (BACK and FORWARD). BACK gets detected as BTN_MIDDLE and FORWARD is undetected. I've modified the drivers/input/mouse/alps.c from 2.6.12rc5 and now it works fine! Signed-off-by: Vojtech Pavlik <vojtech@suse.cz> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2005-05-29Input: whitespace fixes in drivers/input/mouseDmitry Torokhov1-11/+9
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2005-05-17[PATCH] ALPS resume fixDmitry Torokhov1-0/+2
ALPS needs to be reset for detection to work reliably when reconnecting. Signed-off-by: Dmitry Torokhov <dtor@mail.ru> Cc: Vojtech Pavlik <vojtech@suse.cz> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-05-17[PATCH] alps printk tidyAndrew Morton1-1/+1
Make the alps printk output look consistent. Cc: Vojtech Pavlik <vojtech@suse.cz> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-04-16Linux-2.6.12-rc2Linus Torvalds1-0/+477
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!