aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/input/mouse
Commit message (Collapse)AuthorAge
* sysfs: kill unnecessary attribute->ownerTejun Heo2007-07-11
| | | | | | | | | | | | | | | | | | | | | | | | | | 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>
* Input: add gpio-mouse driverHans-Christian Egtvedt2007-07-10
| | | | | | | | | | | | Adds support for simulating a mouse using GPIO lines. The driver needs an appropriate platform device to be created by architecture code. The driver has been tested on AT32AP7000 microprocessor using the ATSTK1000 development board. Signed-off-by: Hans-Christian Egtvedt <hcegtvedt@atmel.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: psmouse - add support for Cortron PS/2 TrackballsAristeu Rozanski2007-07-10
| | | | | | | | | | | | | | 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>
* Merge branch 'for-linus' of ↵Linus Torvalds2007-06-04
|\ | | | | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input: Input: reduce raciness when input handlers disconnect Input: ucb1x00 - do not access input_dev->private directly Input: logips2pp - fix typo in Kconfig Input: db9 - do not ignore dev2 module parameter
| * Input: logips2pp - fix typo in KconfigUwe Bugla2007-05-28
| | | | | | | | | | Signed-off-by: Uwe Bugla <uwe.bugla@gmx.de> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* | Merge branch 'for-linus' of ↵Linus Torvalds2007-05-23
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input: Input: ads7846 - SPI_CPHA mode bugfix Input: ads7846 - document that it handles tsc2046 too Input: input-polldev - add module info Input: ucb1x00-ts - remove commented out code Input: ucb1400_ts - use sched_setscheduler() Input: ALPS - force stream mode Input: iforce - minor clean-ups Input: iforce - fix force feedback not working Input: adbhid - do not access input_dev->private directly Input: logips2pp - add type 72 (PS/2 TrackMan Marble)
| * Input: ALPS - force stream modeDmitry Torokhov2007-05-22
| | | | | | | | | | | | | | | | | | | | 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>
| * Input: logips2pp - add type 72 (PS/2 TrackMan Marble)Peter Samuelson2007-05-08
| | | | | | | | | | | | | | | | | | | | This is purely cosmetic: this is standard 3-button, no wheel or other such features, so it already _worked_ just fine. This patch suppresses a warning about the unknown model, and changes the printk from "Mouse" to "TrackMan". Signed-off-by: Peter Samuelson <peter@p12n.org> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* | missing dependencies for USB drivers in inputAl Viro2007-05-15
|/ | | | | | | | stuff that does select USB should depend on USB_ARCH_HAS_HCD, or we'll end up with unbuildable configs. Signed-off-by: Al Viro <viro@zeniv.linux.org.uk> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* Input: move USB mice under drivers/input/mouseDmitry Torokhov2007-05-08
| | | | | | | | This will allow concentrating all input devices in one place in {menu|x|q}config. Signed-off-by: Dmitry Torokhov <dtor@mail.ru> Acked-by: Greg Kroah-Hartman <gregkh@suse.de>
* Merge git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6Dmitry Torokhov2007-05-08
|\
| * Merge branch 'for-linus' of ↵Linus Torvalds2007-05-04
| |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | master.kernel.org:/pub/scm/linux/kernel/git/dtor/input * 'for-linus' of master.kernel.org:/pub/scm/linux/kernel/git/dtor/input: (65 commits) Input: gpio_keys - add support for switches (EV_SW) Input: cobalt_btns - convert to use polldev library Input: add skeleton for simple polled devices Input: update some documentation Input: wistron - fix typo in keymap for Acer TM610 Input: add input_set_capability() helper Input: i8042 - add Fujitsu touchscreen/touchpad PNP IDs Input: i8042 - add Panasonic CF-29 to nomux list Input: lifebook - split into 2 devices Input: lifebook - add signature of Panasonic CF-29 Input: lifebook - activate 6-byte protocol on select models Input: lifebook - work properly on Panasonic CF-18 Input: cobalt buttons - separate device and driver registration Input: ati_remote - make button repeat sensitivity configurable Input: pxa27x - do not use deprecated SA_INTERRUPT flag Input: ucb1400 - make delays configurable Input: misc devices - switch to using input_dev->dev.parent Input: joysticks - switch to using input_dev->dev.parent Input: touchscreens - switch to using input_dev->dev.parent Input: mice - switch to using input_dev->dev.parent ... Fixed up conflicts with core device model removal of "struct subsystem" manually. Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
| * | m68k: Atari keyboard and mouse support.Michael Schmitz2007-05-04
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Atari keyboard and mouse support. (reformating and Kconfig fixes by Roman Zippel) Signed-off-by: Michael Schmitz <schmitz@debian.org> Signed-off-by: Roman Zippel <zippel@linux-m68k.org> Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* | | Input: synaptics - don't complain about failed resetsDmitry Torokhov2007-05-03
| |/ |/| | | | | | | | | | | | | | | | | On many laptops (Compaq, HP) the touchpad is so slow responding to reset that keyboard controller times out. The device is reset nonetheless and works fine. Kill the "synaptics reset failed" error; if device is not working then other parts of synaptics_query_hardware() will fail anyway. Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* | Input: lifebook - split into 2 devicesDmitry Torokhov2007-04-25
| | | | | | | | | | | | | | | | | | Have lifebook protocol register 2 separate input devices - one for the touchscreen reporting absolute coordinates and touches and another one for touchpad reporting relative coordinates and left and right button presses. Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* | Input: lifebook - add signature of Panasonic CF-29Dmitry Torokhov2007-04-25
| | | | | | | | Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* | Input: lifebook - activate 6-byte protocol on select modelsDmitry Torokhov2007-04-12
| | | | | | | | | | | | | | | | | | | | | | It appears that if we turn on 6-byte Lifebook protocol on Panasonic CF-28 its touchpad is left alone and generates standard 3-byte PS/2 data stream with relative packets instead of being converted in 3-byte Lifebook protocol with absolute coordinates - in other words what get what we need to distinguish between touchscreen and touchpad. Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* | Input: lifebook - work properly on Panasonic CF-18Dmitry Torokhov2007-04-12
| | | | | | | | | | | | | | | | | | Panasonic CF18 has an active multiplexing controller with touchscreen connected to one port and a touchpad to another. Use "phys" from serio port to activate lifebook protoocol only on the port that has touchscreen connected to it. Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* | Input: mice - switch to using input_dev->dev.parentDmitry Torokhov2007-04-12
| | | | | | | | | | | | | | | | In preparation for struct class_device -> struct device input core conversion, switch to using input_dev->dev.parent when specifying device position in sysfs tree. Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* | Input: drivers/input/mice - don't access dev->private directlyDmitry Torokhov2007-04-12
| | | | | | | | Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* | Input: logips2pp - add model 1 informationDmitry Torokhov2007-04-12
| | | | | | | | | | | | | | It turns out I had an old 2-button Logitech mouse that responds to Logitech's queries with model of 1. Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* | Input: logips2pp - ignore mice reporting model as 0Dmitry Torokhov2007-04-12
| | | | | | | | | | | | | | There are mice reporting to logitech's queries with model of 0. Do not claim that these are Logitech mice. Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* | Input: ALPS - handle errors from input_register_device()Dmitry Torokhov2007-04-12
| | | | | | | | Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* | Input: synaptics - export model bitsDmitry Torokhov2007-04-12
| | | | | | | | | | | | | | | | Encode synaptics model in psmouse->model so it will be exported via sysfs as input_dev->id.version and become visible for applications. Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* | Input: sermouse - improve protocol error recoveryPeter Osterlund2007-03-16
| | | | | | | | | | | | | | | | | | | | | | | | | | When using MS protocol the driver should wait for a byte with bit 6 set before assuming that it sees beginning of a data packet. This should allow driver better cope with lost bytes and prevent spurious left/right button events when serial communication is disturbed by a CPU-hungry real-time process. Also fix some formatting. Signed-off-by: Peter Osterlund <petero2@telia.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* | Input: psmouse - allow disabing certain protocol extensionsAndres Salomon2007-03-10
| | | | | | | | | | | | | | | | | | | | Allow ALPS, LOGIPS2PP, LIFEBOOK, TRACKPOINT and TOUCHKIT protocol extensions of psmouse to be disabled during compilation. This will allow users save some memory when they are sure that they will only use a certain type of mice. Signed-off-by: Andres Salomon <dilinger@debian.org> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* | Input: psmouse - do not force stream modeDmitry Torokhov2007-03-07
| | | | | | | | | | | | | | | | Forcing stream mode after reset confuses some devices (reported by Andrea Arcangeli) so let's take it out - spec says that after reset mouse should already be in stream mode. Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* | Input: HIL - cleanup coding styleHelge Deller2007-02-28
| | | | | | | | | | Signed-off-by: Helge Deller <deller@gmx.de> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* | Input: psmouse - add support for eGalax PS/2 touchscreen controllerStefan Lucke2007-02-18
|/ | | | | | | | | | | 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>
* Input: remove obsolete setup parameters from input driversDmitry Torokhov2007-02-18
| | | | | | | They have been marked as __obsolete_setup() for several years, it is time for them to go. Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: psmouse - properly reset mouse on shutdown/suspendDmitry Torokhov2007-02-18
| | | | | | | | | | | 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>
* [PATCH] remove many unneeded #includes of sched.hTim Schmielau2007-02-14
| | | | | | | | | | | | | | | | | | | | | | | | After Al Viro (finally) succeeded in removing the sched.h #include in module.h recently, it makes sense again to remove other superfluous sched.h includes. There are quite a lot of files which include it but don't actually need anything defined in there. Presumably these includes were once needed for macros that used to live in sched.h, but moved to other header files in the course of cleaning it up. To ease the pain, this time I did not fiddle with any header files and only removed #includes from .c-files, which tend to cause less trouble. Compile tested against 2.6.20-rc2 and 2.6.20-rc2-mm2 (with offsets) on alpha, arm, i386, ia64, mips, powerpc, and x86_64 with allnoconfig, defconfig, allmodconfig, and allyesconfig as well as a few randconfigs on x86_64 and all configs in arch/arm/configs on arm. I also checked that no new warnings were introduced by the patch (actually, some warnings are removed that were emitted by unnecessarily included header files). Signed-off-by: Tim Schmielau <tim@physik3.uni-rostock.de> Acked-by: Russell King <rmk+kernel@arm.linux.org.uk> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* Input: inport - use correct config option for ATIXLRobert P. J. Day2007-02-10
| | | | | | | | | | Change the apparently incorrect check for CONFIG_INPUT_ATIXL in a source file to be consistent with the kernel config option CONFIG_MOUSE_ATIXL. Signed-off-by: Robert P. J. Day <rpjday@mindspring.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Input: pc110pad - return proper errorAkinobu Mita2006-12-21
| | | | | | | | The driver should return -ENODEV rather than -ENOENT when it detects a PCI device in the box. Signed-off-by: Akinobu Mita <akinobu.mita@gmail.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* Merge rsync://rsync.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6Dmitry Torokhov2006-12-08
|\ | | | | | | | | | | Conflicts: drivers/usb/input/hid.h
| * WorkStruct: make allyesconfigDavid Howells2006-11-22
| | | | | | | | | | | | Fix up for make allyesconfig. Signed-Off-By: David Howells <dhowells@redhat.com>
* | Input: handle serio_register_driver() errorsAkinobu Mita2006-11-23
| | | | | | | | | | Signed-off-by: Akinobu Mita <akinobu.mita@gmail.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* | Input: psmouse - fix attribute access on 64-bit systemsSergey Vlasov2006-11-09
| | | | | | | | | | | | | | | | psmouse_show_int_attr() and psmouse_set_int_attr() were accessing unsigned int fields as unsigned long, which gave garbage on x86_64. Signed-off-by: Sergey Vlasov <vsu@altlinux.ru> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* | Input: mice - handle errors when registering input devicesDmitry Torokhov2006-11-05
| | | | | | | | Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* | Input: logips2pp - handle sysfs errorsJeff Garzik2006-11-02
| | | | | | | | | | Signed-off-by: Jeff Garzik <jeff@garzik.org> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* | Input: trackpoint - handle sysfs errorsJeff Garzik2006-11-02
| | | | | | | | | | | | | | Also use kzalloc instead of kcalloc since we are allocating single object. Signed-off-by: Jeff Garzik <jeff@garzik.org> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* | Input: lifebook - learn about hard tabsAndrew Morton2006-11-02
| | | | | | | | | | Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* | Input: lifebook - add Hitachi Flora-IE 55mi tablet DMI signatureGreg Chandler2006-11-02
|/ | | | | | | | | This adds another DMI detected touchscreen. It is exactly the same driver as the existing ones, but this allows it to be detected on the Hitachi Flora-IE 55mi tablet. The original Midori drivers are "abeo antiquus". This should allow new life for these machines. Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
* [PATCH] m68k/HP300: Enable HIL configuration optionsGeert Uytterhoeven2006-10-09
| | | | | | | | Enable HIL configuration options on HP300 Signed-off-by: Kars de Jong <jongk@linux-m68k.org> Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* Build fixes for struct pt_regs removalMatthew Wilcox2006-10-06
| | | | Signed-off-by: Matthew Wilcox <matthew@wil.cx>
* 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)
* Merge rsync://rsync.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6Dmitry Torokhov2006-09-19
|\
| * Input: psmouse - fix Intellimouse 4.0 initializationPozsar Balazs2006-08-23
| | | | | | | | | | | | | | Revert the superfluous initilization causing some mice become jumpy. Signed-off-by: Pozsar Balazs <pozsy@uhulinux.hu> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| * Input: trackpoint - activate protocol when resumingDmitry Torokhov2006-08-04
| | | | | | | | | | | | | | Trackpoint driver was not sending the magic knock sequence upon resume causing incorrect device behavior after resuming from disk. Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| * Input: logips2pp - fix button mapping for MX300Roberto Castagnola2006-08-04
| | | | | | | | | | | | | | | | | | MX300 does not have an EXTRA_BTN - it is a simple wheel mouse with an additional task-switcher button, which is reported as side button (and not task button). Signed-off-by: Daniel Drake <dsd@gentoo.org> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>