|
@@ -177,7 +177,7 @@ static const USBEndpointConfig shared_ep_config = {
|
|
|
};
|
|
|
#endif
|
|
|
|
|
|
-#if STM32_USB_USE_OTG1
|
|
|
+#ifdef USB_ENDPOINTS_ARE_REORDERABLE
|
|
|
typedef struct {
|
|
|
size_t queue_capacity_in;
|
|
|
size_t queue_capacity_out;
|
|
@@ -204,23 +204,22 @@ typedef struct {
|
|
|
} usb_driver_config_t;
|
|
|
#endif
|
|
|
|
|
|
-#if STM32_USB_USE_OTG1
|
|
|
+#ifdef USB_ENDPOINTS_ARE_REORDERABLE
|
|
|
/* Reusable initialization structure - see USBEndpointConfig comment at top of file */
|
|
|
# define QMK_USB_DRIVER_CONFIG(stream, notification, fixedsize) \
|
|
|
{ \
|
|
|
.queue_capacity_in = stream##_IN_CAPACITY, .queue_capacity_out = stream##_OUT_CAPACITY, \
|
|
|
.inout_ep_config = \
|
|
|
{ \
|
|
|
- stream##_IN_MODE, /* Interrupt EP */ \
|
|
|
- NULL, /* SETUP packet notification callback */ \
|
|
|
- qmkusbDataTransmitted, /* IN notification callback */ \
|
|
|
- qmkusbDataReceived, /* OUT notification callback */ \
|
|
|
- stream##_EPSIZE, /* IN maximum packet size */ \
|
|
|
- stream##_EPSIZE, /* OUT maximum packet size */ \
|
|
|
- NULL, /* IN Endpoint state */ \
|
|
|
- NULL, /* OUT endpoint state */ \
|
|
|
- 2, /* IN multiplier */ \
|
|
|
- NULL /* SETUP buffer (not a SETUP endpoint) */ \
|
|
|
+ stream##_IN_MODE, /* Interrupt EP */ \
|
|
|
+ NULL, /* SETUP packet notification callback */ \
|
|
|
+ qmkusbDataTransmitted, /* IN notification callback */ \
|
|
|
+ qmkusbDataReceived, /* OUT notification callback */ \
|
|
|
+ stream##_EPSIZE, /* IN maximum packet size */ \
|
|
|
+ stream##_EPSIZE, /* OUT maximum packet size */ \
|
|
|
+ NULL, /* IN Endpoint state */ \
|
|
|
+ NULL, /* OUT endpoint state */ \
|
|
|
+ usb_lld_endpoint_fields /* USB driver specific endpoint fields */ \
|
|
|
}, \
|
|
|
.int_ep_config = \
|
|
|
{ \
|
|
@@ -232,8 +231,7 @@ typedef struct {
|
|
|
0, /* OUT maximum packet size */ \
|
|
|
NULL, /* IN Endpoint state */ \
|
|
|
NULL, /* OUT endpoint state */ \
|
|
|
- 2, /* IN multiplier */ \
|
|
|
- NULL, /* SETUP buffer (not a SETUP endpoint) */ \
|
|
|
+ usb_lld_endpoint_fields /* USB driver specific endpoint fields */ \
|
|
|
}, \
|
|
|
.config = { \
|
|
|
.usbp = &USB_DRIVER, \
|
|
@@ -490,7 +488,7 @@ static void usb_event_cb(USBDriver *usbp, usbevent_t event) {
|
|
|
usbInitEndpointI(usbp, SHARED_IN_EPNUM, &shared_ep_config);
|
|
|
#endif
|
|
|
for (int i = 0; i < NUM_USB_DRIVERS; i++) {
|
|
|
-#if STM32_USB_USE_OTG1
|
|
|
+#ifdef USB_ENDPOINTS_ARE_REORDERABLE
|
|
|
usbInitEndpointI(usbp, drivers.array[i].config.bulk_in, &drivers.array[i].inout_ep_config);
|
|
|
#else
|
|
|
usbInitEndpointI(usbp, drivers.array[i].config.bulk_in, &drivers.array[i].in_ep_config);
|
|
@@ -717,7 +715,7 @@ static const USBConfig usbcfg = {
|
|
|
*/
|
|
|
void init_usb_driver(USBDriver *usbp) {
|
|
|
for (int i = 0; i < NUM_USB_DRIVERS; i++) {
|
|
|
-#if STM32_USB_USE_OTG1
|
|
|
+#ifdef USB_ENDPOINTS_ARE_REORDERABLE
|
|
|
QMKUSBDriver *driver = &drivers.array[i].driver;
|
|
|
drivers.array[i].inout_ep_config.in_state = &drivers.array[i].in_ep_state;
|
|
|
drivers.array[i].inout_ep_config.out_state = &drivers.array[i].out_ep_state;
|