mirror of
https://github.com/Keychron/qmk_firmware.git
synced 2024-11-26 18:47:24 +06:00
Reorder Raw HID interface to match what the USB spec expects (#6801)
This commit is contained in:
parent
89fe8d2d87
commit
4335b97a07
|
@ -331,6 +331,16 @@ const USB_Descriptor_Configuration_t PROGMEM
|
||||||
.Keyboard_INEndpoint = {.Header = {.Size = sizeof(USB_Descriptor_Endpoint_t), .Type = DTYPE_Endpoint}, .EndpointAddress = (ENDPOINT_DIR_IN | KEYBOARD_IN_EPNUM), .Attributes = (EP_TYPE_INTERRUPT | ENDPOINT_ATTR_NO_SYNC | ENDPOINT_USAGE_DATA), .EndpointSize = KEYBOARD_EPSIZE, .PollingIntervalMS = USB_POLLING_INTERVAL_MS},
|
.Keyboard_INEndpoint = {.Header = {.Size = sizeof(USB_Descriptor_Endpoint_t), .Type = DTYPE_Endpoint}, .EndpointAddress = (ENDPOINT_DIR_IN | KEYBOARD_IN_EPNUM), .Attributes = (EP_TYPE_INTERRUPT | ENDPOINT_ATTR_NO_SYNC | ENDPOINT_USAGE_DATA), .EndpointSize = KEYBOARD_EPSIZE, .PollingIntervalMS = USB_POLLING_INTERVAL_MS},
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifdef RAW_ENABLE
|
||||||
|
/*
|
||||||
|
* Raw HID
|
||||||
|
*/
|
||||||
|
.Raw_Interface = {.Header = {.Size = sizeof(USB_Descriptor_Interface_t), .Type = DTYPE_Interface}, .InterfaceNumber = RAW_INTERFACE, .AlternateSetting = 0x00, .TotalEndpoints = 2, .Class = HID_CSCP_HIDClass, .SubClass = HID_CSCP_NonBootSubclass, .Protocol = HID_CSCP_NonBootProtocol, .InterfaceStrIndex = NO_DESCRIPTOR},
|
||||||
|
.Raw_HID = {.Header = {.Size = sizeof(USB_HID_Descriptor_HID_t), .Type = HID_DTYPE_HID}, .HIDSpec = VERSION_BCD(1, 1, 1), .CountryCode = 0x00, .TotalReportDescriptors = 1, .HIDReportType = HID_DTYPE_Report, .HIDReportLength = sizeof(RawReport)},
|
||||||
|
.Raw_INEndpoint = {.Header = {.Size = sizeof(USB_Descriptor_Endpoint_t), .Type = DTYPE_Endpoint}, .EndpointAddress = (ENDPOINT_DIR_IN | RAW_IN_EPNUM), .Attributes = (EP_TYPE_INTERRUPT | ENDPOINT_ATTR_NO_SYNC | ENDPOINT_USAGE_DATA), .EndpointSize = RAW_EPSIZE, .PollingIntervalMS = 0x01},
|
||||||
|
.Raw_OUTEndpoint = {.Header = {.Size = sizeof(USB_Descriptor_Endpoint_t), .Type = DTYPE_Endpoint}, .EndpointAddress = (ENDPOINT_DIR_OUT | RAW_OUT_EPNUM), .Attributes = (EP_TYPE_INTERRUPT | ENDPOINT_ATTR_NO_SYNC | ENDPOINT_USAGE_DATA), .EndpointSize = RAW_EPSIZE, .PollingIntervalMS = 0x01},
|
||||||
|
#endif
|
||||||
|
|
||||||
#if defined(MOUSE_ENABLE) && !defined(MOUSE_SHARED_EP)
|
#if defined(MOUSE_ENABLE) && !defined(MOUSE_SHARED_EP)
|
||||||
/*
|
/*
|
||||||
* Mouse
|
* Mouse
|
||||||
|
@ -361,16 +371,6 @@ const USB_Descriptor_Configuration_t PROGMEM
|
||||||
.Shared_INEndpoint = {.Header = {.Size = sizeof(USB_Descriptor_Endpoint_t), .Type = DTYPE_Endpoint}, .EndpointAddress = (ENDPOINT_DIR_IN | SHARED_IN_EPNUM), .Attributes = (EP_TYPE_INTERRUPT | ENDPOINT_ATTR_NO_SYNC | ENDPOINT_USAGE_DATA), .EndpointSize = SHARED_EPSIZE, .PollingIntervalMS = USB_POLLING_INTERVAL_MS},
|
.Shared_INEndpoint = {.Header = {.Size = sizeof(USB_Descriptor_Endpoint_t), .Type = DTYPE_Endpoint}, .EndpointAddress = (ENDPOINT_DIR_IN | SHARED_IN_EPNUM), .Attributes = (EP_TYPE_INTERRUPT | ENDPOINT_ATTR_NO_SYNC | ENDPOINT_USAGE_DATA), .EndpointSize = SHARED_EPSIZE, .PollingIntervalMS = USB_POLLING_INTERVAL_MS},
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef RAW_ENABLE
|
|
||||||
/*
|
|
||||||
* Raw HID
|
|
||||||
*/
|
|
||||||
.Raw_Interface = {.Header = {.Size = sizeof(USB_Descriptor_Interface_t), .Type = DTYPE_Interface}, .InterfaceNumber = RAW_INTERFACE, .AlternateSetting = 0x00, .TotalEndpoints = 2, .Class = HID_CSCP_HIDClass, .SubClass = HID_CSCP_NonBootSubclass, .Protocol = HID_CSCP_NonBootProtocol, .InterfaceStrIndex = NO_DESCRIPTOR},
|
|
||||||
.Raw_HID = {.Header = {.Size = sizeof(USB_HID_Descriptor_HID_t), .Type = HID_DTYPE_HID}, .HIDSpec = VERSION_BCD(1, 1, 1), .CountryCode = 0x00, .TotalReportDescriptors = 1, .HIDReportType = HID_DTYPE_Report, .HIDReportLength = sizeof(RawReport)},
|
|
||||||
.Raw_INEndpoint = {.Header = {.Size = sizeof(USB_Descriptor_Endpoint_t), .Type = DTYPE_Endpoint}, .EndpointAddress = (ENDPOINT_DIR_IN | RAW_IN_EPNUM), .Attributes = (EP_TYPE_INTERRUPT | ENDPOINT_ATTR_NO_SYNC | ENDPOINT_USAGE_DATA), .EndpointSize = RAW_EPSIZE, .PollingIntervalMS = 0x01},
|
|
||||||
.Raw_OUTEndpoint = {.Header = {.Size = sizeof(USB_Descriptor_Endpoint_t), .Type = DTYPE_Endpoint}, .EndpointAddress = (ENDPOINT_DIR_OUT | RAW_OUT_EPNUM), .Attributes = (EP_TYPE_INTERRUPT | ENDPOINT_ATTR_NO_SYNC | ENDPOINT_USAGE_DATA), .EndpointSize = RAW_EPSIZE, .PollingIntervalMS = 0x01},
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#ifdef CONSOLE_ENABLE
|
#ifdef CONSOLE_ENABLE
|
||||||
/*
|
/*
|
||||||
* Console
|
* Console
|
||||||
|
|
|
@ -62,6 +62,14 @@ typedef struct {
|
||||||
USB_Descriptor_Endpoint_t Keyboard_INEndpoint;
|
USB_Descriptor_Endpoint_t Keyboard_INEndpoint;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifdef RAW_ENABLE
|
||||||
|
// Raw HID Interface
|
||||||
|
USB_Descriptor_Interface_t Raw_Interface;
|
||||||
|
USB_HID_Descriptor_HID_t Raw_HID;
|
||||||
|
USB_Descriptor_Endpoint_t Raw_INEndpoint;
|
||||||
|
USB_Descriptor_Endpoint_t Raw_OUTEndpoint;
|
||||||
|
#endif
|
||||||
|
|
||||||
#if defined(MOUSE_ENABLE) && !defined(MOUSE_SHARED_EP)
|
#if defined(MOUSE_ENABLE) && !defined(MOUSE_SHARED_EP)
|
||||||
// Mouse HID Interface
|
// Mouse HID Interface
|
||||||
USB_Descriptor_Interface_t Mouse_Interface;
|
USB_Descriptor_Interface_t Mouse_Interface;
|
||||||
|
@ -76,14 +84,6 @@ typedef struct {
|
||||||
USB_Descriptor_Endpoint_t Shared_INEndpoint;
|
USB_Descriptor_Endpoint_t Shared_INEndpoint;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef RAW_ENABLE
|
|
||||||
// Raw HID Interface
|
|
||||||
USB_Descriptor_Interface_t Raw_Interface;
|
|
||||||
USB_HID_Descriptor_HID_t Raw_HID;
|
|
||||||
USB_Descriptor_Endpoint_t Raw_INEndpoint;
|
|
||||||
USB_Descriptor_Endpoint_t Raw_OUTEndpoint;
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#ifdef CONSOLE_ENABLE
|
#ifdef CONSOLE_ENABLE
|
||||||
// Console HID Interface
|
// Console HID Interface
|
||||||
USB_Descriptor_Interface_t Console_Interface;
|
USB_Descriptor_Interface_t Console_Interface;
|
||||||
|
|
Loading…
Reference in New Issue
Block a user