Commit Graph

769 Commits

Author SHA1 Message Date
Linus Torvalds
d43a338e39 Merge branch 'for-linus' of master.kernel.org:/pub/scm/linux/kernel/git/dtor/input
* 'for-linus' of master.kernel.org:/pub/scm/linux/kernel/git/dtor/input:
  Input: remove obsolete setup parameters from input drivers
  Input: HIL - fix improper call to release_region()
  Input: hid-lgff - treat devices as joysticks unless told otherwise
  Input: HID - add support for Logitech Formula Force EX
  Input: gpio-keys - switch to common GPIO API
  Input: do not lock device when showing name, phys and uniq
  Input: i8042 - let serio bus suspend ports
  Input: psmouse - properly reset mouse on shutdown/suspend
2007-02-19 13:31:34 -08:00
Yoichi Yuasa
bebb8a2bc1 Input: add driver for MIPS Cobalt back panel buttons
Tested on Cobalt Qube2.

Signed-off-by: Yoichi Yuasa <yoichi_yuasa@tripeaks.co.jp>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2007-02-18 01:50:18 -05:00
Stefan Lucke
24bf10ab2d 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>
2007-02-18 01:49:10 -05:00
Dmitry Torokhov
62b529a7b9 Input: remove obsolete setup parameters from input drivers
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>
2007-02-18 01:44:58 -05:00
Cyrill V. Gorcunov
2a575f11fb Input: HIL - fix improper call to release_region()
Do not call release_region() if the code has been compiled
without CONFIG_HP300 support.

Signed-off-by: Cyrill V. Gorcunov <gorcunov@gmail.com>
Acked-by: Helge Deller <deller@gmx.de>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2007-02-18 01:44:02 -05:00
Philipp Zabel
0d98f6bbd8 Input: gpio-keys - switch to common GPIO API
This adds support for at least SA1100 and S3C24xx CPUs.

Signed-off-by: Philipp Zabel <philipp.zabel@gmail.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2007-02-18 01:40:46 -05:00
Dmitry Torokhov
1efa770f8e Input: do not lock device when showing name, phys and uniq
Now that sysfs attributes return -ENODEV once driver requests their
removal we do not need to handle scenario when data is deleted from
under our feet and can simplify the code.

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2007-02-18 01:40:37 -05:00
Dmitry Torokhov
82dd9eff4b Input: i8042 - let serio bus suspend ports
Let serio subsystem take care of suspending the ports; concentrate
on suspending/resuming the controller itself.

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2007-02-18 01:40:30 -05:00
Dmitry Torokhov
a1cec06177 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>
2007-02-18 01:40:24 -05:00
Tobias Klauser
c5a69d57eb Storage class should be before const qualifier
The C99 specification states in section 6.11.5:

The placement of a storage-class specifier other than at the
beginning of the declaration specifiers in a declaration is an
obsolescent feature.

Signed-off-by: Tobias Klauser <tklauser@distanz.ch>
Signed-off-by: Adrian Bunk <bunk@stusta.de>
2007-02-17 20:11:19 +01:00
Thomas Gleixner
c9cb2e3d7c [PATCH] hrtimers: namespace and enum cleanup
- hrtimers did not use the hrtimer_restart enum and relied on the implict
  int representation. Fix the prototypes and the functions using the enums.
- Use seperate name spaces for the enumerations
- Convert hrtimer_restart macro to inline function
- Add comments

No functional changes.

[akpm@osdl.org: fix input driver]
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Cc: john stultz <johnstul@us.ibm.com>
Cc: Roman Zippel <zippel@linux-m68k.org>
Cc: Dmitry Torokhov <dtor@mail.ru>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2007-02-16 08:13:58 -08:00
Thomas Gleixner
2db6346f76 [PATCH] Scheduled removal of SA_xxx interrupt flags fixups 2
The obsolete SA_xxx interrupt flags have been used despite the scheduled
removal.  Fixup the remaining users in -mm.

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Acked-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2007-02-14 08:09:55 -08:00
Tim Schmielau
cd354f1ae7 [PATCH] remove many unneeded #includes of sched.h
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>
2007-02-14 08:09:54 -08:00
Arjan van de Ven
2b8693c061 [PATCH] mark struct file_operations const 3
Many struct file_operations in the kernel can be "const".  Marking them const
moves these to the .rodata section, which avoids false sharing with potential
dirty data.  In addition it'll catch accidental writes at compile time to
these shared resources.

Signed-off-by: Arjan van de Ven <arjan@linux.intel.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2007-02-12 09:48:45 -08:00
Linus Torvalds
d68798374b Merge branch 'for-linus' of 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: remove scan_keyb driver
  Input: i8042 - fix AUX IRQ delivery check
  Input: wistron - add support for Fujitsu-Siemens Amilo D88x0
  Input: inport - use correct config option for ATIXL
  Input: HIL - handle erros from input_register_device()
  Input: tsdev - schedule removal
  Input: add Atlas button driver
  Input: ads7846 - be more compatible with the hwmon framework
  Input: ads7846 - detect pen up from GPIO state
  Input: ads7846 - select correct SPI mode
  Input: ads7846 - switch to using hrtimer
  Input: ads7846 - optionally leave Vref on during differential measurements
  Input: ads7846 - pluggable filtering logic
  Input: gpio-keys - keyboard driver for GPIO buttons
  Input: hid-ff - add support for Logitech Momo racing wheel
  Input: i8042 - really suppress ACK/NAK during panic blink
  Input: pc110pad - return proper error
2007-02-11 11:50:24 -08:00
Robert P. J. Day
3de3af130b [PATCH] Remove unnecessary memset(0) calls after kzalloc() calls.
Delete the few remaining unnecessary calls to memset(0) after a call to
kzalloc().

Signed-off-by: Robert P. J. Day <rpjday@mindspring.com>
Cc: Andi Kleen <ak@suse.de>
Cc: Dmitry Torokhov <dtor@mail.ru>
Cc: Adam Belay <ambx1@neo.rr.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2007-02-11 10:51:31 -08:00
Dmitry Torokhov
1e4865f8d4 Input: i8042 - fix AUX IRQ delivery check
On boxes that do not implement AUX LOOP command we can not
verify AUX IRQ delivery and must assume that it is wired
properly.

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2007-02-10 01:29:53 -05:00
Michael Leun
5809d537c1 Input: wistron - add support for Fujitsu-Siemens Amilo D88x0
Tested on a Amilo D8820.

Signed-off-by: Michael Leun <ml@newton.leun.net>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2007-02-10 01:29:42 -05:00
Robert P. J. Day
8370a64353 Input: inport - use correct config option for ATIXL
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>
2007-02-10 01:29:31 -05:00
Cyrill V. Gorcunov
b350620cc5 Input: HIL - handle erros from input_register_device()
Also some whitespace cleanup.

Signed-off-by: Cyrill V. Gorcunov <gorcunov@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2007-02-10 01:29:19 -05:00
Richard Purdie
ff141a03e1 Input: tsdev - schedule removal
Compaq touchscreen emulation (drivers/input/tsdev.c) is old,
was obsolete when it was written by the authors own admission
and much better userspace solutions like tslib now exist.
The name is also confusing.

Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
Acked-by: James Simmons <jsimmons@infradead.org>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2007-02-10 01:29:11 -05:00
Jaya Kumar
31ea7ff0f8 Input: add Atlas button driver
This patch adds support for the buttons on the Atlas wallmount
touchscreen.

Signed-off-by: Jaya Kumar <jayakumar.acpi@gmail.com>
Acked-by: Len Brown <len.brown@intel.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2007-02-10 01:29:00 -05:00
Dmitry Torokhov
b22364c8ee Merge rsync://rsync.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6 2007-02-10 01:26:32 -05:00
Andrew Morton
ca377fecdd [ALSA] ucb1400_ts.c compilation fix (struct snd_ac97)
From: Andrew Morton <akpm@osdl.org>
Cc: Takashi Iwai <tiwai@suse.de>

Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2007-02-09 09:02:25 +01:00
Greg Kroah-Hartman
4b315627e6 SERIO: add the sysfs driver name to all modules
This adds the module name to all SERIO drivers, if they are built into
the kernel or not.  It will show up in /sys/modules/MODULE_NAME/drivers/

Cc: Kay Sievers <kay.sievers@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2007-02-07 10:37:12 -08:00
David Brownell
2c8dc07151 Input: ads7846 - be more compatible with the hwmon framework
- Hook up to hwmon
     * show sensor attributes only if hwmon is present
     * ... and the board's reference voltage is known
     * otherwise be just a touchscreen
 - Report voltages per hwmon convention
     * measure in millivolts
     * voltages are named in[0-8]_input (ugh)
     * for 7846 chips, properly range-adjust vBATT/in1_input

Battery measurements help during recharge monitoring.  On OSK/Mistral,
the measured voltage agreed with a multimeter to several decimal places.

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2007-01-18 00:45:48 -05:00
Imre Deak
15e3589e59 Input: ads7846 - detect pen up from GPIO state
We can't depend on the pressure value to determine when the pen was
lifted, so use the GPIO line state instead. This also helps with
chips (like ads7843) that don't have pressure sensors.

Signed-off-by: Imre Deak <imre.deak@solidboot.com>
Signed-off-by: Juha Yrjola <juha.yrjola@solidboot.com>
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2007-01-18 00:45:43 -05:00
Imre Deak
7937e86a70 Input: ads7846 - select correct SPI mode
Talk to ADS7846 chip using SPI mode 1, which is what the chip
supports: writes on falling clock edge, reads on rising.

Signed-off-by: Imre Deak <imre.deak@nokia.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2007-01-18 00:45:38 -05:00
Imre Deak
1936d590a9 Input: ads7846 - switch to using hrtimer
Use hrtimer instead of the normal timer, since it provides better
sampling resolution. This will:

 - avoid a problem where we have a 1 jiffy poll period and
   dynamic tick on
 - utilize high resolution HW clocks when they are added to
   the hrtimer framework

Signed-off-by: Imre Deak <imre.deak@solidboot.com>
Signed-off-by: Juha Yrjola <juha.yrjola@solidboot.com>
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2007-01-18 00:45:31 -05:00
Imre Deak
de2defd96d Input: ads7846 - optionally leave Vref on during differential measurements
On some LCDs leaving the Vref on provides much better readings.

Signed-off-by: Jarkko Oikarinen <jarkko.oikarinen@nokia.com>
Signed-off-by: Imre Deak <imre.deak@solidboot.com>
Signed-off-by: Juha Yrjola <juha.yrjola@solidboot.com>
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2007-01-18 00:45:21 -05:00
Imre Deak
da970e69ef Input: ads7846 - pluggable filtering logic
Some LCDs like the LS041Y3 require a customized filtering
logic for reliable readings, so make the filtering function
replacable through platform specific hooks.

Signed-off-by: Imre Deak <imre.deak@solidboot.com>
Signed-off-by: Juha Yrjola <juha.yrjola@solidboot.com>
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2007-01-18 00:44:41 -05:00
Phil Blundell
78a56aab11 Input: gpio-keys - keyboard driver for GPIO buttons
This is an interrupt-driven keyboard driver for simple buttons
connected directly to CPU GPIO lines of embedded ARM systems.
It supports pxa architectures and is used by a number of PDAs
and PocketPC phones in the handhelds.org kernel. Support for
other architectures, such as sa11xx and sc2410, will be added
once generic GPIO API is available.

Signed-off-by: Paul Sokolovsky <pmiscml@gmail.com>
Signed-off-by: Philipp Zabel <philipp.zabel@gmail.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2007-01-18 00:44:09 -05:00
Dmitry Torokhov
19f3c3e373 Input: i8042 - really suppress ACK/NAK during panic blink
On some boxes panic blink procedure manages to send both bytes
to keyboard contoller before getting first ACK so we need to
make i8042_suppress_kbd_ack a counter instead of boolean.

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2007-01-18 00:42:31 -05:00
David S. Miller
e3a411a3df [SPARC64]: Fix of_iounmap() region release.
We need to pass in the resource otherwise we cannot
release the region properly.  We must know whether it is
an I/O or MEM resource.

Spotted by Eric Brower.

Signed-off-by: David S. Miller <davem@davemloft.net>
2006-12-31 14:06:05 -08:00
Akinobu Mita
65a2d2258e Input: pc110pad - return proper error
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>
2006-12-21 00:42:55 -05:00
Fabrice Knevez
9bc83dcff8 [SUNKBD]: Fix sunkbd_enable(sunkbd, 0); obvious.
"sunkbd_enable(sunkbd, 0);" has no effect. Adding "sunkbd->enabled =
enable" in sunkbd_enable (obvious)

