Commit graph android_kernel_sony_sdm845/drivers/input
Message SHA1
input: add I2C to config since the driver makes several i2c*() calls
Add to help text that the Intel I2C ICH (i801) driver is also needed
for this kernel.

Add LEDS_CLASS to config since the driver makes les_classdev_*() calls:
ERROR: "led_classdev_register" [drivers/input/misc/apanel.ko] undefined!
ERROR: "__led_classdev_unregister" [drivers/input/misc/apanel.ko]
undefined!

Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

Randy Dunlap   authored and   Linus Torvalds   commited 2008-03-04 16:35:18 -08:00
1913130553
mn10300: add the MN10300/AM33 architecture to the kernel
Add architecture support for the MN10300/AM33 CPUs produced by MEI to the
kernel.

This patch also adds board support for the ASB2303 with the ASB2308 daughter
board, and the ASB2305.  The only processor supported is the MN103E010, which
is an AM33v2 core plus on-chip devices.

[akpm@linux-foundation.org: nuke cvs control strings]
Signed-off-by: Masakazu Urade <urade.masakazu@jp.panasonic.com>
Signed-off-by: Koichi Yasutake <yasutake.koichi@jp.panasonic.com>
Signed-off-by: David Howells <dhowells@redhat.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

David Howells   authored and   Linus Torvalds   commited 2008-02-08 09:22:30 -08:00
b920de1b77
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: (34 commits)
  Input: i8042 - non-x86 build fix
  Input: pxa27x_keypad - also enable on PXA3xx
  Input: pxa27x_keypad - add debounce_interval to the keypad platform data
  Input: pxa27x_keypad - use device resources for I/O memory mapping and IRQ
  Input: pxa27x_keypad - enable rotary encoders and direct keys
  Input: pxa27x_keypad - introduce pxa27x_keypad_config()
  Input: pxa27x_keypad - introduce driver structure and use KEY() to define matrix keys
  Input: pxa27x_keypad - remove pin configuration from the driver
  Input: pxa27x_keypad - rename the driver (was pxa27x_keyboard)
  Input: constify function pointer tables (seq_operations)
  Input: i8042 - add Fujitsu-Siemens Amilo Pro 2010 to nomux list
  Input: i8042 - enable DMI quirks on x86-64
  Input: i8042 - add Dritek quirk for Acer Aspire 9110
  Input: add input event to APM event bridge
  Input: mousedev - use BIT_MASK instead of BIT
  Input: remove duplicate includes
  Input: remove cdev from input_dev structure
  Input: remove duplicated headers in drivers/char/keyboard.c
  Input: i8042 - add Dritek keyboard extension quirk
  Input: add Tosa keyboard driver
  ...

Linus Torvalds   commited 2008-02-07 12:57:44 -08:00
6e5565f949
leds: Standardise LED naming scheme
As discussed on LKML some notion of 'function' is needed in
LED naming. This patch adds this to the documentation and
standardises existing LED drivers.

Signed-off-by: Richard Purdie <rpurdie@rpsys.net>

Richard Purdie   commited 2008-02-07 09:47:00 +00:00
6c152beefb
Remove pointless casts from void pointers
Mostly in and around irq handlers.

Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
Cc: Russell King <rmk@arm.linux.org.uk>
Cc: "Luck Tony" <tony.luck@intel.com>
Cc: Roman Zippel <zippel@linux-m68k.org>
Cc: Geert Uytterhoeven <geert@linux-m68k.org>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Acked-by: Dmitry Torokhov <dtor@mail.ru>
Cc: Karsten Keil <kkeil@suse.de>
Acked-by: "John W. Linville" <linville@tuxdriver.com>
Cc: James Bottomley <James.Bottomley@steeleye.com>
Cc: David Brownell <david-b@pacbell.net>
Cc: "Antonino A. Daplas" <adaplas@pol.net>
Acked-by: Josh Boyer <jwboyer@linux.vnet.ibm.com>
Acked-by: Holger Schurig <hs4233@mail.mn-solutions.de>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

Jeff Garzik   authored and   Linus Torvalds   commited 2008-02-06 10:41:01 -08:00
15aafa2f9d
Merge branch 'pxa-keypad'
Dmitry Torokhov   commited 2008-02-06 00:54:05 -05:00
03366e7b9b
Input: i8042 - non-x86 build fix
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>

Andrew Morton   authored and   Dmitry Torokhov   commited 2008-02-06 00:48:15 -05:00
c18bab80d1
drivers/input/: Spelling fixes
Signed-off-by: Joe Perches <joe@perches.com>
Signed-off-by: Adrian Bunk <bunk@kernel.org>

