diff --git a/include/usb/class/usb_hid.h b/include/usb/class/usb_hid.h index 777264e53e4..971693fba30 100644 --- a/include/usb/class/usb_hid.h +++ b/include/usb/class/usb_hid.h @@ -26,25 +26,6 @@ extern "C" { * @} */ -struct usb_hid_class_subdescriptor { - uint8_t bDescriptorType; - uint16_t wDescriptorLength; -} __packed; - -struct usb_hid_descriptor { - uint8_t bLength; - uint8_t bDescriptorType; - uint16_t bcdHID; - uint8_t bCountryCode; - uint8_t bNumDescriptors; - - /* - * Specification says at least one Class Descriptor needs to - * be present (Report Descriptor). - */ - struct usb_hid_class_subdescriptor subdesc[1]; -} __packed; - /** * @defgroup usb_hid_device_api HID class USB specific definitions * @ingroup usb_hid_class diff --git a/subsys/usb/class/hid/core.c b/subsys/usb/class/hid/core.c index 3a463e7a6e5..04836c0902d 100644 --- a/subsys/usb/class/hid/core.c +++ b/subsys/usb/class/hid/core.c @@ -23,6 +23,25 @@ LOG_MODULE_REGISTER(usb_hid); #define HID_INT_IN_EP_IDX 0 #define HID_INT_OUT_EP_IDX 1 +struct usb_hid_class_subdescriptor { + uint8_t bDescriptorType; + uint16_t wDescriptorLength; +} __packed; + +struct usb_hid_descriptor { + uint8_t bLength; + uint8_t bDescriptorType; + uint16_t bcdHID; + uint8_t bCountryCode; + uint8_t bNumDescriptors; + + /* + * Specification says at least one Class Descriptor needs to + * be present (Report Descriptor). + */ + struct usb_hid_class_subdescriptor subdesc[1]; +} __packed; + struct usb_hid_config { struct usb_if_descriptor if0; struct usb_hid_descriptor if0_hid;