Signed-off-by: Fabrice Knevez <nuxdoors@cegetel.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
2006-12-17 14:06:58 -08:00
Al Viro
2bb71b5a44 [PATCH] m68k trivial build fixes
amikbd: missing declaration
sun3_NCR5380: more work_struct mess
sun3_NCR5380: cast is not an lvalue

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2006-12-17 10:21:53 -08:00
Al Viro
db71b7f19c [PATCH] missing includes in hilkbd
Now that it's built on m68k too...

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-12-13 09:05:52 -08:00
Nicolas Pitre
e1036502e5 [PATCH] remove config ordering/dependency between ucb1400-ts and sound subsystem
Commit 2d4ba4a3b9 introduced a dependency
that was never meant to exist when the ac97_bus.c module was created.
Move ac97_bus.c up the directory hierarchy to make sure it is built when
selected even if sound is configured out so things work as originally
intended.

Signed-off-by: Nicolas Pitre <nico@cam.org>
Acked-by: Randy Dunlap <randy.dunlap@oracle.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-12-12 10:43:21 -08:00
Randy Dunlap
2d4ba4a3b9 [PATCH] ucb1400_ts depends SND_AC97_BUS
This driver is an AC97 codec according to its help text.  However, if SOUND is
disabled, the "select SND_AC97_BUS" still inserts that into the .config file:

#
# Sound
#
# CONFIG_SOUND is not set
CONFIG_SND_AC97_BUS=m

Even if the config software followed dependency chains on selects, we should
try to limit usage of "select" to library-type code that is needed (e.g., CRC
functions) instead of bus-type support.

Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-12-10 09:55:39 -08:00
Jiri Kosina
63f3861d2f [PATCH] Generic HID layer - build
This modifies Makefiles and Kconfigs to properly reflect the creation of
generic HID layer.

It also removes the dependency of BROKEN, which was introduced by the
first patch in series (see the comment). Also updates credits.

Signed-off-by: Jiri Kosina <jkosina@suse.cz>
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
Cc: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2006-12-08 10:43:20 -08:00
Dmitry Torokhov
bff19b1d0b Input: ucb1400 - fix compile error
try_to_freeze() was moved into include/linux/freezer.h

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-12-08 01:37:03 -05:00
Paul Mundt
f90c34b8c6 Input: kill maple_keyb.c driver
The bus for this was removed entirely some time ago, as well as most
of the drivers that referenced it. maple_keyb seems to have been the
odd one out, and was still sitting in the source tree (though not
actually part of the build system). Kill off the rest of it..

Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-12-08 01:36:44 -05:00
Dmitry Torokhov
bb06ec3cc5 Input: i8042 - add another Lifebook P7010 to nomux blacklist
We already had entry for Fujitsu Lifebook P7010 in the nomux
blacklist but for some reason Fujitsu decided to fiddle with
DMI data...

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-12-08 01:36:32 -05:00
Dmitry Torokhov
bef986502f Merge rsync://rsync.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6
Conflicts:

	drivers/usb/input/hid.h
2006-12-08 01:07:56 -05:00
Neil Horman
5d469ec0f4 [PATCH] Correct misc_register return code handling in several drivers
Clean up several code points in which the return code from misc_register is
not handled properly.

Several modules failed to deregister various hooks when misc_register fails,
and this patch cleans them up.  Also there are a few modules that legitimately
don't care about the failure status of misc register.  These drivers however
unilaterally call misc_deregister on module unload.

Since misc_register doesn't initialize the list_head in the init_routine if it
fails, the deregister operation is at risk for oopsing when list_del is
called.  The initial solution was to manually init the list in the miscdev
structure in each of those modules, but the consensus in this thread was to
consolodate and do that universally inside misc_register.

Signed-off-by: Neil Horman <nhorman@tuxdriver.com>
Cc: Bjorn Helgaas <bjorn.helgaas@hp.com>
Cc: Kylene Jo Hall <kjhall@us.ibm.com>
Cc: Dmitry Torokhov <dtor@mail.ru>
Cc: Olaf Hering <olh@suse.de>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-12-07 08:39:35 -08:00
Nigel Cunningham
7dfb71030f [PATCH] Add include/linux/freezer.h and move definitions from sched.h
Move process freezing functions from include/linux/sched.h to freezer.h, so
that modifications to the freezer or the kernel configuration don't require
recompiling just about everything.

[akpm@osdl.org: fix ueagle driver]
Signed-off-by: Nigel Cunningham <nigel@suspend2.net>
Cc: "Rafael J. Wysocki" <rjw@sisk.pl>
Cc: Pavel Machek <pavel@ucw.cz>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-12-07 08:39:27 -08:00
Christoph Lameter
e94b176609 [PATCH] slab: remove SLAB_KERNEL
SLAB_KERNEL is an alias of GFP_KERNEL.

Signed-off-by: Christoph Lameter <clameter@sgi.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-12-07 08:39:24 -08:00
David Howells
4c1ac1b491 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6
Conflicts:

	drivers/infiniband/core/iwcm.c
	drivers/net/chelsio/cxgb2.c
	drivers/net/wireless/bcm43xx/bcm43xx_main.c
	drivers/net/wireless/prism54/islpci_eth.c
	drivers/usb/core/hub.h
	drivers/usb/input/hid-core.c
	net/core/netpoll.c

Fix up merge failures with Linus's head and fix new compilation failures.

Signed-Off-By: David Howells <dhowells@redhat.com>
2006-12-05 14:37:56 +00:00
Linus Torvalds
9641219825 Merge master.kernel.org:/pub/scm/linux/kernel/git/gregkh/usb-2.6
* master.kernel.org:/pub/scm/linux/kernel/git/gregkh/usb-2.6: (103 commits)
  usbcore: remove unused argument in autosuspend
  USB: keep count of unsuspended children
  USB hub: simplify remote-wakeup handling
  USB: struct usb_device: change flag to bitflag
  OHCI: make autostop conditional on CONFIG_PM
  USB: Add autosuspend support to the hub driver
  EHCI: Fix root-hub and port suspend/resume problems
  USB: create a new thread for every USB device found during the probe sequence
  USB: add driver for the USB debug devices
  USB: added dynamic major number for USB endpoints
  USB: pegasus error path not resetting task's state
  USB: endianness fix for asix.c
  USB: build the appledisplay driver
  USB serial: replace kmalloc+memset with kzalloc
  USB: hid-core: canonical defines for Apple USB device IDs
  USB: idmouse cleanup
  USB: make drivers/usb/core/driver.c:usb_device_match() static
  USB: lh7a40x_udc remove double declaration
  USB: pxa2xx_udc recognizes ixp425 rev b0 chip
  usbtouchscreen: add support for DMC TSC-10/25 devices
  ...
2006-12-01 16:41:58 -08:00
Greg Kroah-Hartman
94fbcded4e Driver core: change misc class_devices to be real devices
This also ment that some of the misc drivers had to also be fixed
up as they were assuming the device was a class_device.

Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2006-12-01 14:51:59 -08:00
Mariusz Kozlowski
8f21d119f4 usb: iforce-usb free urb cleanup
- usb_free_urb() cleanup

Signed-off-by: Mariusz Kozlowski <m.kozlowski@tuxland.pl>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2006-12-01 14:23:32 -08:00
Randy Dunlap
e4477d2d1b Input: add to kernel-api docbook
Add input subsystem to kernel-api docbook.
Enhance some function and parameter comments.

Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-11-24 00:43:09 -05:00
Nicolas Bellido
f9705fcb98 Input: add driver for keyboard on AAED-2000 development board (ARM)
The keyboard is connected via GPIOs to the processor, and scanned
using a column sample register. The hardware provides no debouncing
mechanism, so the state of the keys is read KBDSCAN_STABLE_COUNT
times before being reported to the input layer.

The status of the keys needs to be polled because there is no
interrupt hooked to the lines. A workqueue is used for this.

Signed-off-by: Nicolas Bellido Y Ortega <ml@acolin.be>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-11-24 00:42:50 -05:00
Akinobu Mita
153a9df01c Input: handle serio_register_driver() errors
Signed-off-by: Akinobu Mita <akinobu.mita@gmail.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-11-23 23:35:10 -05:00
Dmitry Torokhov
ed7b1f6d6e Input: serio - make serio_register_driver() return errors
Perform actual driver registration right in serio_register_driver()
instead of offloading it to kseriod and return proper error code to
callers if driver registration fails.

Note that driver <-> port matching is still done by kseriod to
speed up boot process since probing for PS/2 mice and keyboards
is pretty slow.

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-11-23 23:34:49 -05:00
David Howells
c4028958b6 WorkStruct: make allyesconfig
Fix up for make allyesconfig.

Signed-Off-By: David Howells <dhowells@redhat.com>
2006-11-22 14:57:56 +00:00
David Howells
65f27f3844 WorkStruct: Pass the work_struct pointer instead of context data
Pass the work_struct pointer to the work function rather than context data.
The work function can use container_of() to work out the data.

For the cases where the container of the work_struct may go away the moment the
pending bit is cleared, it is made possible to defer the release of the
structure by deferring the clearing of the pending bit.

To make this work, an extra flag is introduced into the management side of the
work_struct.  This governs auto-release of the structure upon execution.

Ordinarily, the work queue executor would release the work_struct for further
scheduling or deallocation by clearing the pending bit prior to jumping to the
work function.  This means that, unless the driver makes some guarantee itself
that the work_struct won't go away, the work function may not access anything
else in the work_struct or its container lest they be deallocated..  This is a
problem if the auxiliary data is taken away (as done by the last patch).

However, if the pending bit is *not* cleared before jumping to the work
function, then the work function *may* access the work_struct and its container
with no problems.  But then the work function must itself release the
work_struct by calling work_release().

In most cases, automatic release is fine, so this is the default.  Special
initiators exist for the non-auto-release case (ending in _NAR).


Signed-Off-By: David Howells <dhowells@redhat.com>
2006-11-22 14:55:48 +00:00
Jan-Benedict Glaw
1d08811d0c lkkbd: Remove my old snail-mail address
I moved to a different town and my old snail-mail address is invalid
now.  Also, there's no need at all to have any address like that in
the sources, so remove it completely.

Signed-off-by: Jan-Benedict Glaw <jbglaw@lug-owl.de>
2006-11-17 10:32:04 +01:00
Dmitry Torokhov
9d92fe17b6 Input: serio - remove serio_unregister_port_delayed()
Now that i8042 reserves IRQs early there are no more users of this
function and it should be removed.

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-11-17 01:07:39 -05:00
Nicolas Pitre
f40219bf93 Input: add Philips UCB1400 touchscreen driver
Signed-off-by: Nicolas Pitre <nico@cam.org>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-11-17 01:07:26 -05:00
Dmitry Torokhov
a216a4b6e6 Input: i8042 - fix shutdown issue on some boxes with active MUXes
MUX error handling has a workaround for KBCs that get confused which
port data came from and signal MUXERR while data is actually good.
Unfortunately this workaround hurts with KBCs that signal timeouts
as 0xfc (spec says that only 0xfd, 0xfe and 0xff are alowed with
MUXERR) since it causes endless attempts to rescan i8042 serio
ports. The solution is to treat 0xfc as timeout (0xfe).

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-11-17 01:07:06 -05:00
Marton Nemeth
6c595fb12f Input: mousedev - remap BTN_FORWARD from BTN_LEFT to BTN_MIDDLE
In mousedev the BTN_LEFT and BTN_FORWARD were mapped to mouse button 0,
causing that the user space program cannot distinguish between them through
/dev/input/mice. All mice have BTN_LEFT, but not all have BTN_MIDDLE (e.g.
Clevo D410J laptop). Mapping BTN_FORWARD to mouse button 2 makes the
BTN_FORWARD button useful on this laptop.

