This series does the following: patch 1/2 extends functionality for GET_REPORT. The current kernel implementation for GET_REPORT is that the kernel sends back a zero filled report (of length == report_length), when the Host request's a particular report from the device/gadget. This changeset extends functionality for GET_REPORT by sending a particular report based on report type and report number. patch 2/2 adds a test application to test the extended functionality. please review and share your thoughts. version 2 patches: https://lore.kernel.org/lkml/20220802201556.1510069-1-sunil@xxxxxxxxxxxxxxxxxxxx/ version 1 patches: https://lore.kernel.org/lkml/20220801123010.2984864-1-sunil@xxxxxxxxxxxxxxxxxxxx/ Suniel Mahesh (2): usb: gadget: f_hid: Extend functionality for GET_REPORT mode HID: ghid: add example program for GET_REPORT --- Changes for v3: - patch 2/2 got changed, the mapping of report type. Changes for v2: - patch 2/2 got changed. drivers/usb/gadget/function/f_hid.c | 184 ++++++++++++++++++++++++++- include/{ => uapi}/linux/usb/g_hid.h | 10 ++ samples/Kconfig | 10 ++ samples/Makefile | 1 + samples/ghid/Makefile | 4 + samples/ghid/test-hid.c | 134 +++++++++++++++++++ 6 files changed, 341 insertions(+), 2 deletions(-) rename include/{ => uapi}/linux/usb/g_hid.h (72%) create mode 100644 samples/ghid/Makefile create mode 100644 samples/ghid/test-hid.c -- 2.25.1