Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid

Pull HID fixes from Jiri Kosina:
 "Two last-minute regression fixes for Wacom driver from Jason Gerecke"

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid:
  HID: wacom: Override incorrect logical maximum contact identifier
  HID: wacom: Treat HID_DG_TOOLSERIALNUMBER as unsigned
This commit is contained in:
Linus Torvalds 2017-04-20 12:26:10 -07:00
commit 7f42589592

View file

@ -2006,7 +2006,7 @@ static void wacom_wac_pen_event(struct hid_device *hdev, struct hid_field *field
return; return;
case HID_DG_TOOLSERIALNUMBER: case HID_DG_TOOLSERIALNUMBER:
wacom_wac->serial[0] = (wacom_wac->serial[0] & ~0xFFFFFFFFULL); wacom_wac->serial[0] = (wacom_wac->serial[0] & ~0xFFFFFFFFULL);
wacom_wac->serial[0] |= value; wacom_wac->serial[0] |= (__u32)value;
return; return;
case WACOM_HID_WD_SENSE: case WACOM_HID_WD_SENSE:
wacom_wac->hid_data.sense_state = value; wacom_wac->hid_data.sense_state = value;
@ -2176,6 +2176,16 @@ static void wacom_wac_finger_usage_mapping(struct hid_device *hdev,
wacom_wac->hid_data.cc_index = field->index; wacom_wac->hid_data.cc_index = field->index;
wacom_wac->hid_data.cc_value_index = usage->usage_index; wacom_wac->hid_data.cc_value_index = usage->usage_index;
break; break;
case HID_DG_CONTACTID:
if ((field->logical_maximum - field->logical_minimum) < touch_max) {
/*
* The HID descriptor for G11 sensors leaves logical
* maximum set to '1' despite it being a multitouch
* device. Override to a sensible number.
*/
field->logical_maximum = 255;
}
break;
} }
} }