<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux-dev/drivers/input/tablet/wacom_wac.c, branch linus/master</title>
<subtitle>Linux kernel development work - see feature branches</subtitle>
<id>https://git.zx2c4.com/linux-dev/atom/drivers/input/tablet/wacom_wac.c?h=linus%2Fmaster</id>
<link rel='self' href='https://git.zx2c4.com/linux-dev/atom/drivers/input/tablet/wacom_wac.c?h=linus%2Fmaster'/>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/'/>
<updated>2014-07-26T01:55:38Z</updated>
<entry>
<title>Input: wacom - move the USB (now hid) Wacom driver in drivers/hid</title>
<updated>2014-07-26T01:55:38Z</updated>
<author>
<name>Benjamin Tissoires</name>
<email>benjamin.tissoires@redhat.com</email>
</author>
<published>2014-07-24T20:10:09Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=471d17148c8b4174ac5f5283a73316d12c4379bc'/>
<id>urn:sha1:471d17148c8b4174ac5f5283a73316d12c4379bc</id>
<content type='text'>
wacom.ko is now a full HID driver, we have to move it into the proper
subdirectory: drivers/hid.

Signed-off-by: Benjamin Tissoires &lt;benjamin.tissoires@redhat.com&gt;
Signed-off-by: Dmitry Torokhov &lt;dmitry.torokhov@gmail.com&gt;
</content>
</entry>
<entry>
<title>Input: wacom - keep wacom_ids ordered</title>
<updated>2014-07-26T01:53:56Z</updated>
<author>
<name>Benjamin Tissoires</name>
<email>benjamin.tissoires@redhat.com</email>
</author>
<published>2014-07-24T20:05:49Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=a3e6f6543d1969f1931b4f68fdd1a230b620ead8'/>
<id>urn:sha1:a3e6f6543d1969f1931b4f68fdd1a230b620ead8</id>
<content type='text'>
No Functional changes, just some reordering.

Signed-off-by: Benjamin Tissoires &lt;benjamin.tissoires@redhat.com&gt;
Reviewed-by: Jason Gerecke &lt;killertofu@gmail.com&gt;
Tested-by: Jason Gerecke &lt;killertofu@gmail.com&gt;
Signed-off-by: Dmitry Torokhov &lt;dmitry.torokhov@gmail.com&gt;
</content>
</entry>
<entry>
<title>Input: wacom - remove field pktlen declaration in the list of devices</title>
<updated>2014-07-26T01:53:56Z</updated>
<author>
<name>Benjamin Tissoires</name>
<email>benjamin.tissoires@redhat.com</email>
</author>
<published>2014-07-24T20:05:19Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=80befa93817b661193ba6423dfa9b69ffacd7e53'/>
<id>urn:sha1:80befa93817b661193ba6423dfa9b69ffacd7e53</id>
<content type='text'>
pktlen is now overwritten by the driver directly by reading the hid
report descriptor. There is no need to declare it statically.
We also move down the position of the field in the struct so that
we can keep the current declaration of Wacom devices.

Signed-off-by: Benjamin Tissoires &lt;benjamin.tissoires@redhat.com&gt;
Reviewed-by: Jason Gerecke &lt;killertofu@gmail.com&gt;
Tested-by: Jason Gerecke &lt;killertofu@gmail.com&gt;
Signed-off-by: Dmitry Torokhov &lt;dmitry.torokhov@gmail.com&gt;
</content>
</entry>
<entry>
<title>Input: wacom - switch from an USB driver to a HID driver</title>
<updated>2014-07-26T01:53:50Z</updated>
<author>
<name>Benjamin Tissoires</name>
<email>benjamin.tissoires@redhat.com</email>
</author>
<published>2014-07-24T19:52:23Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=29b4739134c73a2873adec93346f09bb76d6a794'/>
<id>urn:sha1:29b4739134c73a2873adec93346f09bb76d6a794</id>
<content type='text'>
All USB Wacom tablets are actually HID devices.
For historical reasons, they are handled as plain USB devices.
The current code makes more and more reference to the HID subsystem
like implementing its own HID report descriptor parser to handle new
devices.

