7968a5dd492ccc38345013e534ad4c8d6eb60ed1 |
|
08-Nov-2011 |
Daniel Drake <dsd@laptop.org> |
Input: synaptics - add support for Relative mode Currently, the synaptics driver puts the device into Absolute mode. As explained in the synaptics documentation section 3.2, in this mode, the device sends a continuous stream of packets at the maximum rate to the host when the user's fingers are near or on the pad or pressing buttons, and continues streaming for 1 second afterwards. These packets are even sent when there is no new information to report, even when they are duplicates of the previous packet. For embedded systems this is a bit much - it results in a huge and uninterrupted stream of interrupts at high rate. This patch adds support for Relative mode, which can be selected as a new psmouse protocol. In this mode, the device does not send duplicate packets and acts like a standard PS/2 mouse. However, synaptics-specific functionality is still available, such as the ability to set the packet rate, and rather than disabling gestures and taps at the hardware level unconditionally, a 'synaptics_disable_gesture' sysfs attribute has been added to allow control of this functionality. This solves a long standing OLPC issue: synaptics hardware enables tap to click by default (even in the default relative mode), but we have found this to be inappropriate for young children and first time computer users. Enabling the synaptics driver disables tap-to-click, but we have previously been unable to use this because it also enables Absolute mode, which is too "spammy" for our desires and actually overloads our EC with its continuous stream of packets. Now we can enable the synaptics driver, disabling tap to click while retaining the less noisy Relative mode. Signed-off-by: Daniel Drake <dsd@laptop.org> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
/drivers/input/mouse/psmouse.h
|
25bded7cd60fa460e520e9f819bd06f4c5cb53f0 |
|
08-Nov-2011 |
Seth Forshee <seth.forshee@canonical.com> |
Input: ALPS - add support for protocol versions 3 and 4 This patch adds support for two ALPS touchpad protocols not supported currently by the driver, which I am arbitrarily naming version 3 and version 4. Support is single-touch only at this time, although both protocols are capable of limited multitouch support. Thanks to Andrew Skalski, who did the initial reverse-engineering of the v3 protocol. Signed-off-by: Seth Forshee <seth.forshee@canonical.com> Acked-by: Chase Douglas <chase.douglas@canonical.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
/drivers/input/mouse/psmouse.h
|
b5d21704361eefe337a36ebbb57a1d9927132511 |
|
11-Oct-2011 |
Dmitry Torokhov <dmitry.torokhov@gmail.com> |
Input: psmouse - switch to using dev_*() for messages This will ensure our reporting is consistent with the rest of the system and we do not refer to obsolete source file names. Reviewed-by: Wanlong Gao <gaowanlong@cn.fujitsu.com> Reviewed-by: JJ Ding <dgdunix@gmail.com> Reviewed-by: Daniel Kurtz <djkurtz@chromium.org> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
/drivers/input/mouse/psmouse.h
|
6b9d363c49d22395d0cf8729c5963f83cfbb6d69 |
|
19-Apr-2010 |
Dmitry Torokhov <dmitry.torokhov@gmail.com> |
Input: psmouse - ignore parity error for basic protocols Observing behavior of the other OS it appears that parity errors reported by the keyboard controller are being ignored and the data is processed as usual. Let's do the same for standard PS/2 protocols (bare, Intellimouse and Intellimouse Explorer) to provide better compatibility. Thsi should fix teh following bug: https://bugzilla.kernel.org/show_bug.cgi?id=6105 Thanks for Damjan Jovanovic for locating the source of issue and ideas for the patch. Tested-by: Damjan Jovanovic <damjan.jov@gmail.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
/drivers/input/mouse/psmouse.h
|
b7802c5c1ea9563f3746bea09c214ccedc8600f4 |
|
10-Sep-2009 |
Dmitry Torokhov <dmitry.torokhov@gmail.com> |
Input: psmouse - use boolean type Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
/drivers/input/mouse/psmouse.h
|
fc69f4a6af49ee69475dc4217924d9edf77760e0 |
|
11-May-2009 |
Tai-hwa Liang <avatar@sentelic.com> |
Input: add new driver for Sentelic Finger Sensing Pad This is the driver for Sentelic Finger Sensing Pad which can be found on MSI WIND Netbook. Signed-off-by: Tai-hwa Liang <avatar@sentelic.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
/drivers/input/mouse/psmouse.h
|
3b72094409ab673d096b3852f4636be540780faf |
|
18-Aug-2009 |
Dmitry Torokhov <dmitry.torokhov@gmail.com> |
Input: psmouse - allow defining read-only attributes Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
/drivers/input/mouse/psmouse.h
|
2a0bd75e5e687a9c34921e942c18477ea7ec2d63 |
|
17-Oct-2008 |
Arjan Opmeer <arjan@opmeer.net> |
Input: psmouse - add support for Elantech touchpads This is version 5 of the driver. Relative mode support has been dropped (users wishing to use touchpad in relative mode can use standard PS/2 protocol emulation done in hardware). The driver supports both original version of Elantech protocol and the newer one used by touchpads installed in EeePC. Signed-off-by: Arjan Opmeer <arjan@opmeer.net> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
/drivers/input/mouse/psmouse.h
|
df08ef27a7f91961c91a2a718f5d1e616f1c8e57 |
|
16-Sep-2008 |
Andres Salomon <dilinger@queued.net> |
Input: psmouse - add OLPC touchpad driver This adds support for OLPC's touchpad. It has lots of neat features, none of which are enabled because the hardware is too buggy. Instead, we use it like a normal touchpad, but with a number of workarounds in place to deal with the frequent hardware spasms. Humidity changes, sweat, tinfoil underwear, plugging in AC, drinks, evil felines.. All tend to cause the touchpad to freak out. Signed-off-by: Andres Salomon <dilinger@debian.org> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
/drivers/input/mouse/psmouse.h
|
68d482214bb0eaac138ace329e72390d6c8d44ff |
|
16-Sep-2008 |
Andres Salomon <dilinger@debian.org> |
Input: psmouse - tweak PSMOUSE_DEFINE_ATTR to support raw set callbacks We want to support attr->set callbacks that may need psmouse->state to not be updated, or may want to manually deal w/ enabling and disabling the device. To do that, we create __PSMOUSE_DEFINE_ATTR which enables us to set a 'protect' argument specifying whether or not the set callback should be protected with psmouse_disable and state setting. Signed-off-by: Andres Salomon <dilinger@debian.org> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
/drivers/input/mouse/psmouse.h
|
8bf020ee9650899a45295d0c3a0744d4d1bf2801 |
|
16-Sep-2008 |
Andres Salomon <dilinger@queued.net> |
Input: psmouse - add psmouse_queue_work() for ps/2 extension to make use of psmouse_queue_work is passed a delayed_work struct, and queues up the work with kpsmouse_wq. Since we're dealing with delayed_work stuff, this also switches resync_work to a delayed_work struct as well, and makes use of psmouse_queue_work when doing a resync within psmouse-base. Signed-off-by: Andres Salomon <dilinger@debian.org> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
/drivers/input/mouse/psmouse.h
|
a48cf5f3e5aef5ecb667f954ae1ae2a9b875465f |
|
16-Sep-2008 |
Andres Salomon <dilinger@queued.net> |
Input: psmouse - export psmouse_set_state for ps/2 extensions to use Signed-off-by: Andres Salomon <dilinger@debian.org> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
/drivers/input/mouse/psmouse.h
|
7b595756ec1f49e0049a9e01a1298d53a7faaa15 |
|
13-Jun-2007 |
Tejun Heo <htejun@gmail.com> |
sysfs: kill unnecessary attribute->owner sysfs is now completely out of driver/module lifetime game. After deletion, a sysfs node doesn't access anything outside sysfs proper, so there's no reason to hold onto the attribute owners. Note that often the wrong modules were accounted for as owners leading to accessing removed modules. This patch kills now unnecessary attribute->owner. Note that with this change, userland holding a sysfs node does not prevent the backing module from being unloaded. For more info regarding lifetime rule cleanup, please read the following message. http://article.gmane.org/gmane.linux.kernel/510293 (tweaked by Greg to not delete the field just yet, to make it easier to merge things properly.) Signed-off-by: Tejun Heo <htejun@gmail.com> Cc: Cornelia Huck <cornelia.huck@de.ibm.com> Cc: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
/drivers/input/mouse/psmouse.h
|
aea6a46122a0ce65a831fd93cac6d2084ac666f9 |
|
10-May-2007 |
Aristeu Rozanski <arozansk@redhat.com> |
Input: psmouse - add support for Cortron PS/2 Trackballs Cortron PS/2 Trackballs (700-0001A) report the 4th button using the 4th bit of the first packet (yes, it breaks the standard PS/2 protocol). This patch adds an extra protocol to generate BTN_SIDE based on the 4th bit. There's no way to detect those trackballs using any kind of special sequence, thus the protocol must be activated explicitely by writing into 'protocol' sysfs attribute: echo -n "cortps" > /sys/devices/platform/i8042/serio1/protocol Signed-off-by: Aristeu Rozanski <arozansk@redhat.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
/drivers/input/mouse/psmouse.h
|
24bf10ab2d72863a14187905fd992ca8119c809e |
|
18-Feb-2007 |
Stefan Lucke <stefan@lucke.in-berlin.de> |
Input: psmouse - add support for eGalax PS/2 touchscreen controller Based on the touchkit USB and lifebook PS/2 touchscreen driver. The egalax touchsreen controller (PS/2 or USB version) is used in this 7" device: http://www.cartft.com/catalog/il/449 Signed-off-by: Michal Piotrowski <michal.k.k.piotrowski@gmail.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
/drivers/input/mouse/psmouse.h
|
a1cec06177386ecc320af643de11cfa77e8945bd |
|
18-Feb-2007 |
Dmitry Torokhov <dtor@insightbb.com> |
Input: psmouse - properly reset mouse on shutdown/suspend Some people report that they need psmouse module unloaded for suspend to ram/disk to work properly. Let's make port cleanup behave the same way as driver unload. This fixes "bad state" roblem on various HP laptops, such as nx7400. Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
/drivers/input/mouse/psmouse.h
|
7d12e780e003f93433d49ce78cfedf4b4c52adc5 |
|
05-Oct-2006 |
David Howells <dhowells@redhat.com> |
IRQ: Maintain regs pointer globally rather than passing to IRQ handlers 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)
/drivers/input/mouse/psmouse.h
|
f0d5c6f419d3a10443f66d6835855837eae4ac4b |
|
14-Jan-2006 |
Dmitry Torokhov <dtor_core@ameritech.net> |
Input: psmouse - attempt to re-synchronize mouse every 5 seconds This should help driver to deal vith KVMs that reset mice when switching between boxes. Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
/drivers/input/mouse/psmouse.h
|
2e5b636bb5f8dacbb91d08544e2c41ebcad5dace |
|
15-Sep-2005 |
Dmitry Torokhov <dtor_core@ameritech.net> |
[PATCH] drivers/input/mouse: convert to dynamic input_dev allocation 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>
/drivers/input/mouse/psmouse.h
|
cfe9e88866fe892f4f71bf132c64ec8bd5256e5e |
|
04-Sep-2005 |
Dmitry Torokhov <dtor_core@ameritech.net> |
Input: rework psmouse attributes to reduce module size Rearrange attribute code to use generic show and set handlers instead of replicating them for every attribute; switch to using attribute_group instead of creating all attributes manually. All this saves about 4K. Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
/drivers/input/mouse/psmouse.h
|
541e316aed6f7d6efeb427a88645c2a8f61418d6 |
|
08-Aug-2005 |
Stephen Evanchik <evanchsa@gmail.com> |
Input: psmouse - add support for IBM TrackPoint devices. Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
/drivers/input/mouse/psmouse.h
|
3e0777b8fa96f7073ed5d13d3bc1d573b766bef9 |
|
27-Jun-2005 |
Linus Torvalds <torvalds@ppc970.osdl.org> |
Merge rsync://rsync.kernel.org/pub/scm/linux/kernel/git/dtor/input.git manually Some manual fixups required due to clashes with the PF_FREEZE cleanups.
|
e404e274f62665f3333d6a539d0d3701f678a598 |
|
17-May-2005 |
Yani Ioannou <yani.ioannou@gmail.com> |
[PATCH] Driver Core: drivers/i2c/chips/w83781d.c - drivers/s390/block/dcssblk.c: update device attribute callbacks Signed-off-by: Yani Ioannou <yani.ioannou@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
/drivers/input/mouse/psmouse.h
|
dbf4ccd6043e58ed32fbf253fb3f0a9991e4c13a |
|
01-Jun-2005 |
Dmitry Torokhov <dtor_core@ameritech.net> |
Input: psmouse - export protocol as a sysfs per-device attribute to allow easy switching at run-time. Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
/drivers/input/mouse/psmouse.h
|
02d7f5895005bd559c6c12d0f1b4e3dd5d91b927 |
|
29-May-2005 |
Kenan Esau <kenan.esau@conan.de> |
Input: Add Fujitsu Lifebook B-series touchscreen driver. From: Kenan Esau <kenan.esau@conan.de> Signed-off-by: Vojtech Pavlik <vojtech@suse.cz> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
/drivers/input/mouse/psmouse.h
|
968ac842c4946abcd6ae623414783548672177f5 |
|
29-May-2005 |
Dmitry Torokhov <dtor_core@ameritech.net> |
Input: whitespace fixes in drivers/input/mouse Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
/drivers/input/mouse/psmouse.h
|
1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 |
|
17-Apr-2005 |
Linus Torvalds <torvalds@ppc970.osdl.org> |
Linux-2.6.12-rc2 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!
/drivers/input/mouse/psmouse.h
|