Signed-off-by: Marton Nemeth <nm127@freemail.hu>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-11-17 01:06:54 -05:00
Sergey Vlasov
eb5d5829b3 Input: psmouse - fix attribute access on 64-bit systems
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>
2006-11-09 00:34:27 -05:00
Dmitry Torokhov
721556150e Input: mice - handle errors when registering input devices
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-11-05 22:40:19 -05:00
Dmitry Torokhov
127278ce22 Input: joysticks - handle errors when registering input devices
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-11-05 22:40:09 -05:00
Dmitry Torokhov
52c1f5704d Input: touchscreens - handle errors when registering input devices
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-11-05 22:40:03 -05:00
Dmitry Torokhov
2b03b60e6b Input: keyboards - handle errors when registering input devices
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-11-05 22:39:56 -05:00
Dmitry Torokhov
752c58a471 Merge rsync://rsync.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6 2006-11-04 22:42:39 -05:00
Jeff Garzik
0fea0e9a9c Input: logips2pp - handle sysfs errors
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-11-02 23:59:40 -05:00
Jeff Garzik
8ff22ea7d2 Input: trackpoint - handle sysfs errors
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>
2006-11-02 23:59:30 -05:00
Dmitry Torokhov
8dd51650ba Input: ads7846 - handle errors from sysfs
Add sysfs error handling and switch to using attribute groups
to simplify it.

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-11-02 23:34:09 -05:00
Dmitry Torokhov
f4e3c711b3 Input: i8042 - remove unneeded call to i8042_interrupt()
Remove call to i8042_interrupt() from i8042_aux_write(). According
to Vojtech it may cause problems with older controllers if it is
called right after real interrupt. Also it is not needed anymore
since we register IRQs early and not waiting for serio ports to
be opened.

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-11-02 23:27:49 -05:00
Andrew Morton
b1b2965057 Input: lifebook - learn about hard tabs
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-11-02 23:27:44 -05:00
Greg Chandler
15e9acb83c Input: lifebook - add Hitachi Flora-IE 55mi tablet DMI signature
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>
2006-11-02 23:27:38 -05:00
Dmitry Torokhov
b187dd7b52 Input: gameport - rearrange gameport_bus initialization
Initialize gameport_bus structure at compile time instead of at runtime
in gameport_init().

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-11-02 23:27:30 -05:00
Marton Nemeth
1ea2a69d54 Input: serio - rearrange serio_bus initialization
Initialize serio_bus structure at compile time instead of at runtime
in serio_init().

Signed-off-by: Marton Nemeth <nm127@freemail.hu>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-11-02 23:27:21 -05:00
Akinobu Mita
6a89bc0004 Input: lightning - return proper error codes from l4_init()
Signed-off-by: Akinobu Mita <akinobu.mita@gmail.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-11-02 23:27:11 -05:00
Dmitry Torokhov
1447190e39 Input: add comments to input_{allocate|free}_device()
Hopefully this will stop people from using input_free_device()
incorrectly.

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-11-02 23:26:55 -05:00
Paul Mundt
082c44d20e sh: Cleanup board header directories.
Now with the ide.h mess sorted out, most of these boards
don't need their own directory. Move the headers out, and
update the driver paths.

Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2006-10-19 16:30:32 +09:00
Linus Torvalds
22a60f1951 Merge master.kernel.org:/home/rmk/linux-2.6-arm
* master.kernel.org:/home/rmk/linux-2.6-arm:
  [ARM] switch to new pci_get_bus_and_slot API
  [ARM] Update mach-types
  [ARM] Fix Zaurii keyboard/touchscreen drivers
  [ARM] Fix fallout from IRQ regs changes
  [ARM] 3890/1: [Jornada7xx] Addition of MCU commands into jornada720.h
  [ARM] 3889/1: [Jornada7xx] Addition of correct SDRAM params into cpu-sa1110.c
  [ARM] 3888/1: add pxa27x SSP FSRT register bit definition
2006-10-17 14:46:31 -07:00
Linus Torvalds
43f82216f0 Merge git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input
* git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input:
  Input: fm801-gp - handle errors from pci_enable_device()
  Input: gameport core - handle errors returned by device_bind_driver()
  Input: serio core - handle errors returned by device_bind_driver()
  Lockdep: fix compile error in drivers/input/serio/serio.c
  Input: serio - add lockdep annotations
  Lockdep: add lockdep_set_class_and_subclass() and lockdep_set_subclass()
  Input: atkbd - supress "too many keys" error message
  Input: i8042 - supress ACK/NAKs when blinking during panic
  Input: add missing exports to fix modular build
2006-10-17 08:56:43 -07:00
Al Viro
6ce6b3aeea [PATCH] hp drivers/input stuff: C99 initializers, NULL noise removal, __user annotations
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-10-15 11:00:58 -07:00
Russell King
36bd262b3f [ARM] Fix Zaurii keyboard/touchscreen drivers
The Zaurii drivers were partially fixed up for the IRQ register
changes, but unfortunately missed some bits, resulting in build
errors.  Fix these.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-10-15 13:50:02 +01:00
Jeff Garzik
b435fdcda1 Input: fm801-gp - handle errors from pci_enable_device()
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-10-12 01:06:53 -04:00
Dmitry Torokhov
23de1510e2 Input: gameport core - handle errors returned by device_bind_driver()
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-10-12 01:06:34 -04:00
Dmitry Torokhov
0a66045bcf Input: serio core - handle errors returned by device_bind_driver()
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-10-12 01:06:23 -04:00
Matthew Wilcox
53d5ed627d [PATCH] Use linux/io.h instead of asm/io.h
In preparation for moving check_signature, change these users from asm/io.h
to linux/io.h

Signed-off-by: Matthew Wilcox <willy@parisc-linux.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-10-11 11:14:23 -07:00
Jiri Kosina
88aa0103e4 Input: serio - add lockdep annotations
Signed-off-by: Jiri Kosina <jikos@jikos.cz>
Acked-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-10-11 01:45:31 -04:00
Dmitry Torokhov
86255d9d0b Input: atkbd - supress "too many keys" error message
Many users seems to be annoyed by this warning so kill the message
and implement a counter exported as a sysfs attribute so we still
know what is going on. Make atkbd use attribute groups while we are
at it.

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-10-11 01:44:46 -04:00
Dmitry Torokhov
817e6ba362 Input: i8042 - supress ACK/NAKs when blinking during panic
This allows using SysRq and not fill logs with complaints from atkbd.

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-10-11 01:44:28 -04:00
Geert Uytterhoeven
da96d0b58a [PATCH] m68k/HP300: Enable HIL configuration options
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>
2006-10-09 14:54:45 -07:00
Matthew Wilcox
be577a5220 Build fixes for struct pt_regs removal
Signed-off-by: Matthew Wilcox <matthew@wil.cx>
2006-10-06 20:47:23 -06:00
David Howells
7d12e780e0 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)
2006-10-05 15:10:12 +01:00
Matt LaPlante
44c09201a4 more misc typo fixes
Signed-off-by: Adrian Bunk <bunk@stusta.de>
2006-10-03 22:34:14 +02:00
Matt LaPlante
095096038d Fix several typos in drivers/
Signed-off-by: Adrian Bunk <bunk@stusta.de>
2006-10-03 22:31:37 +02:00
Linus Torvalds
a12f66fccf Merge branch 'for-linus' of 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: (35 commits)
  Input: wistron - add support for Acer TravelMate 2424NWXCi
  Input: wistron - fix setting up special buttons
  Input: add KEY_BLUETOOTH and KEY_WLAN definitions
  Input: add new BUS_VIRTUAL bus type
  Input: add driver for stowaway serial keyboards
  Input: make input_register_handler() return error codes
  Input: remove cruft that was needed for transition to sysfs
  Input: fix input module refcounting
  Input: constify input core
  Input: libps2 - rearrange exports
  Input: atkbd - support Microsoft Natural Elite Pro keyboards
  Input: i8042 - disable MUX mode on Toshiba Equium A110
  Input: i8042 - get rid of polling timer
  Input: send key up events at disconnect
  Input: constify psmouse driver
  Input: i8042 - add Amoi to the MUX blacklist
  Input: logips2pp - add sugnature 56 (Cordless MouseMan Wheel), cleanup
  Input: add driver for Touchwin serial touchscreens
  Input: add driver for Touchright serial touchscreens
  Input: add driver for Penmount serial touchscreens
  ...
2006-10-02 08:20:33 -07:00
Ashutosh Naik
bb0885900d Input: wistron - add support for Acer TravelMate 2424NWXCi
The key mappings are the same as the older Acer TravelMate 240.

Signed-off-by: Ashutosh Naik <ashutosh.naik@gmail.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-10-01 22:07:14 -04:00
Reiner Herrmann
cde45f19ca Input: wistron - fix setting up special buttons
If either wifi or bluetooth button has been detected, the code
would break off the loop. But there are laptops that have both
types of buttons, so the loop has to continue checking.

Signed-off-by: Reiner Herrmann <reiner@reiner-h.de>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-10-01 21:58:51 -04:00
Olaf Hering
30cbc22217 [PATCH] update legacy io handling for pmac
ppc can boot one single binary on prep, chrp and pmac boards.  ppc64 can
boot one single binary on pseries and G5 boards.  pmac has no legacy io,
probing for PC style legacy hardware (or accessing the legacy io area
regulary) may lead to a hard crash:

* add check for parport_pc, exit on pmac.  32bit chrp has no
  ->check_legacy_ioport, the probe is always called.  64bit chrp has
  check_legacy_ioport, check for a "parallel" node

* add check for isapnp, only PReP boards may have real ISA slots.  32bit
  PReP will have no ->check_legacy_ioport, the probe is always called.

* update code in i8042_platform_init.  Run ->check_legacy_ioport first,
  always call request_region.  No functional change.  Remove whitespace
  before i8042_reset init.

