hid: egalax: Correct for device resolution report error
[linux-2.6.git] / drivers / hid / hid-apple.c
index bba05d0..eaeca56 100644 (file)
@@ -246,17 +246,18 @@ static int apple_event(struct hid_device *hdev, struct hid_field *field,
 /*
  * MacBook JIS keyboard has wrong logical maximum
  */
-static void apple_report_fixup(struct hid_device *hdev, __u8 *rdesc,
-               unsigned int rsize)
+static __u8 *apple_report_fixup(struct hid_device *hdev, __u8 *rdesc,
+               unsigned int *rsize)
 {
        struct apple_sc *asc = hid_get_drvdata(hdev);
 
-       if ((asc->quirks & APPLE_RDESC_JIS) && rsize >= 60 &&
+       if ((asc->quirks & APPLE_RDESC_JIS) && *rsize >= 60 &&
                        rdesc[53] == 0x65 && rdesc[59] == 0x65) {
                dev_info(&hdev->dev, "fixing up MacBook JIS keyboard report "
                                "descriptor\n");
                rdesc[53] = rdesc[59] = 0xe7;
        }
+       return rdesc;
 }
 
 static void apple_setup_input(struct input_dev *input)