Joe Perches   authored and   Adrian Bunk   commited 2008-02-03 17:15:20 +02:00
5047fabac1
jonada720: remove duplicate include
Signed-off-by: Andre Haupt <andre@bitwigglers.org>
Acked-by: Kristoffer Ericson <kristoffer.ericson@gmail.com>
Signed-off-by: Adrian Bunk <bunk@kernel.org>

Andre Haupt   authored and   Adrian Bunk   commited 2008-02-03 16:08:09 +02:00
17a61cdfc5
bf54x: remove duplicate include
Signed-off-by: Andre Haupt <andre@bitwigglers.org>
Signed-off-by: Adrian Bunk <bunk@kernel.org>

Andre Haupt   authored and   Adrian Bunk   commited 2008-02-03 16:04:56 +02:00
8340c103d7
gameport: remove duplicate include
Signed-off-by: Andre Haupt <andre@bitwigglers.org>
Signed-off-by: Adrian Bunk <bunk@kernel.org>

Andre Haupt   authored and   Adrian Bunk   commited 2008-02-03 16:03:50 +02:00
f639416325
[ALSA] Remove sound/driver.h
This header file exists only for some hacks to adapt alsa-driver
tree.  It's useless for building in the kernel.  Let's move a few
lines in it to sound/core.h and remove it.
With this patch, sound/driver.h isn't removed but has just a single
compile warning to include it.  This should be really killed in
future.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>

Takashi Iwai   authored and   Jaroslav Kysela   commited 2008-01-31 17:29:48 +01:00
9004acc70e
Input: pxa27x_keypad - also enable on PXA3xx
Signed-off-by: Eric Miao <eric.miao@marvell.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>

Eric Miao   authored and   Dmitry Torokhov   commited 2008-01-31 00:59:31 -05:00
e0f2677f0d
Input: pxa27x_keypad - add debounce_interval to the keypad platform data
Currently, only one debounce_interval is introduced for both direct and
matrix keys. This is true in most cases, although the keypad controller
supports different debounce for direct/matrix keys.

Some platforms do require this to be tuned, instead of the default
reset value of 100ms.

Rotary encoder will always use zero debounce time for now to achieve
certain sensitivity.

Signed-off-by: Eric Miao <eric.miao@marvell.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>

Eric Miao   authored and   Dmitry Torokhov   commited 2008-01-31 00:59:23 -05:00
76cb44e1a8
Input: pxa27x_keypad - use device resources for I/O memory mapping and IRQ
1. use ioremap() for registers access, this improves the portability
   of the driver (e.g. same IP on different processor with different
   I/O memory range), and make it possible to remove those registers
   definition in pxa-regs.h as PXA is undergoing a clean-up of that
   header file

2. use device specific IRQ instead of hardcoded IRQ_KEYPAD, same
   reason as above

3. clean up the error handling path in _probe()

4. remove DRIVER_NAME and use pdev->name when necessary, we don't
   actually need a constant string literals

Signed-off-by: Eric Miao <eric.miao@marvell.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>

Eric Miao   authored and   Dmitry Torokhov   commited 2008-01-31 00:59:15 -05:00
9c60debd2a
Input: pxa27x_keypad - enable rotary encoders and direct keys
1. Rotary encoder events can be configured either as relative events
   as the legacy code does or as any specified key code, this is
   useful on some platform which uses the rotary keys as
   KEY_{UP/DOWN/LEFT/RIGHT}

2. Add support for direct keys, the corresponding keycodes for each
   direct key can now be specified within the platform data

3. Remove the direct/rotary key detection code from the IRQ handler
   to dedicated functions to improve readability

Signed-off-by: Eric Miao <eric.miao@marvell.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>

Eric Miao   authored and   Dmitry Torokhov   commited 2008-01-31 00:59:03 -05:00
62059d9e91
Input: pxa27x_keypad - introduce pxa27x_keypad_config()
Introduce pxa27x_keypad_config() for keypad registers configuration
and remove the reg_kpc, reg_kprec from platform data structure
so that configurations of keypad registers can be centralized to a
single function.

It can also be re-used when resuming.

Signed-off-by: Eric Miao <eric.miao@marvell.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>

