]> git.karo-electronics.de Git - mv-sheeva.git/blobdiff - drivers/hid/hid-microsoft.c
Merge branch 'master' into tk71
[mv-sheeva.git] / drivers / hid / hid-microsoft.c
index 359cc447c6c600d61387e5b8cc6679dc1d4d6b75..0f6fc54dc196f71130765c14c5b8d8fc2093d155 100644 (file)
  * Microsoft Wireless Desktop Receiver (Model 1028) has
  * 'Usage Min/Max' where it ought to have 'Physical Min/Max'
  */
-static void ms_report_fixup(struct hid_device *hdev, __u8 *rdesc,
-               unsigned int rsize)
+static __u8 *ms_report_fixup(struct hid_device *hdev, __u8 *rdesc,
+               unsigned int *rsize)
 {
        unsigned long quirks = (unsigned long)hid_get_drvdata(hdev);
 
-       if ((quirks & MS_RDESC) && rsize == 571 && rdesc[557] == 0x19 &&
+       if ((quirks & MS_RDESC) && *rsize == 571 && rdesc[557] == 0x19 &&
                        rdesc[559] == 0x29) {
-               dev_info(&hdev->dev, "fixing up Microsoft Wireless Receiver "
-                               "Model 1028 report descriptor\n");
+               hid_info(hdev, "fixing up Microsoft Wireless Receiver Model 1028 report descriptor\n");
                rdesc[557] = 0x35;
                rdesc[559] = 0x45;
        }
+       return rdesc;
 }
 
 #define ms_map_key_clear(c)    hid_map_usage_clear(hi, usage, bit, max, \
@@ -154,14 +154,14 @@ static int ms_probe(struct hid_device *hdev, const struct hid_device_id *id)
 
        ret = hid_parse(hdev);
        if (ret) {
-               dev_err(&hdev->dev, "parse failed\n");
+               hid_err(hdev, "parse failed\n");
                goto err_free;
        }
 
        ret = hid_hw_start(hdev, HID_CONNECT_DEFAULT | ((quirks & MS_HIDINPUT) ?
                                HID_CONNECT_HIDINPUT_FORCE : 0));
        if (ret) {
-               dev_err(&hdev->dev, "hw start failed\n");
+               hid_err(hdev, "hw start failed\n");
                goto err_free;
        }