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

PullHID fixes from Jiri Kosina:

- fix i2c-hid and hidraw interaction, by Benjamin Tissoires

- a quirk to make a particular device (Formosa IR receiver) work
properly, by Nicholas Santos

* 'for-3.8/upstream-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid:
HID: i2c-hid: fix i2c_hid_output_raw_report
HID: usbhid: quirk for Formosa IR receiver
HID: remove x bit from sensor doc

Changed files
+16 -1
Documentation
drivers
hid
Documentation/hid/hid-sensor.txt
+3
drivers/hid/hid-ids.h
··· 306 306 #define USB_VENDOR_ID_EZKEY 0x0518 307 307 #define USB_DEVICE_ID_BTC_8193 0x0002 308 308 309 + #define USB_VENDOR_ID_FORMOSA 0x147a 310 + #define USB_DEVICE_ID_FORMOSA_IR_RECEIVER 0xe03e 311 + 309 312 #define USB_VENDOR_ID_FREESCALE 0x15A2 310 313 #define USB_DEVICE_ID_FREESCALE_MX28 0x004F 311 314
+12 -1
drivers/hid/i2c-hid/i2c-hid.c
··· 540 540 { 541 541 struct i2c_client *client = hid->driver_data; 542 542 int report_id = buf[0]; 543 + int ret; 543 544 544 545 if (report_type == HID_INPUT_REPORT) 545 546 return -EINVAL; 546 547 547 - return i2c_hid_set_report(client, 548 + if (report_id) { 549 + buf++; 550 + count--; 551 + } 552 + 553 + ret = i2c_hid_set_report(client, 548 554 report_type == HID_FEATURE_REPORT ? 0x03 : 0x02, 549 555 report_id, buf, count); 556 + 557 + if (report_id && ret >= 0) 558 + ret++; /* add report_id to the number of transfered bytes */ 559 + 560 + return ret; 550 561 } 551 562 552 563 static int i2c_hid_parse(struct hid_device *hid)
+1
drivers/hid/usbhid/hid-quirks.c
··· 70 70 { USB_VENDOR_ID_CH, USB_DEVICE_ID_CH_AXIS_295, HID_QUIRK_NOGET }, 71 71 { USB_VENDOR_ID_DMI, USB_DEVICE_ID_DMI_ENC, HID_QUIRK_NOGET }, 72 72 { USB_VENDOR_ID_ELO, USB_DEVICE_ID_ELO_TS2700, HID_QUIRK_NOGET }, 73 + { USB_VENDOR_ID_FORMOSA, USB_DEVICE_ID_FORMOSA_IR_RECEIVER, HID_QUIRK_NO_INIT_REPORTS }, 73 74 { USB_VENDOR_ID_FREESCALE, USB_DEVICE_ID_FREESCALE_MX28, HID_QUIRK_NOGET }, 74 75 { USB_VENDOR_ID_MGE, USB_DEVICE_ID_MGE_UPS, HID_QUIRK_NOGET }, 75 76 { USB_VENDOR_ID_NOVATEK, USB_DEVICE_ID_NOVATEK_MOUSE, HID_QUIRK_NO_INIT_REPORTS },