The communication will fail if the length of hid report is longer than HID_BUFFER_SIZE. The hid report of Feitian's HID device is 72 bytes, so our HID device cannot work properly. When we change the HID_BUFFER_SIZE to 128 bytes, our HID device works quite well. We checked Linux kernel code and hid standard, found the below information: HID standard says that one hid report may consist of several packages, but Linux kernel assumes that one report is just one package, and the report length is not longer than 64 bytes.
Still a problem in 2.6.13-rc6?
No response in 6 months, closing. If this is still a problem, please reopen with the requested information.