Eric Miao   authored and   Dmitry Torokhov   commited 2008-01-31 00:58:52 -05:00
d7416f9eaa
Input: pxa27x_keypad - introduce driver structure and use KEY() to define matrix keys
1. Introduce the "struct pxa27x_keypad" structure for driver specific
    information, such as "struct clk", generated matrix key codes and
    so on

 2. Use KEY() macro to define matrix keys, instead of original 8x8 map
    this makes definition easier with keypad where keys are sparse

 3. Keep a generated array in "struct pxa27x_keypad" for fast lookup

 4. Separate the matrix scan into a dedicated function for readability
    and report only those keys whose state has been changed, instead
    of report all states

 5. Make use of KPAS to decide the faster path if only one key has been
    detected

Signed-off-by: Eric Miao <eric.miao@marvell.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>

Eric Miao   authored and   Dmitry Torokhov   commited 2008-01-31 00:58:37 -05:00
1814db6969
Input: pxa27x_keypad - remove pin configuration from the driver
The pin configurations will slowly be moved to the board specific code
at initialization thus to make the driver more generic.

Signed-off-by: Eric Miao <eric.miao@marvell.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>

Eric Miao   authored and   Dmitry Torokhov   commited 2008-01-31 00:58:00 -05:00
1a1cd739a4
Input: pxa27x_keypad - rename the driver (was pxa27x_keyboard)
The controller should really be called keypad, and also align
the naming of functions and structures to use "pxa27x_keypad"
as prefix, instead of "pxakbd".

Signed-off-by: Eric Miao <eric.miao@marvell.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>

Eric Miao   authored and   Dmitry Torokhov   commited 2008-01-31 00:56:46 -05:00
0e5f11aa80
Input: constify function pointer tables (seq_operations)
Signed-off-by: Jan Engelhardt <jengelh@computergmbh.de>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>

Jan Engelhardt   authored and   Dmitry Torokhov   commited 2008-01-31 00:43:32 -05:00
cec69c376b
Input: i8042 - add Fujitsu-Siemens Amilo Pro 2010 to nomux list
Reported-by: Hans Aschauer <Hans.Aschauer@web.de>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>

Jiri Kosina   authored and   Dmitry Torokhov   commited 2008-01-30 16:34:52 -05:00
3f79b1e940
Input: i8042 - enable DMI quirks on x86-64
If firmware does not implement AUX_LOOP comand in 32 bit mode it
is unlikely to implement it in 64 bit mode. Same goes for active
multiplexing. See:

http://bugzilla.kernel.org/show_bug.cgi?id=9664

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>

Bruce Duncan   authored and   Dmitry Torokhov   commited 2008-01-30 16:34:34 -05:00
b4d62de162
Input: i8042 - add Dritek quirk for Acer Aspire 9110
The Acer Aspire 9110 series also requires the Dritek quirk to enable the
extra scancodes.

Signed-off-by: Carlos Corbacho <carlos@strangeworlds.co.uk>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>

Carlos Corbacho   authored and   Dmitry Torokhov   commited 2008-01-30 16:34:12 -05:00
5799ddb54e
Input: add input event to APM event bridge
This patch adds a very simple input power event to APM user suspend
event bridge. Its currently only works for the systems using the
emulated APM driver but could easily be extended to work with anything
with a true APM BIOS too.

This covers a standard embedded system need which is to suspend when the
user presses a suspend button. It leaves options open to system
integrators to ignore (or unload) this code and implement their own more
complex event handling system.

Its hidden behind the EMBEDDED Kconfig option since its only likely to
be of use to embedded style systems. It can be built as a module so the
"hardcoded" policy can easily be removed from the kernel at runtime if
desired too.

Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>

Richard Purdie   authored and   Dmitry Torokhov   commited 2008-01-30 16:33:59 -05:00
e17bb1de3b
Input: mousedev - use BIT_MASK instead of BIT
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>

Dmitry Torokhov   commited 2008-01-30 16:33:40 -05:00
d182c10c84
x86: replace outb_p() with udelay(2) in drivers/input/mouse/pc110pad.c
replace outb_p() with udelay(2). This is a real ISA device so it likely
needs this particular delay.

Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>

Ingo Molnar   commited 2008-01-30 13:31:24 +01:00
41e191e85a
[ARM] 4737/1: Refactor corgi_lcd to improve readability + bugfix
This patch refactors the code in corgi_lcd.c moving it to the board
specific corgi and spitz files where appropriate instead of the
existing ifdef mess which hinders readability.

Fix spitz_get_hsync_len() to call get_hsync_invperiod so pxafb can be
compiled as a module.