From the user point of view, we can transparently switch from this state
to a driver handled in the HID subsystem and clean up a lot of USB specific
code in the wacom.ko driver.

The other benefit once the USB dependecies have been removed is that we can
use a tool like uhid to make regression tests and allow further cleanup or
new implementations without risking breaking current behaviors.

To match the current handling of devices in wacom_wac.c, we rely on the
hid_type set by usbhid. usbhid sets the hid_type to HID_TYPE_USBMOUSE when
it sees a USB boot mouse protocol declared and HID_TYPE_USBNONE when the
device is plain HID. There is thus a one to one matching between the list
of supported devices before and after the switch from USB to HID.

Signed-off-by: Benjamin Tissoires &lt;benjamin.tissoires@redhat.com&gt;
Reviewed-by: Jason Gerecke &lt;killertofu@gmail.com&gt;
Tested-by: Jason Gerecke &lt;killertofu@gmail.com&gt;
Signed-off-by: Dmitry Torokhov &lt;dmitry.torokhov@gmail.com&gt;
</content>
</entry>
<entry>
<title>Input: wacom - split out the pad device for Graphire G4 and MO</title>
<updated>2014-07-26T01:53:48Z</updated>
<author>
<name>Benjamin Tissoires</name>
<email>benjamin.tissoires@redhat.com</email>
</author>
<published>2014-07-24T19:51:03Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=3813810c7103f90eb2a0ec43fbd637265360c618'/>
<id>urn:sha1:3813810c7103f90eb2a0ec43fbd637265360c618</id>
<content type='text'>
MSC_SERIAL can be safely removed from pad devices. If it is not
here, xf86-input-wacom correctly generates ones for its internal
use.

Signed-off-by: Benjamin Tissoires &lt;benjamin.tissoires@redhat.com&gt;
Reviewed-by: Ping Cheng &lt;pingc@wacom.com&gt;
Reviewed-by: Jason Gerecke &lt;killertofu@gmail.com&gt;
Signed-off-by: Dmitry Torokhov &lt;dmitry.torokhov@gmail.com&gt;
</content>
</entry>
<entry>
<title>Input: wacom - split out the pad device for DTUS</title>
<updated>2014-07-26T01:53:48Z</updated>
<author>
<name>Benjamin Tissoires</name>
<email>benjamin.tissoires@redhat.com</email>
</author>
<published>2014-07-24T19:50:39Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=422b0314b9f29a2c61d426fdaf1864556809ac1c'/>
<id>urn:sha1:422b0314b9f29a2c61d426fdaf1864556809ac1c</id>
<content type='text'>
MSC_SERIAL can be safely removed from the pad device.

Signed-off-by: Benjamin Tissoires &lt;benjamin.tissoires@redhat.com&gt;
Reviewed-by: Ping Cheng &lt;pingc@wacom.com&gt;
Reviewed-by: Jason Gerecke &lt;killertofu@gmail.com&gt;
Signed-off-by: Dmitry Torokhov &lt;dmitry.torokhov@gmail.com&gt;
</content>
</entry>
<entry>
<title>Input: wacom - split out the pad device for Bamboos</title>
<updated>2014-07-26T01:53:47Z</updated>
<author>
<name>Benjamin Tissoires</name>
<email>benjamin.tissoires@redhat.com</email>
</author>
<published>2014-07-24T19:50:10Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=3116871f427386933a1fcd87e831ea664cbd0bf2'/>
<id>urn:sha1:3116871f427386933a1fcd87e831ea664cbd0bf2</id>
<content type='text'>
We rely on the return code of wacom_bpt*() to do the input_sync().
wacom_wac_irq() then properly sync the input devices.

Signed-off-by: Benjamin Tissoires &lt;benjamin.tissoires@redhat.com&gt;
Reviewed-by: Ping Cheng &lt;pingc@wacom.com&gt;
Reviewed-by: Jason Gerecke &lt;killertofu@gmail.com&gt;
Signed-off-by: Dmitry Torokhov &lt;dmitry.torokhov@gmail.com&gt;
</content>
</entry>
<entry>
<title>Input: wacom - split out the pad device for Intuos/Cintiq</title>
<updated>2014-07-26T01:53:47Z</updated>
<author>
<name>Benjamin Tissoires</name>
<email>benjamin.tissoires@redhat.com</email>
</author>
<published>2014-07-24T19:49:08Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=10059cdc0ad0be9dc8f7df2fbf2e21b406a94539'/>
<id>urn:sha1:10059cdc0ad0be9dc8f7df2fbf2e21b406a94539</id>
<content type='text'>
MSC_SERIAL can be safely dropped for pad input devices.

