Commit Graph

30 Commits

Author SHA1 Message Date
Ping Cheng
493630b203 Input: wacom - fix serial number handling on Cintiq 21UX2
Cintiq 21UX2 added 8 more bits for the tool serial number and more
buttons for the expresskey. We did not enable them properly in the
last patch.

Signed-off-by: Ping Cheng <pingc@wacom.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2010-06-22 11:32:24 -07:00
Ping Cheng
3a4b4aaa54 Input: wacom - add Cintiq 21UX2 and Intuos4 WL
Signed-off-by: Ping Cheng <pingc@wacom.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2010-06-04 00:43:17 -07:00
Ping Cheng
ab687b18aa Input: wacom - streamline 2-finger touch support
Clean up 2-finger touch support. This still needs to be converted to
proper multi-touch protocol.

Signed-off-by: Ping Cheng <pingc@wacom.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2010-04-13 23:24:56 -07:00
Dmitry Torokhov
252f77698f Input: wacom - use get_unaligned to access unaligned data
Also get rid of wacom_le16_to_cpu() and wacom_be16_to_cpu() helpers and
ise le16_to_cpup() and be16_to_cpup() directly.

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2010-04-13 23:24:42 -07:00
Dmitry Torokhov
95dd3b30ce Input: wacom - get rid of wacom_combo structure
Now that we moved input device from struct wacom to struct wacom_wac,
presence of wacom_combo just complicats things for no good reason.
Let's get rid of it and simply pass URB length to wacom_wac_irq().

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2010-04-13 23:24:35 -07:00
Dmitry Torokhov
8da23fc113 Input: wacom - get rid of input event wrappers
Input event interface is pretty stable so let's get rig of wrappers
for input_event() and fiends and call them directly. This will simplify
and speed up code a bit.

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2010-04-13 23:24:23 -07:00
Dmitry Torokhov
73a97f4f6e Input: wacom - fix some formatting issues
Fix identation of switch/case statements so they follow style used by the
rest of the kernel.

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2010-04-13 23:24:16 -07:00
Dmitry Torokhov
51269fe86c Input: wacom - do not allocate wacom_wac separately
There is no reason for allocating struct wacom_wac separately from
struct wacom since both have the same lifetime rules and are not
shared. Also make 'open' field a boolean.

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2010-04-13 23:24:11 -07:00
Ping Cheng
4492efffff Input: wacom - share pen info with touch of the same ID
Touch enbaled devices share the same product ID with pen. However,
we do not want to post touch events while pen is in prox. To do so,
we used to keep a local static variable to keep track of if pen is
in prox or not. This works fine for Tablet PC devices since there
is only one device attached. With the newer touch enabled regular
tablets, we can not make this assumption any more, i.e, one system
may have more than one identical tablet plugged in.

This patch adds an new entry, shared, into the struct wacom_wac so
touch data can access pen data to locally. This solution assumes
the two tools (touch and pen) of the same ID will be probed one
after the other without interruption in between by another Wacom
device of the same ID.
2010-04-13 23:24:06 -07:00
Ping Cheng
3b57ca0f80 Input: wacom - merge out and in prox events
Process out and in prox events for Graphire and Tablet PC devices
in the same loop to simplify the data parsing logic.

[re-applying after revert since other patches are based on this one]

Signed-off-by: Ping Cheng <pingc@wacom.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2010-04-13 23:22:31 -07:00
Dmitry Torokhov
afb567e3fd Revert "Input: wacom - merge out and in prox events"
This reverts commit 776943fd6f as it
causes issues with ISDv4 E3 touchscreens:

	https://bugzilla.kernel.org/show_bug.cgi?id=15670

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2010-04-13 23:08:58 -07:00
Ping Cheng
776943fd6f Input: wacom - merge out and in prox events
Process out and in prox events for Graphire and Tablet PC devices
in the same loop to simplify the data parsing logic.

Signed-off-by: Ping Cheng <pingc@wacom.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2010-03-05 00:36:10 -08:00
Ping Cheng
57e413d95b Input: wacom - replace WACOM_PKGLEN_PENABLED
Replacing WACOM_PKGLEN_PENABLED with WACOM_PKGLEN_GRAPHIRE since
they both represent the same value, 8. This value will be used
for both Tablet PC and Bamboo with touch devices.

