History log of /drivers/input/touchscreen/wacom_w8001.c
Revision Date Author Comments
bf9a9f8e5105b13cea954b254008f383ed0b4045 06-Jan-2014 Paul Gortmaker <paul.gortmaker@windriver.com> Input: delete non-required instances of include <linux/init.h>

None of these files are actually using any __init type directives
and hence don't need to include <linux/init.h>. Most are just a
left over from __devinit and __cpuinit removal, or simply due to
code getting copied from one driver to the next.

Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
b4adbbefc2099476a4f1020041c99f52cf3cd67d 11-Aug-2012 Henrik Rydberg <rydberg@euromail.se> Input: MT - Add flags to input_mt_init_slots()

Preparing to move more repeated code into the mt core, add a flags
argument to the input_mt_slots_init() function.

Reviewed-and-tested-by: Benjamin Tissoires <benjamin.tissoires@enac.fr>
Tested-by: Ping Cheng <pingc@wacom.com>
Acked-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
65ac9f7a23c934ee8c40dc20955e75db4924bfea 04-Apr-2012 Axel Lin <axel.lin@gmail.com> Input: serio - use module_serio_driver

This patch converts the drivers in drivers/input/* to use
module_serio_driver() macro which makes the code smaller and
a bit simpler.

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
3512069eefd3c3424b12f21a68fd473c3fd57220 08-Sep-2011 Jason Gerecke <killertofu@gmail.com> Input: wacom - add POINTER and DIRECT device properties

Adds INPUT_PROP_POINTER or INPUT_PROP_DIRECT as necessary to the
hardware supported by the Wacom driver. The DIRECT property is
assigned to devices with an embedded screen (i.e. touchscreens
and display tablets). The POINTER property is assigned to those
without embedded screens.

Signed-off-by: Jason Gerecke <killertofu@gmail.com>
Reviewed-by: Ping Cheng <pingc@wacom.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
66fd9385ee9c582ee88031ba5028748cb38c986d 24-Aug-2011 Dmitry Torokhov <dmitry.torokhov@gmail.com> Input: wacom_w8001 - simplify w8001_remove

Since touchscreen driver does not handle any events to be sent to the
device we can close serio port first and then unregister the input device.

Tested-by: Ping Cheng <pingc@wacom.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
e9496746cc0954c43720de0c88fef95a9d229baa 24-Aug-2011 Dmitry Torokhov <dmitry.torokhov@gmail.com> Input: wacom_w8001 - implement open and close

Implement open() and close() methods for the input device so that we
do not start the device unless there are users listening to the events.

Acked-by: Chris Bagwell <chris@cnpbagwell.com>
Tested-by: Ping Cheng <pingc@wacom.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
28a1bc1c0a5a15e72afae1050b227761227b6af2 01-Feb-2011 Ping Cheng <pinglinux@gmail.com> Input: wacom_w8001 - report resolution to userland

Serial devices send both pen and touch data through the same logical
port. Since we scaled touch to pen maximum, we use pen resolution
for touch as well here.

This is under the assumption that pen and touch share the same physical
surface. In the case when a small physical dimensional difference occurs
between pen and touch, we assume the tolerance for touch point precision
is higher than pen and the difference is within touch point tolerance.

A per-MT tool based resolution mechanism should be introduced if the
above assumption does not hold true for the pen and touch devices any
more.

Signed-off-by: Ping Cheng <pingc@wacom.com>
Reviewed-by: Henrik Rydberg <rydberg@euromail.se>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
5fca6cac9feed75efc0b2c454305a5f538d887f5 11-Jan-2011 Ping Cheng <pinglinux@gmail.com> Input: wacom_w8001 - add single-touch support

Emulate single-touch compatible events for the 2-finger panels
so that they can be used with single-touch legacy clients.

Assign device ids as Wacom USB vendor ID and product ID.
Name the device to reflect its specific features.

Scale touch coordinates to pen maximum if pen supported.

Signed-off-by: Ping Cheng <pingc@wacom.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
a6d38f889750ed6290728a19d9dad577b147c6d0 24-Dec-2010 Ping Cheng <pinglinux@gmail.com> Input: wacom_w8001 - support pen or touch only devices

Not all penabled devices support touch. The same holds true for touch
devices, so we should be setting up devices according to the results
returned when we query the hardware.

Signed-off-by: Ping Cheng <pingc@wacom.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
202b6ca149dc90d3d81772413e1e1c0b65e83012 24-Dec-2010 Ping Cheng <pinglinux@gmail.com> Input: wacom_w8001 - use __set_bit to set keybits

This makes code safer and easier to read.

Signed-off-by: Ping Cheng <pingc@wacom.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
c5f4dec1ceb6ab773bbbefbe64a7c990c7d6b17f 15-Dec-2010 Henrik Rydberg <rydberg@euromail.se> input: mt: Move tracking and pointer emulation to input-mt

The drivers using the type B protocol all report tracking information
the same way. The contact id is semantically equivalent to
ABS_MT_SLOT, and the handling of ABS_MT_TRACKING_ID only complicates
the driver. The situation can be improved upon by providing a common
pointer emulation code, thereby removing the need for the tracking id
in the driver. This patch moves all tracking event handling over to
the input core, simplifying both the existing drivers and the ones
currently in preparation.

Acked-by: Ping Cheng <pingc@wacom.com>
Acked-by: Jiri Kosina <jkosina@suse.cz>
Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
8cde81001626c4c60b26ef2eb5fc522885ed9fd0 27-Nov-2010 Henrik Rydberg <rydberg@euromail.se> input: mt: Collect slots initialization code

The MT slots devices all follow the same initialization pattern
of creating slots and hinting about buffer size. Let drivers call
an initialization function instead, and make sure it can be called
repeatedly without side effects.

Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
47c78e891323513e9909729b44033e2c6649e2b7 27-Nov-2010 Henrik Rydberg <rydberg@euromail.se> input: mt: Break out slots handling

In preparation for common code to handle a larger set of MT slots
devices, move the slots handling over to a separate file.

Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
5e8b9140f306ce30e7c56c568198720514efc872 29-Aug-2010 Peter Hutterer <peter.hutterer@who-t.net> Input: wacom_w8001 - add multitouch slot support

Some serial wacom devices support two-finger touch. Test for this during
init and parse the touch packets accordingly. Touch packets are
processed using Protocol B (MT Slots).

Note: there are several wacom versions that do touch but not two-finger
touch. These are not catered for here, touch events for these are simply
discarded.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Acked-by: Henrik Rydberg <rydberg@euromail.se>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
aaba933eeb8d7f804508bc74baa58656240107f8 29-Aug-2010 Peter Hutterer <peter.hutterer@who-t.net> Input: wacom_w8001 - support (and ignore) touch tablets

Tablets that support touch input may report different sized packages,
depending on the touch sensor in the tablet. For now, discard the
packages until we report them as touch input proper.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2072f8db625cbdaba839fe7bb1b607d06884e685 29-Aug-2010 Peter Hutterer <peter.hutterer@who-t.net> Input: wacom_w8001 - send BTN_TOOL_PEN/RUBBER and BTN_STYLUS events

The protocol used by the w8001 supports status fields for tip, side
switch and eraser as well as a RDY field for proximity.

The protocol has a double usage for the f2 bit in the packet. If set,
the data is either pen + side2 button or eraser. Assume eraser if the
device comes into proximity with the f2 bit set, otherwise trigger the
side2 button. If the device comes into proximity with the f2 bit and
that bit disappears afterwards, fake proximity out for the eraser and
proximity in for the pen.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
41c372dcad935fe7c27ec45211bad810515110bd 04-Sep-2009 Dmitry Torokhov <dmitry.torokhov@gmail.com> Input: wacom_w8001 - simplify querying logic

There is no need for locking when we send query and start commands
to the touchscreen since there is no concurrency.

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
3eb1aa43ef5cb871ba3fb2f08633675eca374d2e 19-Nov-2008 Jaya Kumar <jayakumar.lkml@gmail.com> Input: add support for Wacom W8001 penabled serial touchscreen

The Wacom W8001 sensor is a sensor device (uses electromagnetic
resonance) and it is interfaced via its serial microcontroller
to the host.

Signed-off-by: Jaya Kumar <jayakumar.lkml@gmail.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>