The confusing variables which represent the inverse horizintal sync
period are renamed to "invperiod" consistently.

An incorrect comment in corgi_ts.c is also corrected.

Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>

Richard Purdie   authored and   Russell King   commited 2008-01-28 13:13:25 +00:00
ca4d6cfcee
[SPARC64]: Fix section error in sparcspkr
With a sparc64 defconfig modified to set CONFIG_HOTPLUG=n
the following error happened during link of vmlinux:

local symbol 0: discarded in section `.devexit.text' from drivers/built-in.o
local symbol 1: discarded in section `.devexit.text' from drivers/built-in.o

(The error message above is from kbuild.git but it happens in mainline too)

The error happens becase there is a reference from .text/.data to a
function marked __devexit. With CONFIG_HOTPLUG=n all code marked
__devexit are discarded and the linker complains.

It was tracked down to sparcspkr.c which were missing __devexit_p()
around the function pointers.

Unfortunately modpost did not catch this since modpost do not warn
about references from .data to .devexit from variables named *_driver.

Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
Signed-off-by: David S. Miller <davem@davemloft.net>

Sam Ravnborg   authored and   David S. Miller   commited 2008-01-21 22:34:31 -08:00
2ad913babd
Input: remove duplicate includes
Signed-off-by: Andre Haupt <andre@bitwigglers.org>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>

Andre Haupt   authored and   Dmitry Torokhov   commited 2008-01-21 01:16:15 -05:00
e2c75391dd
Input: remove cdev from input_dev structure
Cdev field was obsolete and provided only for backward compatibility
since conversion of input core from class devices to regular devices.
It is time to remove it.

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>

Dmitry Torokhov   commited 2008-01-21 01:11:08 -05:00
0c1efd3653
Input: i8042 - add Dritek keyboard extension quirk
Some Wistron based laptops need us to explicitly enable the 'Dritek
keyboard extension' to make their extra keys start generating scancodes.
Originally, this was just confined to older laptops, but a few Acer
laptops have turned up in 2007 that also need this again.

Signed-off-by: Carlos Corbacho <carlos@strangeworlds.co.uk>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>

Carlos Corbacho   authored and   Dmitry Torokhov   commited 2008-01-21 01:11:08 -05:00
8987fec0de
Input: add Tosa keyboard driver
Add keyboard support on tosa (Sharp Zaurus SL-6000x).
Largely based on patches by Dirk Opfer.

Signed-off-by: Dmitry Baryshkov <dbaryshkov@gmail.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>

