diff options
Diffstat (limited to 'drivers/hid')
-rw-r--r-- | drivers/hid/hid-magicmouse.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/hid/hid-magicmouse.c b/drivers/hid/hid-magicmouse.c index ee7878785955..319b0e57ee41 100644 --- a/drivers/hid/hid-magicmouse.c +++ b/drivers/hid/hid-magicmouse.c | |||
@@ -285,8 +285,8 @@ static int magicmouse_raw_event(struct hid_device *hdev, | |||
285 | * to have the current touch information before | 285 | * to have the current touch information before |
286 | * generating a click event. | 286 | * generating a click event. |
287 | */ | 287 | */ |
288 | x = (signed char)data[1]; | 288 | x = (int)(((data[3] & 0x0c) << 28) | (data[1] << 22)) >> 22; |
289 | y = (signed char)data[2]; | 289 | y = (int)(((data[3] & 0x30) << 26) | (data[2] << 22)) >> 22; |
290 | clicks = data[3]; | 290 | clicks = data[3]; |
291 | break; | 291 | break; |
292 | case 0x20: /* Theoretically battery status (0-100), but I have | 292 | case 0x20: /* Theoretically battery status (0-100), but I have |