В Mon, 25 Jul 2022 17:58:26 -0700 Vicki Pfau <vi@xxxxxxxxxxx> пишет: > While the HID gadget implementation has been sufficient for devices that only > use INTERRUPT transfers, the USB HID standard includes provisions for Set- and > Get-Feature report CONTROL transfers that go over endpoint 0. These were > previously impossible with the existing implementation, and would either send > an empty reply, or stall out. > > As the feature is a standard part of USB HID, it stands to reason that devices > would use it, and that the HID gadget should support it. This patch adds > support for host-to-device Set-Feature reports through a new ioctl > interface to the hidg class dev nodes. > > Signed-off-by: Vicki Pfau <vi@xxxxxxxxxxx> Won't it break the logic of the existing software that works with /dev/hidgX? Will it work if I want my gadget to work the old way? It is important that the old behavior is the default without having to use the new ioctls. As for these ioctls, since this is an addition to the new API, they should be documented. I think it's also worth adding these ioctls to the userspace example: - Documentation/usb/gadget_hid.rst - Documentation/usb/gadget-testing.rst But it seems to me that extending the HID functionality to meet the specifications is definitely a good idea :)