Commit graph android_kernel_sony_sdm845/drivers/input/mouse/appletouch.c
Message SHA1
USB: input: appletouch: fix up compiler warning
My last patch fixing up the dev_* messages caused a compiler warning
accidentally for an unused variable.  Fix this up, as it was my fault.

Cc: Alessandro Rubini <rubini@ipvvis.unipv.it>
Cc: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

Greg Kroah-Hartman   commited 2012-05-04 15:35:56 -07:00
3b923993da
USB: input: appletouch.c: fix up dev_* messages
Previously I had made the struct device point to the input device, but
after talking with Dmitry, he said that the USB device would make more
sense for this driver to point to.  So converted it to use that instead.

CC: Alessandro Rubini <rubini@ipvvis.unipv.it>
CC: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

Greg Kroah-Hartman   commited 2012-05-04 15:33:01 -07:00
2d744b0919
USB: appletouch.c: remove dbg() usage
dbg() was a very old USB-specific macro that should no longer
be used. This patch removes it from being used in the driver
and uses dev_dbg() instead.

CC: Alessandro Rubini <rubini@ipvvis.unipv.it>
CC: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

Greg Kroah-Hartman   commited 2012-05-01 21:33:04 -07:00
67946d1368
USB: input: appletouch.c: fix up dev_err() usage
We should always reference the input device for dev_err(), not the USB
device.  Fix up the places where I got this wrong.

Reported-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
CC: Alessandro Rubini <rubini@ipvvis.unipv.it>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

Greg Kroah-Hartman   commited 2012-05-01 20:56:47 -04:00
80f8594f63
USB: appletouch.c: remove err() usage
err() was a very old USB-specific macro that I thought had
gone away.  This patch removes it from being used in the
driver and uses dev_err() instead.

CC: Alessandro Rubini <rubini@ipvvis.unipv.it>
CC: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

