Hi, I'm developing code to configure my AipTek USB tablet, and I've stumbled on two omissions in the hid code. Most importantly, the device->hiddev structure is not initialized, so it results in null pointer errors. Secondly, usb_get_report does return 0 for ok, and <0 for error, and not the length which hid.c assumes, i've fixed it in a patch. Still, I get some really weird results, when I do rinfo.report_id = 1; rinfo.report_type = HID_REPORT_TYPE_INPUT; ioctl(fd, HIDIOCGREPORT, &rinfo)) it sort of works, but creates these messages: Jun 16 15:50:48 dwarf kernel: hid-core.c: report (size 4) (numbered) Jun 16 15:50:48 dwarf kernel: hid-core.c: report (size 4) = 01 00 00 00 Jun 16 15:50:48 dwarf kernel: hid-core.c: report (size 3 =? 3) = 00 00 00 Jun 16 15:50:48 dwarf kernel: hid-core.c: report (size 6) (numbered) Jun 16 15:50:48 dwarf kernel: hid-core.c: report (size 6) = ae f0 11 c0 a0 08 Jun 16 15:50:48 dwarf kernel: hid-core.c: undefined report_id 174 received Jun 16 15:50:48 dwarf kernel: hid-core.c: report (size 5) = f0 11 c0 a0 08 Jun 16 15:50:48 dwarf kernel: hid-core.c: nonzero status in irq -2 That suggests that data is received after the call to usb_get_report ended. But, if I change the report_type to HID_REPORT_TYPE_FEATURE, I get the following error: Jun 16 15:52:05 dwarf kernel: hid-core.c: report (size 3) = 02 00 00 Jun 16 15:52:05 dwarf kernel: hid-core.c: report (size 2 =? 7) = 00 00 c0 00 00 00 00 Jun 16 15:52:05 dwarf kernel: hid-core.c: report 2 is too short, (2 < 7) Maybe, the call to hid_input_report is not correct in hid_read_report, and should be going to hid_feature_report (which doesn't exist at the moment)? Lastly, why does hid_read_report call usb_get_report, but hid_write_report uses all the urb magic (which I haven't quite figured out yet). Grtz EJ _______________________________________________ [EMAIL PROTECTED] To unsubscribe, use the last form field at: http://lists.sourceforge.net/lists/listinfo/linux-usb-devel