====== Wacom Intuos ======
Kernel >= 4.4 required and this patch:
--- a/drivers/hid/usbhid/hid-core.c
+++ b/drivers/hid/usbhid/hid-core.c
@@ -477,8 +477,6 @@ static void hid_ctrl(struct urb *urb)
struct usbhid_device *usbhid = hid->driver_data;
int unplug = 0, status = urb->status;
- spin_lock(&usbhid->lock);
-
switch (status) {
case 0: /* success */
if (usbhid->ctrl[usbhid->ctrltail].dir == USB_DIR_IN)
@@ -498,6 +496,8 @@ static void hid_ctrl(struct urb *urb)
hid_warn(urb->dev, "ctrl urb status %d received\n", status);
}
+ spin_lock(&usbhid->lock);
+
if (unplug) {
usbhid->ctrltail = usbhid->ctrlhead;
} else {
Pad buttons:
^ 3 \\ (Zoom out) | ^^^ 9 \\ (Redo) |
| ^ 1 \\ (Zoom in) | ^ 8 \\ (Undo) | |
xsetwacom set 'Wacom Intuos S 2 Pen stylus' MapToOutput HDMI1 ## Get with xrandr
xsetwacom set 'Wacom Intuos S 2 Pad pad' Button 3 'button 5' ## Upper left
xsetwacom set 'Wacom Intuos S 2 Pad pad' Button 1 'button 4' ## Lower left
xsetwacom set 'Wacom Intuos S 2 Pad pad' Button 8 'key ctrl z' ## Lower right
xsetwacom set 'Wacom Intuos S 2 Pad pad' Button 9 'key ctrl shift z' ## Upper right
# xsetwacom set 'Wacom Intuos S 2 Pen stylus' Button 1 '...' ## Pen touches sourface
# xsetwacom set 'Wacom Intuos S 2 Pen stylus' Button 2 '...' ## Lower pen key
# xsetwacom set 'Wacom Intuos S 2 Pen stylus' Button 3 '...' ## Upper pen key