diff options
author | Chris Bagwell <chris@cnpbagwell.com> | 2011-10-27 01:24:22 -0400 |
---|---|---|
committer | Dmitry Torokhov <dmitry.torokhov@gmail.com> | 2011-10-27 01:35:50 -0400 |
commit | 6e8ec5379c7ab9a57190e23af173aee74f88e54a (patch) | |
tree | e95d80d3b38290891815a3214ff5271212672c0d /drivers | |
parent | 3f48e7354358519e5b93f7f755ec270b3f8eafa0 (diff) |
Input: wacom - cleanup feature report for bamboos
Only the stylus interface on Bamboo's has a feature report that can
be used to set to wacom mode. The touch interface only has 1 report mode
and will return errors for those get/sets requests.
The get request was always erroring out because it was not marked as
an input request. Only down side of error was needlessly resending the
set request 5 times.
Signed-off-by: Chris Bagwell <chris@cnpbagwell.com>
Acked-by: Ping Cheng <pingc@wacom.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/input/tablet/wacom_sys.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/input/tablet/wacom_sys.c b/drivers/input/tablet/wacom_sys.c index a205055a4c51..4f354737a833 100644 --- a/drivers/input/tablet/wacom_sys.c +++ b/drivers/input/tablet/wacom_sys.c | |||
@@ -66,7 +66,8 @@ static int wacom_get_report(struct usb_interface *intf, u8 type, u8 id, | |||
66 | do { | 66 | do { |
67 | retval = usb_control_msg(dev, usb_rcvctrlpipe(dev, 0), | 67 | retval = usb_control_msg(dev, usb_rcvctrlpipe(dev, 0), |
68 | USB_REQ_GET_REPORT, | 68 | USB_REQ_GET_REPORT, |
69 | USB_TYPE_CLASS | USB_RECIP_INTERFACE, | 69 | USB_DIR_IN | USB_TYPE_CLASS | |
70 | USB_RECIP_INTERFACE, | ||
70 | (type << 8) + id, | 71 | (type << 8) + id, |
71 | intf->altsetting[0].desc.bInterfaceNumber, | 72 | intf->altsetting[0].desc.bInterfaceNumber, |
72 | buf, size, 100); | 73 | buf, size, 100); |
@@ -362,7 +363,8 @@ static int wacom_query_tablet_data(struct usb_interface *intf, struct wacom_feat | |||
362 | WAC_HID_FEATURE_REPORT, | 363 | WAC_HID_FEATURE_REPORT, |
363 | report_id, rep_data, 4, 1); | 364 | report_id, rep_data, 4, 1); |
364 | } while ((error < 0 || rep_data[1] != 4) && limit++ < WAC_MSG_RETRIES); | 365 | } while ((error < 0 || rep_data[1] != 4) && limit++ < WAC_MSG_RETRIES); |
365 | } else if (features->type != TABLETPC) { | 366 | } else if (features->type != TABLETPC && |
367 | features->device_type == BTN_TOOL_PEN) { | ||
366 | do { | 368 | do { |
367 | rep_data[0] = 2; | 369 | rep_data[0] = 2; |
368 | rep_data[1] = 2; | 370 | rep_data[1] = 2; |