Merge branches 'doc', 'multitouch', 'upstream' and 'upstream-fixes' into for-linus
This commit is contained in:
@@ -76,7 +76,7 @@ MODULE_PARM_DESC(report_undeciphered, "Report undeciphered multi-touch state fie
|
||||
* This is true when single_touch_id is equal to NO_TOUCHES. If multiple touches
|
||||
* are down and the touch providing for single touch emulation is lifted,
|
||||
* single_touch_id is equal to SINGLE_TOUCH_UP. While single touch emulation is
|
||||
* occuring, single_touch_id corresponds with the tracking id of the touch used.
|
||||
* occurring, single_touch_id corresponds with the tracking id of the touch used.
|
||||
*/
|
||||
#define NO_TOUCHES -1
|
||||
#define SINGLE_TOUCH_UP -2
|
||||
@@ -418,6 +418,8 @@ static void magicmouse_setup_input(struct input_dev *input, struct hid_device *h
|
||||
input_set_abs_params(input, ABS_MT_POSITION_Y, -2456,
|
||||
2565, 4, 0);
|
||||
}
|
||||
|
||||
input_set_events_per_packet(input, 60);
|
||||
}
|
||||
|
||||
if (report_undeciphered) {
|
||||
@@ -499,9 +501,17 @@ static int magicmouse_probe(struct hid_device *hdev,
|
||||
}
|
||||
report->size = 6;
|
||||
|
||||
/*
|
||||
* The device reponds with 'invalid report id' when feature
|
||||
* report switching it into multitouch mode is sent to it.
|
||||
*
|
||||
* This results in -EIO from the _raw low-level transport callback,
|
||||
* but there seems to be no other way of switching the mode.
|
||||
* Thus the super-ugly hacky success check below.
|
||||
*/
|
||||
ret = hdev->hid_output_raw_report(hdev, feature, sizeof(feature),
|
||||
HID_FEATURE_REPORT);
|
||||
if (ret != sizeof(feature)) {
|
||||
if (ret != -EIO) {
|
||||
hid_err(hdev, "unable to request touch data (%d)\n", ret);
|
||||
goto err_stop_hw;
|
||||
}
|
||||
|
Reference in New Issue
Block a user