Signed-off-by: Benjamin Tissoires &lt;benjamin.tissoires@redhat.com&gt;
Reviewed-by: Ping Cheng &lt;pingc@wacom.com&gt;
Reviewed-by: Jason Gerecke &lt;killertofu@gmail.com&gt;
Signed-off-by: Dmitry Torokhov &lt;dmitry.torokhov@gmail.com&gt;
</content>
</entry>
<entry>
<title>Input: wacom - create a separate input device for pads</title>
<updated>2014-07-26T01:53:46Z</updated>
<author>
<name>Benjamin Tissoires</name>
<email>benjamin.tissoires@redhat.com</email>
</author>
<published>2014-07-24T19:48:28Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=d2d13f18aaa51af070c7b6f20606d5cfdb7e87c1'/>
<id>urn:sha1:d2d13f18aaa51af070c7b6f20606d5cfdb7e87c1</id>
<content type='text'>
Currently, the pad events are sent through the stylus input device
for the Intuos/Cintiqs, and through the touch input device for the
Bamboos.

To differentiate the buttons pressed on the pad from the ones pressed
on the stylus, the Intuos/Cintiq uses MISC_SERIAL and ABS_MISC. This
lead to a multiplexing of the events into one device, which are then
splitted out in xf86-input-wacom. Bamboos are not using MISC events
because the pad is attached to the touch interface, and only BTN_TOUCH
is used for the finger (and DOUBLE_TAP, etc...). However, the user space
driver still splits out the pad from the touch interface in the same
way it does for the pro line devices.

The other problem we can see with this fact is that some of the Intuos
and Cintiq have a wheel, and the effective range of the reported values
is [0..71]. Unfortunately, the airbrush stylus also sends wheel events
(there is a small wheel on it), but in the range [0..1023]. From the user
space point of view it is kind of difficult to understand that because
the wheel on the pad are quite common, while the airbrush tool is not.

A solution to fix all of these problems is to split out the pad device
from the stylus/touch. This decision makes more sense because the pad is
not linked to the absolute position of the finger or pen, and usually, the
events from the pad are filtered out by the compositor, which then convert
them into actions or keyboard shortcuts.

For backward compatibility with current xf86-input-wacom, the pad devices
still present the ABS_X, ABS_Y and ABS_MISC events, but they can be
completely ignored in the new implementation.

Signed-off-by: Benjamin Tissoires &lt;benjamin.tissoires@redhat.com&gt;
Reviewed-by: Ping Cheng &lt;pingc@wacom.com&gt;
Reviewed-by: Jason Gerecke &lt;killertofu@gmail.com&gt;
Signed-off-by: Dmitry Torokhov &lt;dmitry.torokhov@gmail.com&gt;
</content>
</entry>
<entry>
<title>Input: wacom - process outbound for newer Cintiqs</title>
<updated>2014-05-29T07:09:16Z</updated>
<author>
<name>Ping Cheng</name>
<email>pinglinux@gmail.com</email>
</author>
<published>2014-05-29T07:08:41Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/linux-dev/commit/?id=ac414da37f88ddbc04617d883539113f27c75f56'/>
<id>urn:sha1:ac414da37f88ddbc04617d883539113f27c75f56</id>
<content type='text'>
New Cintiq tablets have a 200 tablet counts outside of screen area.
Add x/y_min for ABS_X/Y to pass this information to userland.

Signed-off-by: Ping Cheng &lt;pingc@wacom.com&gt;
Reviewed-by: Jason Gerecke &lt;killertofu@gmail.com&gt;
Tested-by: Jason Gerecke &lt;killertofu@gmail.com&gt;
Signed-off-by: Dmitry Torokhov &lt;dmitry.torokhov@gmail.com&gt;
</content>
</entry>
</feed>