Dmitry Baryshkov   authored and   Dmitry Torokhov   commited 2008-01-21 01:11:07 -05:00
93e9012f40
Input: add driver for Fujitsu application buttons
This driver supports the application buttons on some Fujitsu Lifebook
laptops.  It is based on the earlier apanel driver done by Jochen Eisenger,
but with many changes.  The original driver used ioctl's and a separate
user space program (see http://apanel.sourceforge.net).  This driver hooks
into the input subsystem so that the normal keys act as expected without a
daemon.  In addition to buttons, the Mail Led is handled via LEDs class
device.

The driver now supports redefinable keymaps and no longer has to have a DMI
table for all Fujitsu laptops.

I thought about mixing this driver should be integrated into the Fujitsu
laptop extras driver that handles backlight, but rejected the idea because
it wasn't clear if all the Fujitsu laptops supported both.

Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>

Stephen Hemminger   authored and   Dmitry Torokhov   commited 2008-01-21 01:11:07 -05:00
52fe0cdb09
Input: ads7846 - stop updating dev->power.power_state
This stops the ads7846 driver from using dev->power.power_state; that field is
deprecated (overdue for removal) and the only reason to update it was to make
the /sys/devices/.../power/state files (now removed) work better.

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>

David Brownell   authored and   Dmitry Torokhov   commited 2008-01-21 01:11:07 -05:00
fbb38e30e4
Input: drop redundant includes of moduleparam.h
Drop #include <linux/moduleparam.h> in files that also include
linux/module.h, since module.h includes moduleparam.h already.

Signed-off-by: Julia Lawall <julia@diku.dk>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>

Julia Lawall   authored and   Dmitry Torokhov   commited 2008-01-21 01:11:07 -05:00
3b04a61107
Input: implement proper timer rounding for polled devices
Rounding doesn't matter for the first tick, but we want
succeeding ticks to be aligned on second boundary if poll
interval is large enough.

Also: cancel_rearming_delayed_workqueue is marked as obsolete
in workqueue.h so use cancel_delayed_work_sync.

Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
Acked-by: Arjan van de Ven <arjan@linux.intel.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>

Stephen Hemminger   authored and   Dmitry Torokhov   commited 2008-01-21 01:11:07 -05:00
374766bc2a
Input: iforce - don't access input_dev->private directly
input_{get|set}_drvdata() helpers should be used instead.

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>

Dmitry Torokhov   commited 2008-01-21 01:11:07 -05:00
4615e33f43
Input: i8042 - use synchronize_irq() instead of synchronize_sched()
RT guys advised me that in their kernels synchronize_sched() will not
work to ensure that all IRQ handlers run to their completion and that
synchronize_irq() should be used instead.

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>

Dmitry Torokhov   commited 2008-01-21 01:11:07 -05:00
a8399c512b
Input: atkbd - remove unneeded synchronize_sched()
atkbd_disable() provides all necessary synchronization with
atkbd_interrupt().

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>

Dmitry Torokhov   commited 2008-01-21 01:11:06 -05:00
f0b92b961b
Input: cobalt_btns - add support for loadable keymaps
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>

Dmitry Torokhov   commited 2008-01-21 01:11:06 -05:00
b037b08e59
Input: atlas_btns - add support for loadable keymaps
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>

Dmitry Torokhov   commited 2008-01-21 01:11:06 -05:00
72341eea6f
Input: keyspan_remote - add support for loadable keymaps
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>

Dmitry Torokhov   commited 2008-01-21 01:11:06 -05:00
1953ea2d8d
Input: Add proper locking when changing device's keymap
Take dev->event_lock to make sure that we don't race with input_event() and
also force key up event when removing a key from keymap table.

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>

Dmitry Torokhov   commited 2008-01-21 01:11:06 -05:00
f4f37c8ec7
Input: atkbd - properly handle special keys on Dell Latitudes
Most of Fn+F? special keys on (at least) the Dell Latitude laptops don't
generate a hardware key release event so the driver has to generate one.

Signed-off-by: Giel de Nijs <giel@caffeinetrip.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>

Giel de Nijs   authored and   Dmitry Torokhov   commited 2008-01-21 01:11:06 -05:00
554101e3e5
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: ALPS - fix sync loss on Acer Aspire 5720ZG
  Input: psmouse - fix input_dev leak in lifebook driver
  Input: psmouse - fix potential memory leak in psmouse_connect()
  Input: usbtouchscreen - fix buffer overflow, make more egalax work
  Input: mousedev - handle mice that use absolute coordinates

Linus Torvalds   commited 2008-01-17 15:50:19 -08:00
03bbe082cf
Input: ALPS - fix sync loss on Acer Aspire 5720ZG
The recently added support for Dell Volstro 1400 was causing protocol
synchronization errors on Acer Aspire 5720ZG, fix it.

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>

Dmitry Torokhov   commited 2008-01-17 12:01:58 -05:00
fb49161027
Input: psmouse - fix input_dev leak in lifebook driver
The lifebook driver may register a second input device, but it never
unregisters it.  This fixes that.

Signed-off-by: Andres Salomon <dilinger@debian.org>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>

Andres Salomon   authored and   Dmitry Torokhov   commited 2008-01-17 12:01:51 -05:00
653e91d01f
Input: psmouse - fix potential memory leak in psmouse_connect()
If we successfully call input_register_device() in psmouse_connect()
but sysfs_create_group() fails, we'll enter the error path without
ever having called input_unregister_device() potentially leaking
memory.

Signed-off-by: Andres Salomon <dilinger@debian.org>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>

Andres Salomon   authored and   Dmitry Torokhov   commited 2008-01-17 12:01:30 -05:00
746b31a9d4
Input: usbtouchscreen - fix buffer overflow, make more egalax work
Fix a buffer overflow in mutli-packet handling code.  The overflow can
only happen with eGalax devices and is even there very unlikely (only
non-report packet are affected any only when truncated after the first
byte).

Also changes the mutli-packet handling code not to drop unknown packets,
but rather just drop one byte.  This allows synchronizing on report packets
in the data stream.  It's required for some egalax devices to work at all.

Also remove the pointless 'flags' member of the device struct and set the
version number to 0.6, plus some minor cleanups.

[akpm@linux-foundation.org: coding-style fixes]

Signed-off-by: Daniel Ritz <daniel.ritz@gmx.ch>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>

Daniel Ritz   authored and   Dmitry Torokhov   commited 2008-01-17 12:01:18 -05:00
62aa366d9b