Greg Kroah-Hartman   commited 2012-04-25 14:48:31 -07:00
9c113dc67a
USB: convert drivers/input/* to use module_usb_driver()
This converts the drivers in drivers/input/* to use the
module_usb_driver() macro which makes the code smaller and a bit
simpler.

Added bonus is that it removes some unneeded kernel log messages about
drivers loading and/or unloading.

Cc: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Cc: Ville Syrjala <syrjala@sci.fi>
Cc: Henk Vergonet <Henk.Vergonet@gmail.com>
Cc: Alessandro Rubini <rubini@ipvvis.unipv.it>
Cc: Henrik Rydberg <rydberg@euromail.se>
Cc: "Magnus Hörlin" <magnus@alefors.se>
Cc: Chris Moeller <kode54@gmail.c>
Cc: Christoph Fritz <chf.fritz@googlemail.com>
Cc: Lucas De Marchi <lucas.demarchi@profusion.mobi>
Cc: Jesper Juhl <jj@chaosbits.net>
Cc: Edwin van Vliet <edwin@cheatah.nl>
Cc: Ping Cheng <pingc@wacom.com>
Cc: Eduard Hasenleithner <eduard@hasenleithner.at>
Cc: Alexander Strakh <strakh@ispras.ru>
Cc: Glenn Sommer <gsommer@datanordisk.dk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

Greg Kroah-Hartman   commited 2011-11-18 09:48:31 -08:00
08642e7c52
Input: appletouch - remove extra KERN_DEBUG use from dprintk
Signed-off-by: Joe Perches <joe@perches.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>

Joe Perches   authored and   Dmitry Torokhov   commited 2010-10-31 07:16:00 -07:00
d745b5326d
Revert "Input: appletouch - fix integer overflow issue"
This reverts commit 04b4b88cca.

While the original problem only caused a slight disturbance on the
edge of the touchpad, the commit above to "fix" it completely breaks
operation on some other models such as mine.

We'll sort this out separately, revert the patch for now.

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>

Benjamin Herrenschmidt   commited 2010-08-09 13:48:08 +10:00
6e49c1a407
USB: rename usb_buffer_alloc() and usb_buffer_free() users
For more clearance what the functions actually do,

  usb_buffer_alloc() is renamed to usb_alloc_coherent()
  usb_buffer_free()  is renamed to usb_free_coherent()

They should only be used in code which really needs DMA coherency.

All call sites have been changed accordingly, except for staging
drivers.

Signed-off-by: Daniel Mack <daniel@caiaq.de>
Cc: Alan Stern <stern@rowland.harvard.edu>
Cc: Pedro Ribeiro <pedrib@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

Daniel Mack   authored and   Greg Kroah-Hartman   commited 2010-05-20 13:21:38 -07:00
997ea58eb9
Input: appletouch - fix integer overflow issue
When reading data from Geyser 2 touchpads used on post Oct 2005 Apple
PowerBooks the driver was casting X and Y coordinates values to
'signed char'. Testing on one of such PowerBooks I have noticed that
touchpad always generates positive values, but some of them are greater
that 127, and thus, when cast to 'signed char' being interpreted as
a negative.

Such bigger values have been observed infrequently, closer to the
edges of a touchpad, so the problem was not very visible.
Nevertheless, the patch would potentially improve touchpad
driver accuracy.

Signed-off-by: Vadim Zaliva <lord@crocodile.org>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>

Vadim Zaliva   authored and   Dmitry Torokhov   commited 2010-03-11 00:00:56 -08:00
04b4b88cca
Input: appletouch - improve finger detection
The appletouch driver is prone to reporting multiple fingers when only
one is pressing.  The appletouch driver queries an array of pressure
sensors and counts local maxima in pressure to determine the number of
fingers.  It just does this on the raw values, so a data stream like:

0 100 250 300 299 300 250 100 0

actually registers as 2 fingers.

This patch updates the logic to ignore small dips in pressure that are
less than the threshold.

Signed-off-by: Jeremy Huddleston <jeremyhu@freedesktop.org>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>

Jeremy Huddleston   authored and   Dmitry Torokhov   commited 2009-06-03 07:37:54 -07:00
05e882f890
Input: appletouch - fix DMA to/from stack buffer
CONFIG_DMA_API_DEBUG spotted an instance of appletouch using
an array on the stack as a DMA buffer for certain hardware.
Change it to use a kmalloc()ed buffer instead.

Signed-off-by: Bob Copeland <me@bobcopeland.com>
Reviewed-by: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>

Bob Copeland   authored and   Dmitry Torokhov   commited 2009-04-28 09:34:13 -07:00
0385c5ee3c
Input: appletouch - driver refactoring
The appletouch driver has grown up from supporting only a couple of
touchpads into supporting many touchpads, which can have different
number of sensors, different aspect ratios etc.

This patch cleans up the current driver code and makes it easy to
support the features of each different touchpad.

As a side effect, this patch also modifies the 'Y' multiplication factor
of the 'geyser3' and 'geyser4' touchpads (found on Core Duo and Core2
Duo MacBook and MacBook Pro laptops) in order to make the touchpad
output match the aspect ratio of the touchpad (Y factor changed from 43
to 64).

[dtor@mail.ru: make atp_info constant]
Signed-off-by: Stelian Pop <stelian@popies.net>
Acked-by: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>

Stelian Pop   authored and   Dmitry Torokhov   commited 2008-10-29 00:28:30 -04:00
09779678d1
Input: appletouch - handle geyser 3/4 status bits
Implement support for status bits on Geyser 3/4.

Signed-off-by: Sven Anders <anders@anduras.de>
Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>

Sven Anders   authored and   Dmitry Torokhov   commited 2008-08-08 16:44:28 -04:00
82a196f481
Input: appletouch - prepare for geyser 3/4 handling
Split complete function into separate functions for GEYSER1/2 and GEYSER 3/4.

Signed-off-by: Sven Anders <anders@anduras.de>
Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>

Sven Anders   authored and   Dmitry Torokhov   commited 2008-08-08 16:44:19 -04:00
d83d213d9f
Merge branch 'for-linus' into next
Conflicts:

	drivers/input/mouse/appletouch.c

Dmitry Torokhov   commited 2008-06-17 12:02:44 -04:00
15439dd37f
Input: appletouch - implement reset-resume logic
On some boxes the touchpad needs to be reinitialized after resume to make
it function again. This fixes bugzilla #10825.

Signed-off-by: Oliver Neukum <oneukum@suse.de>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>

Oliver Neukum   authored and   Dmitry Torokhov   commited 2008-06-17 11:56:55 -04:00
90d95ef617
Input: appletouch - simplify touchpad type detection
This patch simplifies type detection and removes unnecessary code.

Signed-off-by: Sven Anders <anders@anduras.de>
[jberg: don't typedef, checkpatch clean, remove useless comments, ...]
Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>

Sven Anders   authored and   Dmitry Torokhov   commited 2008-05-16 14:50:22 -04:00
e9542dff39
Input: appletouch - miscellaneous code cleanups
This patch does some code cleanups in appletouch:
 * useless comment removal
 * make almost checkpatch clean
 * make sparse clean

Signed-off-by: Sven Anders <anders@anduras.de>
[jberg: most of the changes including removing much of the original patch]
Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>

Johannes Berg   authored and   Dmitry Torokhov   commited 2008-05-16 14:50:16 -04:00
7dce869f12
Input: replace remaining __FUNCTION__ occurrences
__FUNCTION__ is gcc-specific, use __func__

Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>

Harvey Harrison   authored and   Dmitry Torokhov   commited 2008-05-16 14:45:58 -04:00
ea3e6c5926
Input: appletouch - add product IDs for the 4th generation MacBooks
Signed-off-by: Tobias Mueller <Tobias_Mueller@twam.info>
Acked-by: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>

Tobias Mueller   authored and   Dmitry Torokhov   commited 2008-04-02 10:14:29 -04:00
0035a1dc8f
Input: appletouch - idle reset logic broke older Fountains
Fountains do not support change mode request and therefore
should be excluded from idle reset attempts.

Also:
 - do not re-submit URB when we decide that touchpad needs to be
   reinicialized
 - do not repeat size detection when reinitializing the touchpad
 - Add missing KERN_* prefixes to messages

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Acked-by: Johannes Berg <johannes@sipsolutions.net>

Dmitry Torokhov   commited 2007-11-01 22:13:32 -04:00
2a3e480d4b
Input: appletouch - apply idle reset logic to all touchpads
Not only Geyser 3 but also Geyser 1 need to be reset after they become
idle to stop them from needlessly waking up the kernel. Do idle reset
on all touchpads, regardless of their version - if we see 10 empty
packets the touchpad needs to be reset; good touchpads should not send
empty packets anyway.

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

Anton Ekblad   authored and   Dmitry Torokhov   commited 2007-10-22 00:59:59 -04:00
46249ea60f
Input: appletouch - another fix for idle reset logic
Make sure we reset idlecount when we get a good (non-empty) packet.

Signed-off-by: Soeren Sonnenburg <kernel@nn7.de>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>

Soeren Sonnenburg   authored and   Dmitry Torokhov   commited 2007-10-13 00:31:15 -04:00
937ad5c1e3
Input: appletouch - fix idle reset logic
Idle count should only be incremented when touchpad button
is not pressed, otherwise reset may happen at a wrong time
and touchpad will never report button release event.

Signed-off-by: Thomas Rohwer <trohwer@tng.de>
Acked-by: Matthew Garrett <mjg59@srcf.ucam.org>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>

Thomas Rohwer   authored and   Dmitry Torokhov   commited 2007-09-25 00:06:25 -04:00
cb56073767
Input: appletouch - improve powersaving for Geyser3 devices
The appletouch geyser3 devices found in the Intel Macs (and possibly
some later PPC ones?) send a constant stream of packets after the first
touch. This results in the kernel waking up around once every couple of
milliseconds to process them, making it almost impossible to spend any
significant amount of time in C3 state on a dynamic HZ kernel. Sending
the mode initialization code makes the device shut up until it's touched
again. This patch does so after receiving 10 packets with no interesting
content.

Signed-off-by: Soeren Sonnenburg <kernel@nn7.de>
Signed-off-by: Matthew Garrett <mjg59@srcf.ucam.org>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>

Soeren Sonnenburg   authored and   Dmitry Torokhov   commited 2007-07-20 00:29:32 -04:00
5a6eb676d3
Input: move USB mice under drivers/input/mouse
This will allow concentrating all input devices in one place
in {menu|x|q}config.

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Acked-by: Greg Kroah-Hartman <gregkh@suse.de>

Dmitry Torokhov   commited 2007-05-08 01:41:29 -04:00
b5da20f8f7
Renamed from drivers/usb/input/appletouch.c (Browse further)