Signed-off-by: Olaf Hering <olaf@aepfle.de>
Acked-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Adam Belay <ambx1@neo.rr.com>
Cc: Dmitry Torokhov <dtor@mail.ru>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-10-01 00:39:23 -07:00
Komal Shah
ad4e09b16a [PATCH] OMAP: Add keypad driver
This patch adds support for keypad driver running on different TI
OMAP(http://www.ti.com/omap) processor based boards like OSK, H2, H3, H4,
Persuas and Nokia 770.

Signed-off-by: Komal Shah <komal_shah802003@yahoo.com>
Acked-by: Dmitry Torokhov <dtor@mail.ru>
Cc: Russell King <rmk@arm.linux.org.uk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-09-29 09:18:07 -07:00
Andriy Skulysh
3aa770e797 sh: APM/PM support.
This adds some simple PM stubs and the basic APM interfaces,
primarily for use by hp6xx, where the existing userland
expects it.

Signed-off-by: Andriy Skulysh <askulysh@gmail.com>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2006-09-27 16:20:22 +09:00
Marek Vasut
f35d0616bd Input: add driver for stowaway serial keyboards
Add support for stowaway and stowaway compatible (eg. dicota inutPDA)
serial keyboards. Reported to work on palm zire71 and palm tungsten T3.

Signed-off-by: Marek Vasut <marek.vasut@gmail.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-09-19 01:59:32 -04:00
Dmitry Torokhov
0612ec4876 Merge rsync://rsync.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6 2006-09-19 01:56:44 -04:00
Dmitry Torokhov
4263cf0fac Input: make input_register_handler() return error codes
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-09-14 01:32:39 -04:00
Dmitry Torokhov
68c2a1607c Input: remove cruft that was needed for transition to sysfs
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-09-14 01:32:28 -04:00
Dmitry Torokhov
655816e498 Input: fix input module refcounting
Now that input_free_device is basically an alias for input_put_device
we need to acquire a reference to input module right when we allocate
device because input_dev_release releases reference to input module
unconditionally.

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-09-14 01:32:14 -04:00
Dmitry Torokhov
66e6611883 Input: constify input core
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-09-14 01:31:59 -04:00
Dmitry Torokhov
5206c0d5ec Input: libps2 - rearrange exports
The new way is to mark function as exported right after its definition.

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-09-14 01:31:40 -04:00
Dmitry Torokhov
9807879bfd Input: atkbd - support Microsoft Natural Elite Pro keyboards
Microsoft Natural Elite Pro keyboard produces unisual response to
the GET ID command - single byte 0xaa (normally keyboards produce
2-byte response). Fail GET ID command so atkbd gets a change to
do alternate probe.

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-09-14 01:31:27 -04:00
Dmitry Torokhov
a91eaa16df Input: i8042 - disable MUX mode on Toshiba Equium A110
When keyboard controller is in active multiplexing mode ALPS touchpad
may get detected twice. Since the box does not have external PS/2
ports simply disabling MUX mode is safe solution.

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-09-14 01:31:06 -04:00
Dmitry Torokhov
de9ce703c6 Input: i8042 - get rid of polling timer
Remove polling timer that was used to detect keybord/mice hotplug and
register both IRQs right away instead of waiting for a driver to
attach to a port.

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-09-10 21:57:21 -04:00
Dmitry Torokhov
6d2750c167 Input: send key up events at disconnect
Emit key up events for all pressed keys/buttons when disconnecting
an input device. Cures "stuck" enter key effect when unloading
keyboard module.

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-09-10 21:56:06 -04:00
Helge Deller
e38de678f6 Input: constify psmouse driver
Signed-off-by: Helge Deller <deller@gmx.de>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-09-10 21:54:39 -04:00
Pozsar Balazs
90414be952 Input: psmouse - fix Intellimouse 4.0 initialization
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>
2006-08-23 00:48:03 -04:00
Dmitry Torokhov
72a623be00 Input: wistron - fix crash due to referencing __initdata
Remove __initdata markings from keymaps as they are used during
normal driver operations.

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-08-23 00:47:39 -04:00
Florin Malita
8ea371fb6d Input: atkbd - fix overrun in atkbd_set_repeat_rate()
This was introduced in commit 3d0f0fa0cb:
bounds checking is performed against period[32] while indexing delay[4].

Spotted by Coverity, CID 1376.

Signed-off-by: Florin Malita <fmalita@gmail.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-08-23 00:45:33 -04:00
Cjacker Huang
e2df452b8a Input: i8042 - add Amoi to the MUX blacklist
ALPS touchpad on Amoi laptops (Amoi is a vendor in China) is not
detected when keyboard controller is in MUX mode, add to blacklist.

Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-08-08 23:38:22 -04:00
Helge Deller
e3882bb56e Input: logips2pp - add sugnature 56 (Cordless MouseMan Wheel), cleanup
Signed-off-by: Helge Deller <deller@gmx.de>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-08-08 23:37:18 -04:00
Rick Koch
11ea3173d5 Input: add driver for Touchwin serial touchscreens
Signed-off-by: Rick Koch <n1gp@hotmail.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-08-05 00:32:30 -04:00
Rick Koch
4003dff41e Input: add driver for Touchright serial touchscreens
Signed-off-by: Rick Koch <n1gp@hotmail.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-08-05 00:32:24 -04:00
Rick Koch
ee47999979 Input: add driver for Penmount serial touchscreens
Signed-off-by: Rick Koch <n1gp@hotmail.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-08-05 00:32:18 -04:00
Shaun Jackman
fae3006e4b Input: elo - add support for non-pressure-sensitive touchscreens
- Use the touch status bit rather than the pressure bits to
  distinguish a BTN_TOUCH event. Non-pressure-sensitive touchscreens
  always report full pressure
- Report ABS_PRESSURE information only if the touchscreen supports it

Signed-off-by: Shaun Jackman <sjackman@gmail.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-08-05 00:29:49 -04:00
Shaun Jackman
1ce316efb5 Input: elo - fix checksum calculation
Fix 10-byte protocol checksum calculation and do not discard packet early
unless it is missing lead in byte.

Signed-off-by: Shaun Jackman <sjackman@gmail.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-08-05 00:27:59 -04:00
Dmitry Torokhov
6b50d8b862 Input: elo - handle input_register_device() failures
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-08-05 00:27:00 -04:00
Dmitry Torokhov
3d0f0fa0cb Input: atkbd - restore repeat rate when resuming
Make the AT keyboard driver restore previously set repeat rate
when resuming. Noticed by Linus Torvalds.

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-08-04 22:52:46 -04:00
Dmitry Torokhov
184dd2751c Input: trackpoint - activate protocol when resuming
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>
2006-08-04 22:52:26 -04:00
Roberto Castagnola
0c19fcd837 Input: logips2pp - fix button mapping for MX300
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>
2006-08-04 22:52:13 -04:00
Anssi Hannula
ff46255123 Input: uinput - switch to the new FF interface
The userspace interface of the force feedback part is changed and
documentation in uinput.h is updated accordingly. MODULE_VERSION
is also incremented to reflect the revision.

Signed-off-by: Anssi Hannula <anssi.hannula@gmail.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-07-19 01:41:09 -04:00
Anssi Hannula
f6a01c8596 Input: iforce - switch to the new FF interface
Signed-off-by: Anssi Hannula <anssi.hannula@gmail.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-07-19 01:40:39 -04:00
Anssi Hannula
7d928a2b14 Input: unified force feedback support for memoryless devices
Consolidate core implementing memoryless devices in one module; added
support for gain and envelopes and periodic => rumble conversion.

Signed-off-by: Anssi Hannula <anssi.hannula@gmail.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-07-19 01:40:30 -04:00
Anssi Hannula
509ca1a938 Input: implement new force feedback interface
Implement a new force feedback interface, in which all non-driver-specific
operations are separated to a common module. This includes handling effect
type validations, locking, etc.

The effects are now file descriptor specific instead of the previous strange
half-process half-fd specific behaviour. The effect memory of devices is not
emptied if the root user opens and closes the device while another user is
using effects. This is a minor change and most likely no force feedback
aware programs are affected by this negatively.

Otherwise the userspace interface is left unaltered.

Signed-off-by: Anssi Hannula <anssi.hannula@gmail.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-07-19 01:40:22 -04:00
Anssi Hannula
806d41b756 Input: move fixp-arith.h to drivers/input
Move fixp-arith.h from drivers/usb/input to drivers/input, as the part of
force feedback support that requires trigonometric functions is being moved
there.

Signed-off-by: Anssi Hannula <anssi.hannula@gmail.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-07-19 01:40:14 -04:00
Dmitry Torokhov
57e6b724c0 Input: rename input.ko into input-core.ko
This will allow building input core module from several files
which is needed for the reworked force feedback support.

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-07-19 01:39:56 -04:00
Randy Dunlap
73b59a3b1c Input: serio/gameport - check whether driver core calls succeeded
Signed-off-by: Randy Dunlap <rdunlap@xenotime.net>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-07-19 01:14:55 -04:00
Nick Martin
2c1dd69d28 Input: spaceball - make 4000FLX Lefty work
Although the Spaceball 4000FLX Lefty is already supported by the
spaceball driver, it does not register properly due to SPACEBALL_MAX_ID
being set too low. Increment SPACEBALL_MAX_ID such that the 4000FLX Lefty
is properly recognized.

Signed-off-by: Nick Martin <nim+linux@nimlabs.org>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-07-19 01:14:44 -04:00
Dmitry Torokhov
b6d786dbe6 Input: add missing handler->start() call
The start() method need to be called every time we create
a new handle. This includes not only registering new devices
but also when registering new handlers.

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-07-19 01:08:51 -04:00
Andrew Morton
a2b2ed2ce2 Input: fix list iteration in input_release_device()
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-07-15 01:17:38 -04:00
Przemek Iskra
b53174fb5a Input: iforce - add Trust Force Feedback Race Master support
Signed-off-by: Vojtech Pavlik <vojtech@suse.cz>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-07-15 01:16:21 -04:00
Dmitry Torokhov
8d64d3722c Input: iforce - check array bounds before accessing elements
Fixes Coverity #id 864

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-07-06 23:55:00 -04:00
Dmitry Torokhov
95349fe814 Input: libps2 - warn instead of oopsing when passed bad arguments
This is more user-friendly and also fixes Coverity #id 249

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-07-06 23:54:48 -04:00
Dmitry Torokhov
699756199d Input: fm801-gp - fix use after free
Fixes Coverity #id 916

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-07-06 23:54:30 -04:00
Andrew Morton
c7948989f8 Input: wistron - fix section reference mismatches
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-07-06 00:23:38 -04:00
Dmitry Torokhov
0e739d2876 Input: introduce input_inject_event() function
Create input_inject_event() function which is to be used by input
handlers as opposed to input_event() which is reserved for drivers
implementing input devices. The difference is that if device is
"grabbed" by some process input_inject_event() will ignore events
unless sent from the handle that is currently owns the device.

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-07-06 00:22:43 -04:00
Dmitry Torokhov
c7e8dc6ee6 Input: add start() method to input handlers
The new start() method is called immediately after connect() and also
when "grabbed" device is released by its owner. This will allow input
handlers to re-synchronize state of once-grabbed device with the rest
of devices.

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-07-06 00:21:03 -04:00
Dmitry Torokhov
e9c8862f19 Input: remove accept method from input_dev
This method used to enforce exclusive access to iforce devices,
but presenlty there are no known users of this method.

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-07-06 00:20:47 -04:00
Arjan van de Ven
3aceafc1e2 [PATCH] lockdep: annotate serio
The PS/2 code has a natural device order and there is a one level recursion in
this device order in terms of the cmd_mutex; annotate this explicit recursion
as ok.

Has no effect on non-lockdep kernels.

Signed-off-by: Arjan van de Ven <arjan@linux.intel.com>
Cc: Dmitry Torokhov <dtor_core@ameritech.net>
Cc: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-07-03 15:27:07 -07:00
Andrew Morton
6b8f3ef454 [PATCH] sparc i8042 build fix
drivers/input/serio/i8042-sparcio.h:91: error: '__mod_of_device_table' aliased to undefined symbol 'i8042_match'

Cc: Dmitry Torokhov <dtor_core@ameritech.net>
DESC
sparc: resource warning fix
EDESC
From: Andrew Morton <akpm@osdl.org>

sound/sparc/amd7930.c: In function 'amd7930_attach_common':
sound/sparc/amd7930.c:1040: warning: format '%08lx' expects type 'long unsigned int', but argument 5 has type 'resource_size_t'

Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-07-03 15:27:00 -07:00
Linus Torvalds
b4b9034132 Merge branch 'genirq' of master.kernel.org:/home/rmk/linux-2.6-arm
* 'genirq' of master.kernel.org:/home/rmk/linux-2.6-arm: (24 commits)
  [ARM] 3683/2:  ARM: Convert at91rm9200 to generic irq handling
  [ARM] 3682/2:  ARM: Convert ixp4xx to generic irq handling
  [ARM] 3702/1: ARM: Convert ixp23xx to generic irq handling
  [ARM] 3701/1: ARM: Convert plat-omap to generic irq handling
  [ARM] 3700/1: ARM: Convert lh7a40x to generic irq handling
  [ARM] 3699/1: ARM: Convert s3c2410 to generic irq handling
  [ARM] 3698/1: ARM: Convert sa1100 to generic irq handling
  [ARM] 3697/1: ARM: Convert shark to generic irq handling
  [ARM] 3696/1: ARM: Convert clps711x to generic irq handling
  [ARM] 3694/1: ARM: Convert ecard driver to generic irq handling
  [ARM] 3693/1: ARM: Convert omap1 to generic irq handling
  [ARM] 3691/1: ARM: Convert imx to generic irq handling
  [ARM] 3688/1: ARM: Convert clps7500 to generic irq handling
  [ARM] 3687/1: ARM: Convert integrator to generic irq handling
  [ARM] 3685/1: ARM: Convert pxa to generic irq handling
  [ARM] 3684/1: ARM: Convert l7200 to generic irq handling
  [ARM] 3681/1: ARM: Convert ixp2000 to generic irq handling
  [ARM] 3680/1: ARM: Convert footbridge to generic irq handling
  [ARM] 3695/1: ARM drivers/pcmcia: Fixup includes
  [ARM] 3689/1: ARM drivers/input/touchscreen: Fixup includes
  ...

Manual conflict resolved in kernel/irq/handle.c (butt-ugly ARM tickless
code).
2006-07-02 15:07:45 -07:00
Thomas Gleixner
dace145374 [PATCH] irq-flags: misc drivers: Use the new IRQF_ constants
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Cc: Ingo Molnar <mingo@elte.hu>
Cc: "David S. Miller" <davem@davemloft.net>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-07-02 13:58:50 -07:00
Thomas Gleixner
e6e3c3be8a [ARM] 3689/1: ARM drivers/input/touchscreen: Fixup includes
Patch from Thomas Gleixner

From: Thomas Gleixner <tglx@linutronix.de>

Include the generic header file instead of the ARM specific one.

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-07-01 22:32:15 +01:00
Jörn Engel
6ab3d5624e Remove obsolete #include <linux/config.h>
Signed-off-by: Jörn Engel <joern@wohnheim.fh-wedel.de>
Signed-off-by: Adrian Bunk <bunk@stusta.de>
2006-06-30 19:25:36 +02:00
David S. Miller
f57caaefac [SERIO] i8042-sparcio.h: Convert to of_driver framework.
Signed-off-by: David S. Miller <davem@davemloft.net>
2006-06-29 16:38:01 -07:00
Linus Torvalds
602cada851 Merge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/devfs-2.6
* git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/devfs-2.6: (22 commits)
  [PATCH] devfs: Remove it from the feature_removal.txt file
  [PATCH] devfs: Last little devfs cleanups throughout the kernel tree.
  [PATCH] devfs: Rename TTY_DRIVER_NO_DEVFS to TTY_DRIVER_DYNAMIC_DEV
  [PATCH] devfs: Remove the tty_driver devfs_name field as it's no longer needed
  [PATCH] devfs: Remove the line_driver devfs_name field as it's no longer needed
  [PATCH] devfs: Remove the videodevice devfs_name field as it's no longer needed
  [PATCH] devfs: Remove the gendisk devfs_name field as it's no longer needed
  [PATCH] devfs: Remove the miscdevice devfs_name field as it's no longer needed
  [PATCH] devfs: Remove the devfs_fs_kernel.h file from the tree
  [PATCH] devfs: Remove devfs_remove() function from the kernel tree
  [PATCH] devfs: Remove devfs_mk_cdev() function from the kernel tree
  [PATCH] devfs: Remove devfs_mk_bdev() function from the kernel tree
  [PATCH] devfs: Remove devfs_mk_symlink() function from the kernel tree
  [PATCH] devfs: Remove devfs_mk_dir() function from the kernel tree
  [PATCH] devfs: Remove devfs_*_tape() functions from the kernel tree
  [PATCH] devfs: Remove devfs support from the sound subsystem
  [PATCH] devfs: Remove devfs support from the ide subsystem.
  [PATCH] devfs: Remove devfs support from the serial subsystem
  [PATCH] devfs: Remove devfs from the init code
  [PATCH] devfs: Remove devfs from the partition code
  ...
2006-06-29 14:19:21 -07:00
Linus Torvalds
1903ac54f8 Merge master.kernel.org:/pub/scm/linux/kernel/git/gregkh/pci-2.6
* master.kernel.org:/pub/scm/linux/kernel/git/gregkh/pci-2.6:
  [PATCH] i386: export memory more than 4G through /proc/iomem
  [PATCH] 64bit Resource: finally enable 64bit resource sizes
  [PATCH] 64bit Resource: convert a few remaining drivers to use resource_size_t where needed
  [PATCH] 64bit resource: change pnp core to use resource_size_t
  [PATCH] 64bit resource: change pci core and arch code to use resource_size_t
  [PATCH] 64bit resource: change resource core to use resource_size_t
  [PATCH] 64bit resource: introduce resource_size_t for the start and end of struct resource
  [PATCH] 64bit resource: fix up printks for resources in misc drivers
  [PATCH] 64bit resource: fix up printks for resources in arch and core code
  [PATCH] 64bit resource: fix up printks for resources in pcmcia drivers
  [PATCH] 64bit resource: fix up printks for resources in video drivers
  [PATCH] 64bit resource: fix up printks for resources in ide drivers
  [PATCH] 64bit resource: fix up printks for resources in mtd drivers
  [PATCH] 64bit resource: fix up printks for resources in pci core and hotplug drivers
  [PATCH] 64bit resource: fix up printks for resources in networks drivers
  [PATCH] 64bit resource: fix up printks for resources in sound drivers
  [PATCH] 64bit resource: C99 changes for struct resource declarations

Fixed up trivial conflict in drivers/ide/pci/cmd64x.c (the printk that
was changed by the 64-bit resources had been deleted in the meantime ;)
2006-06-29 10:49:17 -07:00
Linus Torvalds
8f7c58814e Merge master.kernel.org:/pub/scm/linux/kernel/git/dtor/input
* master.kernel.org:/pub/scm/linux/kernel/git/dtor/input:
  Input: db9 - fix potential buffer overrun
  Input: atkbd - fix hardware autorepeat
  Input: wistron - add mapping for Wistron MS 2111
2006-06-28 15:12:25 -07:00
Eric Sesterhenn
0a3a6d69b7 Input: db9 - fix potential buffer overrun
Fixes Coverity #id 483

Signed-off-by: Eric Sesterhenn <snakebyte@gmx.de>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-06-27 23:42:33 -04:00
Dmitry Torokhov
f8b4c46c0c Input: atkbd - fix hardware autorepeat
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-06-27 23:42:17 -04:00
Dmitry Torokhov
e7374e4800 Input: fix resetting name, phys and uniq when unregistering device
It should be done before calling class_device_unregister() because
it will destroy the device and free memory if there are no other
references to the device.

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-06-27 14:05:06 -07:00
Greg Kroah-Hartman
e29419fffc [PATCH] 64bit resource: fix up printks for resources in misc drivers
This is needed if we wish to change the size of the resource structures.

Based on an original patch from Vivek Goyal <vgoyal@in.ibm.com>

Cc: Vivek Goyal <vgoyal@in.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2006-06-27 09:23:59 -07:00
Frank de Lange
9000195bb7 Input: wistron - add mapping for Wistron MS 2111
Wistron MS 2111 (aka Medion 'Titanium' MD 9783, aka ALDI PC,
aka Fujitsu-Siemens AMILO D7800, aka ...) has 5 extra buttons,
map them. Unfortunately we only have DMI data for the Medion
box.

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-06-27 01:48:24 -04:00
Greg Kroah-Hartman
ff23eca3e8 [PATCH] devfs: Remove the devfs_fs_kernel.h file from the tree
Also fixes up all files that #include it.

Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2006-06-26 12:25:08 -07:00
Jesper Juhl
e2e8115b54 Input: iforce - remove some pointless casts
The 'private' member of struct input_dev is a void*, so no need to
cast it when assigning it to a struct iforce* variable.

Signed-off-by: Jesper Juhl <jesper.juhl@gmail.com>
Signed-off-by: Vojtech Pavlik <vojtech@suse.cz>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-06-26 01:59:52 -04:00
Pozsar Balazs
b0c9ad8e0f Input: psmouse - add support for Intellimouse 4.0
Add support for the H-Wheel present on Microsoft Intellimouse 4.0
(AKA "tilt mouse")

Signed-off-by: Pozsar Balazs <pozsy@uhulinux.hu>
Signed-off-by: Vojtech Pavlik <vojtech@suse.cz>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-06-26 01:56:08 -04:00
Dmitry Torokhov
0ae051a190 Input: atkbd - fix HANGEUL/HANJA keys
Make atkbd report HANGEUL/HANJA keys by default and use correct scan
codes for these keys (they were swapped). Also make sure their scancodes
reported as EV_MSC/MSC_SCAN events.

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-06-26 01:52:34 -04:00
Jerome Pinot
b9ab58dd8e Input: fix misspelling of Hangeul key
Fix a mispelling of the korean alphabet name in the input subsystem.
See http://en.wikipedia.org/wiki/Hangeul#Names for more details.

KEY_HANGUEL left to not break people

Signed-off-by: Jerome Pinot <ngc891@gmail.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-06-26 01:51:23 -04:00
Dmitry Torokhov
ca56fe07f4 Input: rearrange exports
New style is to mark symbol as exported right after its definition.

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-06-26 01:49:21 -04:00
Dmitry Torokhov
1e0afb288e Input: fix formatting to better follow CodingStyle
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-06-26 01:48:47 -04:00
Dmitry Torokhov
f60d2b111c Input: reset name, phys and uniq when unregistering
Name, phys and uniq are quite often constant strings in moules implementing
particular input device. If a module unregisters input device and then gets
unloaded, the device could still be present in memory (pinned via sysfs),
but aforementioned members would point to some random memory. Set them all
to NULL when unregistering so sysfs handlers won't try dereferencing them.

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-06-26 01:48:36 -04:00
Richard Purdie
8a3cf456ad Input: return correct size when reading modalias attribute
Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-06-26 01:48:21 -04:00
Dmitry Torokhov
ea08c6faa0 Input: fix potential overflows in driver/input/keyboard
Change all sprintfs into snprintfs to make sure we won't stomp on
data adjacent to our buffers.

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-06-26 01:46:17 -04:00
Dmitry Torokhov
a21466cc77 Input: fix potential overflows in driver/input/touchscreen
Change all sprintfs into snprintfs to make sure we won't stomp on
data adjacent to our buffers.

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-06-26 01:46:04 -04:00
Dmitry Torokhov
10ca4c0a62 Input: fix potential overflows in driver/input/joystick
Change all sprintfs into snprintfs to make sure we won't stomp on
data adjacent to our buffers.

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-06-26 01:45:48 -04:00
Dmitry Torokhov
08ffce4560 Input: fix potential overflows in driver/input/mouse
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-06-26 01:45:10 -04:00
Dmitry Torokhov
4854c7b27f Merge rsync://rsync.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6 2006-06-26 01:31:38 -04:00
Matt Mackall
6ceab8a936 [PATCH] random: remove redundant SA_SAMPLE_RANDOM from touchscreen drivers
The core input layer is already calling add_input_randomness.

Signed-off-by: Matt Mackall <mpm@selenic.com>
Cc: Dmitry Torokhov <dtor_core@ameritech.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-06-25 10:01:00 -07:00
David S. Miller
a2bd4fd179 [SPARC64]: Add of_device layer and make ebus/isa use it.
Sparcspkr and power drivers are converted, to make sure it works.
Eventually the SBUS device layer will use this as a sub-class.

I really cannot cut loose on that bit until sparc32 is given the
same infrastructure.

Signed-off-by: David S. Miller <davem@davemloft.net>
2006-06-23 23:15:43 -07:00
David S. Miller
690c8fd31f [SPARC64]: Use in-kernel PROM tree for EBUS and ISA.
Signed-off-by: David S. Miller <davem@davemloft.net>
2006-06-23 23:15:28 -07:00
Miklos Szeredi
75e1fcc0b1 [PATCH] vfs: add lock owner argument to flush operation
Pass the POSIX lock owner ID to the flush operation.

This is useful for filesystems which don't want to store any locking state
in inode->i_flock but want to handle locking/unlocking POSIX locks
internally.  FUSE is one such filesystem but I think it possible that some
network filesystems would need this also.

Also add a flag to indicate that a POSIX locking request was generated by
close(), so filesystems using the above feature won't send an extra locking
request in this case.

Signed-off-by: Miklos Szeredi <miklos@szeredi.hu>
Cc: Trond Myklebust <trond.myklebust@fys.uio.no>
Cc: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-06-23 07:43:02 -07:00
Roman Zippel
5fa28ea42f [PATCH] m68k: restore amikbd compatibility with 2.4
Dump the extra mapping in the amikbd interrupt handler, so old Amiga keymaps
work again.  Amigas need a special keymap anyway, standard keymaps are not
usable and recreating all keymaps is simply not worth the trouble.

Signed-off-by: Roman Zippel <zippel@linux-m68k.org>
Cc: Dmitry Torokhov <dtor_core@ameritech.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-06-23 07:43:01 -07:00
Anssi Hannula
fe65b97a58 Input: iforce - use ENOSPC instead of ENOMEM
Use -ENOSPC instead of -ENOMEM when the iforce device doesn't have
enough free memory for the new effect.  All other drivers are using
-ENOSPC, so this makes the behaviour coherent.

Signed-off-by: Anssi Hannula <anssi.hannula@gmail.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-06-05 00:18:21 -04:00
Kenan Esau
47ce56edb8 Input: psmouse - DMI updates for lifebook protocol
Added different lifebook-versions and the CF-18 to the corresponding
dmi-table.

Signed-off-by: Kenan Esau <kenan.esau@conan.de>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-05-29 23:31:12 -04:00
Richard Purdie
ed8f9e2f04 Input: change from numbered to named switches
Remove the numbered SW_* entries from the input system and assign names
to the existing users.

Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-05-29 23:31:03 -04:00
Yotam Medini
d2f4012f15 Input: alps - fix old protocol decoding
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-05-29 23:30:36 -04:00
masc@theaterzentrum.at
e107b8ee7e Input: wistron - add support for AOpen Barebook 1559as
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-05-29 23:29:36 -04:00
Zbigniew Luszpinski
4f8b05efec Input: psmouse - add detection of Logitech TrackMan Wheel trackball
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-05-29 23:29:19 -04:00
Jesper Juhl
7363cfc866 Input: sidewinder - fix memory leak
In sw_connect we leak 'buf' and 'idbuf' when we do not leave via one of
the fail* labels. This was spotted by the coverity checker.

Patch is compile tested only due to lack of hardware.

Signed-off-by: Jesper Juhl <jesper.juhl@gmail.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-05-29 23:28:05 -04:00
David Brownell
9084533e79 [PATCH] ads7846 conversion accuracy
This improves accuracy of the touchscreen and hwmon sensor readings,
addressing an issue noted by Imre Deak: there's an extra bit written before
the sample (12 bits) gets written out.

It also catches up to various comments, and makes the /proc/interrupts
entry sensible again.

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Cc: Imre Deak <imre.deak@nokia.com>
Cc: Jean Delvare <khali@linux-fr.org>
Cc: Dmitry Torokhov <dtor_core@ameritech.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-05-26 11:55:46 -07:00
Linus Torvalds
f9cc8475e7 Merge master.kernel.org:/home/rmk/linux-2.6-arm
* master.kernel.org:/home/rmk/linux-2.6-arm:
  [ARM] 3490/1: i.MX: move uart resources to board files
  [ARM] 3488/1: make icedcc_putc do the right thing
  [ARM] 3487/1: IXP4xx: Support non-PCI systems
  [ARM] 3486/1: Mark memory as clobbered by the ARM _syscallX() macros
2006-05-04 14:52:43 -07:00
Linus Torvalds
9f29333dae Merge git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input
* git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input:
  Input: make EVIOCGSND return meaningful data
  Input: ressurect EVIOCGREP and EVIOCSREP
  Input: psmouse - fix new device detection logic
  Input: move input_device_id to mod_devicetable.h
  Input: allow using several chords for braille
  Input: allow passing NULL to input_free_device()
  Input: spitzkbd - fix the reversed Address and Calender keys
  Input: ads7846 - improve filtering for thumb press accuracy
  Input: ads7846 - report 0 pressure value along with pen up event
  Input: ads7846 - handle IRQs that were latched during disabled IRQs
  Input: ads7846 - miscellaneous fixes
  Input: ads7846 - use msleep() instead of udelay() in suspend
  Input: ads7846 - debouncing and rudimentary sample filtering
  Input: ads7846 - power down ADC a bit later
  Input: ads7846 - add pen_down sysfs attribute
  Input: wistron - add support for Fujitsu N3510
  Input: wistron - add signature for Amilo M7400
2006-05-01 07:48:38 -07:00
Markus Gutschke
cd95842ca0 [ARM] 3486/1: Mark memory as clobbered by the ARM _syscallX() macros
Patch from Markus Gutschke

In order to prevent gcc from making incorrect optimizations, all asm()
statements that define system calls should report memory as
clobbered. Recent versions of the headers for i386 have been changed
accordingly, but the ARM headers are still defective.

This patch fixes the bug tracked at
http://bugzilla.kernel.org/show_bug.cgi?id=6205

Signed-off-by: Markus Gutschke <markus@google.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-04-30 15:34:29 +01:00
Dmitry Torokhov
8fdc19486f Input: make EVIOCGSND return meaningful data
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-04-29 01:13:48 -04:00
Dmitry Torokhov
08791e5cf6 Input: ressurect EVIOCGREP and EVIOCSREP
While writing to an event device allows to set repeat rate for an
individual input device there is no way to retrieve current settings
so we need to ressurect EVIOCGREP. Also ressurect EVIOCSREP so we
have a symmetrical interface.

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-04-29 01:13:21 -04:00
Dmitry Torokhov
89c9b4805a Input: psmouse - fix new device detection logic
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-04-29 01:12:44 -04:00
Dmitry Torokhov
7b7e394185 Merge rsync://rsync.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6 2006-04-29 01:11:23 -04:00
David Woodhouse
1269277a5e [PATCH] powerpc: Use check_legacy_ioport() on ppc32 too.
Some people report that we die on some Macs when we are expecting to
catch machine checks after poking at some random I/O address. I'd seen
it happen on my dual G4 with serial ports until we fixed those to use
OF, but now other users are reporting it with i8042.

This expands the use of check_legacy_ioport() to avoid that situation
even on 32-bit kernels.

Signed-off-by: David Woodhouse <dwmw2@infradead.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
2006-04-28 21:04:55 +10:00
Dmitry Torokhov
ddc5d34145 Input: move input_device_id to mod_devicetable.h
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-04-26 00:14:19 -04:00
Richard Purdie
f11a7c0935 Input: spitzkbd - fix the reversed Address and Calender keys
Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-04-26 00:13:42 -04:00
Imre Deak
d5b415c95f Input: ads7846 - improve filtering for thumb press accuracy
Providing more accurate coordinates for thumb press requires additional
steps in the filtering logic:

- Ignore samples found invalid by the debouncing logic, or the ones that
  have out of bound pressure value.
- Add a parameter to repeat debouncing, so that more then two consecutive
  good readings are required for a valid sample.

Signed-off-by: Imre Deak <imre.deak@nokia.com>
Acked-by: Juha Yrjola <juha.yrjola@nokia.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-04-26 00:13:18 -04:00
Imre Deak
ae82d5ab05 Input: ads7846 - report 0 pressure value along with pen up event
X touchscreen drivers that don't interpret the designated pen up message
assume a pen up event from a pressure value 0. For these we generate a
pressure 0 message along with the pen up message.

Signed-off-by: Imre Deak <imre.deak@nokia.com>
Acked-by: Juha Yrjola <juha.yrjola@nokia.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-04-26 00:12:14 -04:00
Matthew Wilcox
d668da80d6 [PARISC] Fix up hil_kbd.c mismerge
Signed-off-by: Matthew Wilcox <willy@parisc-linux.org>
Signed-off-by: Kyle McMartin <kyle@parisc-linux.org>
2006-04-21 22:20:34 +00:00
Imre Deak
c9e617a563 Input: ads7846 - handle IRQs that were latched during disabled IRQs
The pen down IRQ will toggle during each X,Y,Z measurement cycle.
Even though the IRQ is disabled it will be latched and delivered
when after enable_irq. Thus in the IRQ handler we must avoid
starting a new measurement cycle when such an "unwanted" IRQ happens.
Add a get_pendown_state platform function, which will probably
determine this by reading the current GPIO level of the pen IRQ pin.

Move the IRQ reenabling from the SPI RX function to the timer. After
the last power down message the pen IRQ pin is still active for a
while and get_pendown_state would report incorrectly a pen down state.

When suspending we should check the ts->pending flag instead of
ts->pendown, since the timer can be pending regardless of ts->pendown.
Also if ts->pending is set we can be sure that the timer is running,
so no need to rearm it. Similarly if ts->pending is not set we can
be sure that the IRQ is enabled (and the timer is not).

Signed-off-by: Imre Deak <imre.deak@nokia.com>
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-04-11 23:44:05 -04:00
Imre Deak
7de90a8cb9 Input: ads7846 - miscellaneous fixes
- Add disable attribute to support device locking mode where
  unintentional touch event shouldn't wake up the system;
- Update comments;
- Add missing spin_lock_init;
- Do device resume with the lock held;
- Do cleanup calls / free memory in the reverse order of initialization.

Signed-off-by: Imre Deak <imre.deak@nokia.com>
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-04-11 23:43:55 -04:00
Juha Yrjola
c4febb94da Input: ads7846 - use msleep() instead of udelay() in suspend
Sometimes a polling loop had a hard time changing state without
pre-emption enabled.  Use msleep instead, it's better anyway.

Signed-off-by: Juha Yrjola <juha.yrjola@nokia.com>
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-04-11 23:42:25 -04:00
Imre Deak
0b7018aae7 Input: ads7846 - debouncing and rudimentary sample filtering
Some touchscreens seem to oscillate heavily for a while after touching
the screen.  Implement support for sampling the screen until we get two
consecutive values that are close enough.

Signed-off-by: Imre Deak <imre.deak@nokia.com>
Signed-off-by: Juha Yrjola <juha.yrjola@nokia.com>
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-04-11 23:42:03 -04:00
Imre Deak
53a0ef89e9 Input: ads7846 - power down ADC a bit later
Submit a seperate request for powering down the ADC in ads7846,
doing it after the last read request.  Otherwise some of the read
values are incorrect.

Signed-off-by: Imre Deak <imre.deak@nokia.com>
Signed-off-by: Juha Yrjola <juha.yrjola@nokia.com>
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-04-11 23:41:49 -04:00
Imre Deak
438f2a7401 Input: ads7846 - add pen_down sysfs attribute
It's handy for userspace diagnostics to see the pen down status, to
see whether the touchscreen is "stuck" (shortcircuited).

Signed-off-by: Imre Deak <imre.deak@nokia.com>
Signed-off-by: Juha Yrjola <juha.yrjola@nokia.com>
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-04-11 23:41:32 -04:00
John Reed Riley
e2aa507a83 Input: wistron - add support for Fujitsu N3510
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-04-05 00:40:01 -04:00
Stefan Rompf
8a1b170898 Input: wistron - add signature for Amilo M7400
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-04-05 00:39:20 -04:00
Richard Thrippleton
53a2670cd9 Input: synaptics - limit rate to 40pps on Toshiba Protege M300
Toshiba Protege M300 also requires the same workaround as Satellites
and Dynabooks - Synaptics report rate should be lowered to 40pps
(from 80), otherwise KBC starts losing keypresses.

Signed-off-by: Richard Thrippleton <ret28@cam.ac.uk>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-04-02 00:10:18 -05:00
Raphael Assenat
b157d55eef Input: gamecon - add SNES mouse support
SNES gamepads and mice share the same type of interface so they both can be
connected to the parallel port using a simple interface.  Adding mouse
support to a gamepad driver may sound funny at first, but doing so in this
case makes it possible to connect and SNES gamepads and mice at the same
time, on the same port.

Signed-off-by: Raphael Assenat <raph@raphnet.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-04-02 00:10:05 -05:00
Dmitry Torokhov
ac648a6a70 Input: make modalias code respect allowed buffer size
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-04-02 00:09:51 -05:00
Dmitry Torokhov
969b21cdee Input: convert /proc handling to seq_file
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-04-02 00:09:34 -05:00
Dmitry Torokhov
2db6687633 Input: limit attributes' output to PAGE_SIZE
sysfs can't handle more than PAGE_SIZE data coming from attributes'
show() methods; make sure we respect this limit.

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-04-02 00:09:26 -05:00
Dmitry Torokhov
95d465fd75 Manual merge with Linus.
Conflicts:
	arch/powerpc/kernel/setup-common.c
	drivers/input/keyboard/hil_kbd.c
	drivers/input/mouse/hil_ptr.c
2006-04-02 00:08:05 -05:00
Kyle McMartin
cd7a9202a5 [PARISC] Fix double free when removing HIL drivers
On Thu, Mar 30, 2006 at 08:31:02AM -0500, Dmitry Torokhov wrote:
> Don't do that, its double free. input_unregister_device() normally
> causes release() to be called and free the device. input_free_device
> is only to be called when input_register_device has not been called or
> failed.
>
> Plus you might want to unregister device after closing serio port,
> otherwise your interrupt routine might be referencing already freed
> memory.

Signed-off-by: Kyle McMartin <kyle@parisc-linux.org>
2006-03-30 17:48:59 +00:00
Helge Deller
102c8c76f7 [PARISC] Convert HIL drivers to use input_allocate_device
Convert HIL drivers to use input_allocate_device() - avoids crashes.

Signed-off-by: Helge Deller <deller@parisc-linux.org>
Signed-off-by: Kyle McMartin <kyle@parisc-linux.org>
2006-03-30 17:48:53 +00:00
Helge Deller
5076c15862 [PARISC] I/O-Space must be ioremap_nocache()'d
Addresses in F-space must be accessed uncached on most parisc machines.

Signed-off-by: Helge Deller <deller@parisc-linux.org>
Signed-off-by: Kyle McMartin <kyle@parisc-linux.org>
2006-03-30 17:48:42 +00:00
Arjan van de Ven
99ac48f54a [PATCH] mark f_ops const in the inode
Mark the f_ops members of inodes as const, as well as fix the
ripple-through this causes by places that copy this f_ops and then "do
stuff" with it.

Signed-off-by: Arjan van de Ven <arjan@infradead.org>
Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-03-28 09:16:05 -08:00
Linus Torvalds
9ae21d1bb3 Merge git://git.kernel.org/pub/scm/linux/kernel/git/bunk/trivial
* git://git.kernel.org/pub/scm/linux/kernel/git/bunk/trivial:
  drivers/char/ftape/lowlevel/fdc-io.c: Correct a comment
  Kconfig help: MTD_JEDECPROBE already supports Intel
  Remove ugly debugging stuff
  do_mounts.c: Minor ROOT_DEV comment cleanup
  BUG_ON() Conversion in drivers/s390/block/dasd_devmap.c
  BUG_ON() Conversion in mm/mempool.c
  BUG_ON() Conversion in mm/memory.c
  BUG_ON() Conversion in kernel/fork.c
  BUG_ON() Conversion in ipc/sem.c
  BUG_ON() Conversion in fs/ext2/
  BUG_ON() Conversion in fs/hfs/
  BUG_ON() Conversion in fs/dcache.c
  BUG_ON() Conversion in fs/buffer.c
  BUG_ON() Conversion in input/serio/hp_sdc_mlc.c
  BUG_ON() Conversion in md/dm-table.c
  BUG_ON() Conversion in md/dm-path-selector.c
  BUG_ON() Conversion in drivers/isdn
  BUG_ON() Conversion in drivers/char
  BUG_ON() Conversion in drivers/mtd/
2006-03-26 09:41:18 -08:00
Andrew Morton
3ac8bf077d [PATCH] ads7846: sparc32 warning fix
drivers/input/touchscreen/ads7846.c: In function `ads7846_read12_ser':
drivers/input/touchscreen/ads7846.c:207: warning: implicit declaration of function `disable_irq'
drivers/input/touchscreen/ads7846.c:209: warning: implicit declaration of function `enable_irq'

Cc: Dmitry Torokhov <dtor_core@ameritech.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-03-26 08:56:57 -08:00
Eric Sesterhenn
fddaaae16b BUG_ON() Conversion in input/serio/hp_sdc_mlc.c
this changes if() BUG(); constructs to BUG_ON() which is
cleaner and can better optimized away

Signed-off-by: Eric Sesterhenn <snakebyte@gmx.de>
Signed-off-by: Adrian Bunk <bunk@stusta.de>
2006-03-26 18:23:47 +02:00
Linus Torvalds
1e8c573933 Merge git://git.kernel.org/pub/scm/linux/kernel/git/bunk/trivial
* git://git.kernel.org/pub/scm/linux/kernel/git/bunk/trivial: (21 commits)
  BUG_ON() Conversion in drivers/video/
  BUG_ON() Conversion in drivers/parisc/
  BUG_ON() Conversion in drivers/block/
  BUG_ON() Conversion in sound/sparc/cs4231.c
  BUG_ON() Conversion in drivers/s390/block/dasd.c
  BUG_ON() Conversion in lib/swiotlb.c
  BUG_ON() Conversion in kernel/cpu.c
  BUG_ON() Conversion in ipc/msg.c
  BUG_ON() Conversion in block/elevator.c
  BUG_ON() Conversion in fs/coda/
  BUG_ON() Conversion in fs/binfmt_elf_fdpic.c
  BUG_ON() Conversion in input/serio/hil_mlc.c
  BUG_ON() Conversion in md/dm-hw-handler.c
  BUG_ON() Conversion in md/bitmap.c
  The comment describing how MS_ASYNC works in msync.c is confusing
  rcu: undeclared variable used in documentation
  fix typos "wich" -> "which"
  typo patch for fs/ufs/super.c
  Fix simple typos
  tabify drivers/char/Makefile
  ...
2006-03-25 08:41:09 -08:00
Andrew Morton
4cae59d2e8 [PATCH] ads7846 build fix
sparc32:

drivers/input/touchscreen/ads7846.c: In function `ads7846_read12_ser':
drivers/input/touchscreen/ads7846.c:206: warning: implicit declaration of function `disable_irq'
drivers/input/touchscreen/ads7846.c:208: warning: implicit declaration of function `enable_irq'

Cc: Dmitry Torokhov <dtor_core@ameritech.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-03-25 08:22:55 -08:00
Eric Sesterhenn
b1eecf7e04 BUG_ON() Conversion in input/serio/hil_mlc.c
this changes if() BUG(); constructs to BUG_ON() which is
cleaner and can better optimized away

Signed-off-by: Eric Sesterhenn <snakebyte@gmx.de>
Signed-off-by: Adrian Bunk <bunk@stusta.de>
2006-03-24 18:37:43 +01:00
Adrian Bunk
642fde17dc Input: gameport - fix memory leak
Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-03-14 00:13:34 -05:00
Adrian Bunk
9d921116cc Input: serio - fix memory leak
Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-03-14 00:13:29 -05:00
Richard Purdie
4872f78888 Input: zaurus keyboard driver updates
* Change the scan interval from 100ms to 50ms. This stops the key
    repeat from triggering on double letter presses.
  * Remove unneeded stale hinge code from corgikbd
  * Change unneeded corgi GPIO pins to inputs when suspended
  * Add support for the headphone jack switch for both corgi and spitz
    (as switch SW_2)

Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-03-14 00:12:32 -05:00
Bjorn Helgaas
2bfc3c6e95 Input: i8042 - fix logic around pnp_register_driver()
Do not assume that pnp_register_driver() returns the number of
devices claimed.

Signed-off-by: Bjorn Helgaas <bjorn.helgaas@hp.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-03-14 00:12:24 -05:00
Bjorn Helgaas
dd55563f63 Input: ns558 - fix logic around pnp_register_driver()
Do not assume that pnp_register_driver() returns the number of
devices claimed.

Signed-off-by: Bjorn Helgaas <bjorn.helgaas@hp.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-03-14 00:12:08 -05:00
Michael Neuling
e5c6c8e457 Input: pcspkr - separate device and driver registration
The current pcspkr code combines the device and driver registration.
This patch splits these, putting the device registration in the arch
specific code.

PowerPC and MIPS only have the pcspkr present sometimes.

Signed-off-by: Michael Neuling <mikey@neuling.org>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-03-14 00:11:50 -05:00
Dmitry Torokhov
aaef685d57 Input: atkbd - allow disabling on X86_PC (if EMBEDDED)
Allow disabling atkbd driver if CONFIG_EMBEDDED is enabled. Previously
it was impossible to disable atkbd on X86_PC.

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-03-14 00:10:23 -05:00
Vojtech Pavlik
380e19e2d8 Input: atkbd - disable softrepeat for dumb keyboards
Do not activate softrepeat by default on dumb keyboards as it clashes
with their own hardware repeat (for example Dell DRAC3). Softrepeat
can still be activated manually via module parameter or sysfs.

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-03-14 00:10:08 -05:00
Vojtech Pavlik
9b104c12f1 Input: atkbd - fix complaints about 'releasing unknown key 0x7f'
Fix bat_xl and err_xl logic causing atkbd to complain about 'unknown
key 0x7f'. Noted by Ben LaHaise.

Signed-off-by: Vojtech Pavlik <vojtech@suse.cz>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-03-14 00:09:52 -05:00
Eric Sesterhenn
b39787a972 Input: use kzalloc() throughout the code
Signed-off-by: Eric Sesterhenn <snakebyte@gmx.de>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-03-14 00:09:16 -05:00
Dmitry Torokhov
58a343f22e Merge rsync://rsync.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6 2006-03-13 23:36:52 -05:00
Dmitry Torokhov
8bd0ee93fe [PATCH] Input: psmouse - disable autoresync
Automatic resynchronization in psmouse driver causes problems on some
hardware so disable it by default for now. People with KVM switches
that require resync can still enable it via module parameter or sysfs
attribute.

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-03-10 22:09:33 -08:00
Dmitry Torokhov
51c38f9bce Input: initialize serio and gameport at subsystem level
Serio and gameport cores do not depend on other drivers and are
used by code living outside of drivers/input/{gameport|serio}.
Registering them at subsystem level guarantees that they are
fully initialized before anyone tries to use them.

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-02-19 00:22:51 -05:00
Dmitry Torokhov
221979aad6 Input: uinput - semaphore to mutex conversion
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-02-19 00:22:36 -05:00
Ingo Molnar
72ba9f0ce0 Input: joysticks - semaphore to mutex conversion
The conversion was generated via scripts, and the result was validated
automatically via a script as well.

Amijoy conversion was done by Arjan van de Ven.

Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-02-19 00:22:30 -05:00
Ingo Molnar
33d3f07ae1 Input: atkbd - semaphore to mutex conversion
The conversion was generated via scripts, and the result was validated
automatically via a script as well.

Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-02-19 00:22:18 -05:00
Ingo Molnar
c14471dc2e Input: psmouse - semaphore to mutex conversion
The conversion was generated via scripts, and the result was validated
automatically via a script as well.

Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-02-19 00:22:11 -05:00
Arjan van de Ven
286295eb93 Input: gameport - semaphore to mutex conversion
The conversion was generated via scripts, and the result was validated
automatically via a script as well.

Signed-off-by: Arjan van de Ven <arjan@infradead.org>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-02-19 00:22:03 -05:00
Arjan van de Ven
c4e32e9faa Input: serio - semaphore to mutex conversion
The conversion was generated via scripts, and the result was validated
automatically via a script as well.

Signed-off-by: Arjan van de Ven <arjan@infradead.org>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-02-19 00:21:55 -05:00
Jes Sorensen
e676c232e6 Input: input core - semaphore to mutex conversion
Signed-off-by: Jes Sorensen <jes@sgi.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-02-19 00:21:46 -05:00
Arthur Othieno
02860ab6cd Input: kill remnants of 98kbd{,-io} and 98spkr
98kbd{,-io} and 98spkr all went out with PC98 subarch.  Remove stale Makefile
entries that remained.

Signed-off-by: Arthur Othieno <apgo@patchbomb.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-02-15 00:49:48 -05:00
David Brownell
d93f70b2d7 Input: ads7846 - assorted updates
This updates the ads7846 touchscreen driver:
  - to allow faster clocking (this driver doesn't push sample rates);
  - bugfixes the conversion of spi_transfer to lists;
  - some dma-unsafe command buffers are fixed.

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-02-15 00:49:35 -05:00
Dmitry Torokhov
a90f7e98b7 Input: ads7846 - convert to to dynamic input_dev allocation
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-02-15 00:49:22 -05:00
Dmitry Torokhov
b8044c74bc Input: trackpoint - enable devices connected to external port
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-02-15 00:49:09 -05:00
Meelis Roos
50f6dde0ad Input: logips2pp - add new signature (99)
Add Logitech mouse type 99 (Premium Optical Wheel Mouse, model M-BT58,
plain 3 buttons + wheel) to cure the following message: logips2pp: Detected
unknown logitech mouse model 99

Signed-off-by: Meelis Roos <mroos@linux.ee>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-02-15 00:48:58 -05:00
Alessandro Zummo
a09d31ff76 Input: ixp4xx-beeper - fix compile error
Signed-off-by: Alessandro Zummo <a.zummo@towertech.it>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-02-15 00:48:40 -05:00
Linus Torvalds
d20e6336ea Merge master.kernel.org:/pub/scm/linux/kernel/git/dtor/input 2006-01-31 21:18:17 -08:00
Dmitry Torokhov
97d4ebfe79 Input: iforce - fix detection of USB devices
Recent conversion to wait_event_interruptible_timeout() caused
USB detection routine erroneously report timeouts for perfectly
working devices.

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-01-31 01:31:07 -05:00
Dmitry Torokhov
275c6ce25d Input: a3d - convert to dynamic input_dev allocation
Also set .owner in driver structure so we'll have a link between
module and driver in sysfs.

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-01-29 21:52:39 -05:00
Dmitry Torokhov
4d462b9e23 Input: tmdc - handle errors from input_register_device()
Also set .owner in driver structure so we'll have a link between
module and driver in sysfs.

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-01-29 21:52:26 -05:00
Dmitry Torokhov
ab52cd66ae Input: turbografx - handle errors from input_register_device()
Also tgfx_remove shouldn't be marked __exit as it is also called from
__init code.

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-01-29 21:52:18 -05:00
Dmitry Torokhov
77fc46ca5b Input: gamecon - handle errors from input_register_device()
Also gc_remove shouldn't be marked __exit as it is also called from
__init code.

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-01-29 21:52:11 -05:00
Dmitry Torokhov
c7fd018d75 Input: gamecon - fix crash when accessing device
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-01-29 21:52:04 -05:00
Dmitry Torokhov
07cf779c00 Input: sidewinder - handle errors from input_register_device()
Also set .owner in driver structure so we'll have a link between
module and driver in sysfs.

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-01-29 21:51:56 -05:00
Zinx Verituse
847fd5fbf7 Input: sidewinder - fix an oops
Dynalloc conversion strikes again...

Signed-off-by: Vojtech Pavlik <vojtech@suse.cz>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-01-29 21:51:51 -05:00
Dmitry Torokhov
2e9d675ed2 Input: db9 - handle errors from input_register_device()
Also db9_remove shouldn't be marked __exit as it is also called from
__init code.

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-01-29 21:51:36 -05:00
Dmitry Torokhov
84c61896bd Input: db9 - fix possible crash with Saturn gamepads
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-01-29 21:51:31 -05:00
Dmitry Torokhov
0399addd71 Input: grip - handle errors from input_register_device()
Also set .owner in driver structure so we'll have a link between
module and driver in sysfs.

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-01-29 21:51:21 -05:00
Dmitry Torokhov
3575c34100 Input: grip - fix crash when accessing device
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-01-29 21:51:16 -05:00
Adrian Bunk
ffc6b529e8 Input: make needlessly global code static
Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-01-29 21:51:07 -05:00
Kimball Murray
74570d413c Input: mousedev - fix memory leak
Apparently, "while true; do cat </dev/null >/dev/input/mice; done" causes
an OOM in a short amount of time. Funny that nobody noticed, it actually
is very easy to trigger just by switching between VT1 and VT7...

Signed-off-by: Pete Zaitcev <zaitcev@redhat.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-01-29 21:50:59 -05:00
Alexey Dobriyan
5ae08f80ec Input: iforce - do not return ENOMEM upon successful allocation
Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-01-29 21:50:52 -05:00
Dmitry Torokhov
a3f3f31766 Input: psmouse - set name for Genius mice
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-01-29 21:50:46 -05:00
Alessandro Zummo
0138795902 Input: add ixp4xx beeper driver
This is a driver for beeper found in LinkSys NSLU2 boxes. It should work
on any ixp4xx based platform.

Signed-off-by: Alessandro Zummo <a.zummo@towertech.it>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-01-29 21:50:40 -05:00
Russell King
f43aaba191 [ARM] Convert request_irq+set_irq_type to request_irq with SA_TRIGGER
There's no need to have request_irq followed by set_irq_type.
Just use request_irq with the appropriate SA_TRIGGER flags.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-01-19 12:26:57 +00:00
Paul Mundt
0025835cf2 [PATCH] sh: consolidate hp620/hp680/hp690 targets into hp6xx
Most of the reasons for keeping these separate before was due to hp690
discontig, and since we have a workaround for that now (abusing some shadow
space so everything is magically contiguous), there's no reason to keep the
targets separate.

Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-01-16 23:15:27 -08:00
Linus Torvalds
61b7efddc5 Merge master.kernel.org:/pub/scm/linux/kernel/git/gregkh/spi-2.6 2006-01-14 10:43:26 -08:00
Linus Torvalds
3e2b32b693 Merge master.kernel.org:/pub/scm/linux/kernel/git/gregkh/driver-2.6 2006-01-14 10:42:40 -08:00
Linus Torvalds
e7de369050 Merge master.kernel.org:/pub/scm/linux/kernel/git/dtor/input 2006-01-14 09:49:16 -08:00
Dmitry Torokhov
f0d5c6f419 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>
2006-01-14 00:27:37 -05:00
Vojtech Pavlik
3dd01a8311 Input: i8042 - add Sony Vaio FSC-115b to MUX blacklist
Signed-off-by: Vojtech Pavlik <vojtech@suse.cz>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-01-14 00:24:06 -05:00
Vitaly Wool
8275c642cc [PATCH] spi: use linked lists rather than an array
This makes the SPI core and its users access transfers in the SPI message
structure as linked list not as an array, as discussed on LKML.

From: David Brownell <dbrownell@users.sourceforge.net>

  Updates including doc, bugfixes to the list code, add
  spi_message_add_tail().  Plus, initialize things _before_ grabbing the
  locks in some cases (in case it grows more expensive).  This also merges
  some bitbang updates of mine that didn't yet make it into the mm tree.

Signed-off-by: Vitaly Wool <vwool@ru.mvista.com>
Signed-off-by: Dmitry Pervushin <dpervushin@gmail.com>
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2006-01-13 16:29:56 -08:00
David Brownell
2e5a7bd978 [PATCH] spi: ads7836 uses spi_driver
This updates the ads7864 driver to use the new "spi_driver" struct, and
includes some minor unrelated cleanup.

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2006-01-13 16:29:55 -08:00
David Brownell
ffa458c1bd [PATCH] spi: ads7846 driver
This is a driver for the ADS7846 touchscreen sensor, derived from
the corgi_ts and omap_ts drivers.  Key differences from those two:

  - Uses the new SPI framework (minimalist version)
  - <linux/spi/ads7846.h> abstracts board-specific touchscreen info
  - Sysfs attributes for the temperature and voltage sensors
  - Uses fewer ARM-specific IRQ primitives

The temperature and voltage sensors show up in sysfs like this:

  $ pwd
  /sys/devices/platform/omap-uwire/spi2.0
  $ ls
  bus@          input:event0@ power/        temp1         vbatt
  driver@       modalias      temp0         vaux
  $ cat modalias
  ads7846
  $ cat temp0
  991
  $ cat temp1
  1177
  $

So far only basic testing has been done.  There's a fair amount of hardware
that uses this sensor, and which also runs Linux, which should eventually
be able to use this driver.

One portability note may be of special interest.  It turns out that not all
SPI controllers are happy issuing requests that do things like "write 8 bit
command, read 12 bit response".  Most of them seem happy to handle various
word sizes, so the issue isn't "12 bit response" but rather "different rx
and tx write sizes", despite that being a common MicroWire convention.  So
this version of the driver no longer reads 12 bit native-endian words; it
reads 16-bit big-endian responses, then byteswaps them and shifts the
results to discard the noise.

Signed-off-by: David Brownell <david-b@pacbell.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2006-01-13 16:29:54 -08:00
Russell King
30226f8199 [PATCH] Add serio bus_type probe and remove methods
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2006-01-13 11:26:07 -08:00
Russell King
29a4a20e9f [PATCH] Add gameport bus_type probe and remove methods
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2006-01-13 11:26:07 -08:00
Kay Sievers
bd37e5a951 [PATCH] INPUT: add MODALIAS to the event environment
input: add MODALIAS to the event environment

Signed-off-by: Kay Sievers <kay.sievers@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2006-01-13 11:26:04 -08:00
Al Viro
b4290a23cf [PATCH] m68k: namespace pollution fix (custom->amiga_custom)
in amigahw.h custom renamed to amiga_custom, in drivers with few instances the
same replacement, in the rest - #define custom amiga_custom in driver itself

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Cc: Roman Zippel <zippel@linux-m68k.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-01-12 09:09:00 -08:00
Al Viro
6450578f32 [PATCH] ia64: task_pt_regs()
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-01-12 09:08:58 -08:00
Andi Kleen
bf2fcc6fdf [PATCH] x86_64: Implement is_compat_task the right way
By setting a flag during a 32bit system call only

Signed-off-by: Andi Kleen <ak@suse.de>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-01-11 19:04:53 -08:00
Linus Torvalds
115b2ce1c3 Merge git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input 2006-01-10 08:30:29 -08:00
Alan Cox
33f0f88f1c [PATCH] TTY layer buffering revamp
The API and code have been through various bits of initial review by
serial driver people but they definitely need to live somewhere for a
while so the unconverted drivers can get knocked into shape, existing
drivers that have been updated can be better tuned and bugs whacked out.

This replaces the tty flip buffers with kmalloc objects in rings. In the
normal situation for an IRQ driven serial port at typical speeds the
behaviour is pretty much the same, two buffers end up allocated and the
kernel cycles between them as before.

When there are delays or at high speed we now behave far better as the
buffer pool can grow a bit rather than lose characters. This also means
that we can operate at higher speeds reliably.

For drivers that receive characters in blocks (DMA based, USB and
especially virtualisation) the layer allows a lot of driver specific
code that works around the tty layer with private secondary queues to be
removed. The IBM folks need this sort of layer, the smart serial port
people do, the virtualisers do (because a virtualised tty typically
operates at infinite speed rather than emulating 9600 baud).

Finally many drivers had invalid and unsafe attempts to avoid buffer
overflows by directly invoking tty methods extracted out of the innards
of work queue structs. These are no longer needed and all go away. That
fixes various random hangs with serial ports on overflow.

The other change in here is to optimise the receive_room path that is
used by some callers. It turns out that only one ldisc uses receive room
except asa constant and it updates it far far less than the value is
read. We thus make it a variable not a function call.

I expect the code to contain bugs due to the size alone but I'll be
watching and squashing them and feeding out new patches as it goes.

Because the buffers now dynamically expand you should only run out of
buffering when the kernel runs out of memory for real.  That means a lot of
the horrible hacks high performance drivers used to do just aren't needed any
more.

Description:

tty_insert_flip_char is an old API and continues to work as before, as does
tty_flip_buffer_push() [this is why many drivers dont need modification].  It
does now also return the number of chars inserted

There are also

tty_buffer_request_room(tty, len)

which asks for a buffer block of the length requested and returns the space
found.  This improves efficiency with hardware that knows how much to
transfer.

and tty_insert_flip_string_flags(tty, str, flags, len)

to insert a string of characters and flags

For a smart interface the usual code is

    len = tty_request_buffer_room(tty, amount_hardware_says);
    tty_insert_flip_string(tty, buffer_from_card, len);

More description!

At the moment tty buffers are attached directly to the tty.  This is causing a
lot of the problems related to tty layer locking, also problems at high speed
and also with bursty data (such as occurs in virtualised environments)

I'm working on ripping out the flip buffers and replacing them with a pool of
dynamically allocated buffers.  This allows both for old style "byte I/O"
devices and also helps virtualisation and smart devices where large blocks of
data suddenely materialise and need storing.

So far so good.  Lots of drivers reference tty->flip.*.  Several of them also
call directly and unsafely into function pointers it provides.  This will all
break.  Most drivers can use tty_insert_flip_char which can be kept as an API
but others need more.

At the moment I've added the following interfaces, if people think more will
be needed now is a good time to say

 int tty_buffer_request_room(tty, size)

Try and ensure at least size bytes are available, returns actual room (may be
zero).  At the moment it just uses the flipbuf space but that will change.
Repeated calls without characters being added are not cumulative.  (ie if you
call it with 1, 1, 1, and then 4 you'll have four characters of space.  The
other functions will also try and grow buffers in future but this will be a
more efficient way when you know block sizes.

 int tty_insert_flip_char(tty, ch, flag)

As before insert a character if there is room.  Now returns 1 for success, 0
for failure.

 int tty_insert_flip_string(tty, str, len)

Insert a block of non error characters.  Returns the number inserted.

 int tty_prepare_flip_string(tty, strptr, len)

Adjust the buffer to allow len characters to be added.  Returns a buffer
pointer in strptr and the length available.  This allows for hardware that
needs to use functions like insl or mencpy_fromio.

Signed-off-by: Alan Cox <alan@redhat.com>
Cc: Paul Fulghum <paulkf@microgate.com>
Signed-off-by: Hirokazu Takata <takata@linux-m32r.org>
Signed-off-by: Serge Hallyn <serue@us.ibm.com>
Signed-off-by: Jeff Dike <jdike@addtoit.com>
Signed-off-by: John Hawkes <hawkes@sgi.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-01-10 08:01:59 -08:00
Paul Mundt
94f8d28c47 Input: remove obsolete maple input drivers
These haven't worked in some time, and we've dropped support for the bus
from the SH tree until someone shows some interest in maintaining it.

Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-01-10 02:00:27 -05:00
Arjan van de Ven
e2bd470ec7 Input: prepare for f_ops constness
Avoid doing assignments to a live ->fops so it can be marked as 'const'.

Signed-off-by: Arjan van de Ven <arjan@infradead.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-01-10 01:59:51 -05:00
Miloslav Trmac
c28c358367 Input: wistron - do not crash if BIOS does not support interface
offset can never be < 0 because it has type size_t.  The driver
currently oopses on insmod if BIOS does not support the interface,
instead of refusing to load.

Signed-off-by: Miloslav Trmac <mitr@volny.cz>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-01-10 01:59:07 -05:00
Dmitry Torokhov
ebbac7dde2 Input: grip_mp - kill commented out code
Kill leftovers of dynalloc conversion.

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-01-10 01:58:47 -05:00
Russell King
0a3a98f6dd Merge Linus' tree. 2006-01-09 19:18:33 +00:00
Russell King
e9368f8288 [ARM] Remove asm/irq.h includes from ARM drivers
Many ARM drivers do not need to include asm/irq.h - remove this
unnecessary include from some ARM drivers.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-01-09 13:56:42 +00:00
Russell King
9ded96f24c [PATCH] IRQ type flags
Some ARM platforms have the ability to program the interrupt controller to
detect various interrupt edges and/or levels.  For some platforms, this is
critical to setup correctly, particularly those which the setting is dependent
on the device.

Currently, ARM drivers do (eg) the following:

	err = request_irq(irq, ...);

	set_irq_type(irq, IRQT_RISING);

However, if the interrupt has previously been programmed to be level sensitive
(for whatever reason) then this will cause an interrupt storm.

Hence, if we combine set_irq_type() with request_irq(), we can then safely set
the type prior to unmasking the interrupt.  The unfortunate problem is that in
order to support this, these flags need to be visible outside of the ARM
architecture - drivers such as smc91x need these flags and they're
cross-architecture.

Finally, the SA_TRIGGER_* flag passed to request_irq() should reflect the
property that the device would like.  The IRQ controller code should do its
best to select the most appropriate supported mode.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-01-08 20:13:46 -08:00
Marcelo Tosatti
70c00ba0bb [PATCH] small hp_sdc_rtc cleanup: use no_llseek
Use no_llseek function.

Signed-off-by: Marcelo Tosatti <marcelo.tosatti@cyclades.com>
Cc: "Brian S. Julin" <bri@calyx.com>
Acked-by: Vojtech Pavlik <vojtech@suse.cz>
Cc: Dmitry Torokhov <dtor_core@ameritech.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-01-08 20:12:38 -08:00
Linus Torvalds
b9abaa3fb7 Merge git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input 2006-01-07 11:29:51 -08:00
Russell King
f8ce25476d [ARM] Move asm/hardware/clock.h to linux/clk.h
This is needs to be visible to other architectures using the AMBA
bus and peripherals.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-01-07 16:15:52 +00:00
Russell King
123656d4cc Merge with Linus' kernel. 2006-01-07 14:40:05 +00:00
Russell King
a62c80e559 [ARM] Move AMBA include files to include/linux/amba/
Since the ARM AMBA bus is used on MIPS as well as ARM, we need
to make the bus available for other architectures to use.  Move
the AMBA include files from include/asm-arm/hardware/ to
include/linux/amba/

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-01-07 13:52:45 +00:00
Martin Schwidefsky
347a8dc3b8 [PATCH] s390: cleanup Kconfig
Sanitize some s390 Kconfig options.  We have ARCH_S390, ARCH_S390X,
ARCH_S390_31, 64BIT, S390_SUPPORT and COMPAT.  Replace these 6 options by
S390, 64BIT and COMPAT.

Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-01-06 08:33:53 -08:00