diff options
Diffstat (limited to 'tmk_core/protocol/chibios/usb_main.c')
-rw-r--r-- | tmk_core/protocol/chibios/usb_main.c | 21 |
1 files changed, 15 insertions, 6 deletions
diff --git a/tmk_core/protocol/chibios/usb_main.c b/tmk_core/protocol/chibios/usb_main.c index d0c72c46c7..59edab9bd2 100644 --- a/tmk_core/protocol/chibios/usb_main.c +++ b/tmk_core/protocol/chibios/usb_main.c @@ -27,6 +27,7 @@ #include "sleep_led.h" #include "led.h" #endif +#include "wait.h" #ifdef NKRO_ENABLE #include "keycode_config.h" @@ -39,6 +40,14 @@ * --------------------------------------------------------- */ +#ifndef usb_lld_connect_bus + #define usb_lld_connect_bus(usbp) +#endif + +#ifndef usb_lld_disconnect_bus + #define usb_lld_disconnect_bus(usbp) +#endif + uint8_t keyboard_idle __attribute__((aligned(2))) = 0; uint8_t keyboard_protocol __attribute__((aligned(2))) = 1; uint16_t keyboard_led_stats __attribute__((aligned(2))) = 0; @@ -1017,7 +1026,7 @@ void init_usb_driver(USBDriver *usbp) { * after a reset. */ usbDisconnectBus(usbp); - chThdSleepMilliseconds(1500); + wait_ms(1500); usbStart(usbp, &usbcfg); usbConnectBus(usbp); @@ -1037,16 +1046,16 @@ void send_remote_wakeup(USBDriver *usbp) { #if defined(K20x) || defined(KL2x) #if KINETIS_USB_USE_USB0 USB0->CTL |= USBx_CTL_RESUME; - chThdSleepMilliseconds(15); + wait_ms(15); USB0->CTL &= ~USBx_CTL_RESUME; #endif /* KINETIS_USB_USE_USB0 */ -#elif defined(STM32F0XX) || defined(STM32F1XX) /* K20x || KL2x */ +#elif defined(STM32F0XX) || defined(STM32F1XX) || defined(STM32F3XX) /* End K20x || KL2x */ STM32_USB->CNTR |= CNTR_RESUME; - chThdSleepMilliseconds(15); + wait_ms(15); STM32_USB->CNTR &= ~CNTR_RESUME; -#else /* STM32F0XX || STM32F1XX */ +#else /* End STM32F0XX || STM32F1XX || STM32F3XX */ #warning Sending remote wakeup packet not implemented for your platform. -#endif /* K20x || KL2x */ +#endif } /* --------------------------------------------------------- |