Signed-off-by: Ping Cheng <pingc@wacom.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2010-03-01 23:53:26 -08:00
Dmitry Torokhov
e87a344d0e Input: wacom - constify product features data
Features are not supposed to be modified; devices use their own private copies,
so let's mark them const.

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2010-02-19 01:25:41 -08:00
Jason Childs
e33da8a548 Input: wacom - use per-device instance of wacom_features
Since we mangle data in wacom_features when dealing with certain devices let's
use a private (per-device) instance of wacom_features in wacom_wac. This way
same product ID can support more than one type of device, such as pen and touch,
and not interfere with each other.

Signed-off-by: Jason Childs <oblivian@users.sourceforge.net>
Signed-off-by: Ping Cheng <pingc@wacom.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2010-02-19 01:25:16 -08:00
Bastian Blank
b036f6fb3a Input: wacom - get features from driver info
Get the features information from the driver info of the usb device id
structure provided by the caller. The device ids and feature structs
are strong coupled using indices.

Signed-off-by: Bastian Blank <waldi@debian.org>
Tested-by: Jason Childs <oblivian@users.sourceforge.net>
Acked-by: Ping Cheng <pingc@wacom.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2010-02-10 23:31:37 -08:00
Ping Cheng
0f5e182dff Input: wacom - separate pen from express keys on Graphire
Since Graphire/Bamboo devices report pen and expresskeys in the same
data packet, we need to send a input_sync event to separate pen data
from expresskeys for X11 driver to process them properly.

Signed-off-by: Ping Cheng <pingc@wacom.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2009-12-15 00:36:20 -08:00
Ping Cheng
cad7470084 Input: wacom - add defines for data packet report IDs
Signed-off-by: Ping Cheng <pingc@wacom.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2009-12-15 00:36:15 -08:00
Ping Cheng
ec67bbedcf Input: wacom - add support for new LCD tablets
This adds support for the foolowing Wacom devices:

 - 0x9F - a single touch only LCD tablet;
 - 0xE2 - a two finger touch only LCD tablet;
 - 0xE3 -  a two finger touch, penabled LCD tablet.

Signed-off-by: Ping Cheng <pingc@wacom.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2009-12-15 00:36:08 -08:00
Ping Cheng
ee54500d7b Input: wacom - add defines for packet lengths of various devices
Signed-off-by: Ping Cheng <pingc@wacom.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2009-12-15 00:36:02 -08:00
Ping Cheng
c413ec4461 Input: wacom - add DTF720a support and fix rotation on Intuos3
This patch adds DTF720a support and fixes an Intuos3 rotation
pen out-proximity bug.

Signed-off-by: Ping Cheng <pingc@wacom.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2009-06-28 23:57:34 -07:00
Ping Cheng
a862952830 Input: wacom - clear Intuos4 wheel data when finger leaves proximity
Signed-off-by: Ping Cheng <pingc@wacom.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2009-06-03 07:37:36 -07:00
Ping Cheng
6f660f12d7 Input: wacom - add support for Intuos4 tablets
Signed-oof-by: Ping Cheng <pingc@wacom.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2009-05-08 18:33:43 -07:00
Roel Kluin
0de048aba1 Input: make some variables and functions static
Signed-off-by: Roel Kluin <roel.kluin@gmail.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2008-12-20 15:11:18 -05:00
Ping Cheng
545f4e99de Input: wacom - add support for new USB Tablet PCs
Signed-off-by: Ping Cheng <pingc@wacom.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2008-11-26 10:14:18 -05:00
Ping Cheng
e34b9d2f46 Input: wacom - cleanup handling of tablet IDs
Signed-off-by: Ping Cheng <pingc@wacom.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2008-05-16 14:49:32 -04:00
Ping Cheng
b345dc7da0 Input: wacom - add support for Cintiq 20WSX
Signed-off-by: Ping Cheng <pingc@wacom.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2008-04-24 23:34:05 -04:00
Ping Cheng
0e1763f530 Input: wacom - add support for Bamboo1, BambooFun, and Cintiq 12WX
Add support for new wacom tablets - Bamboo1, BambooFun, and Cintiq 12WX

Signed-off-by: Ping Cheng <pingc@wacom.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2008-03-14 11:54:38 -04:00
Ping Cheng
7ecfbfd3d0 Input: wacom - add support for the new Bamboo tablets
Signed-off-by: Ping Cheng <pingc@wacom.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2007-07-10 00:35:17 -04:00
Dmitry Torokhov
4104d13fe0 Input: move USB tablets under drivers/input/tablet
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>
2007-05-08 01:41:29 -04:00