diff --git a/tmk_core/protocol/chibios/main.c b/tmk_core/protocol/chibios/main.c index 7138b553..47a7eb09 100644 --- a/tmk_core/protocol/chibios/main.c +++ b/tmk_core/protocol/chibios/main.c @@ -165,8 +165,8 @@ int main(void) { #endif suspend_power_down(); // on AVR this deep sleeps for 15ms /* Remote wakeup */ - if((USB_DRIVER.status & 2) && suspend_wakeup_condition()) { - send_remote_wakeup(&USB_DRIVER); + if(suspend_wakeup_condition()) { + usbWakeupHost(&USB_DRIVER); } } /* Woken up */ diff --git a/tmk_core/protocol/chibios/usb_main.c b/tmk_core/protocol/chibios/usb_main.c index 6173d3ad..caa2770b 100644 --- a/tmk_core/protocol/chibios/usb_main.c +++ b/tmk_core/protocol/chibios/usb_main.c @@ -1036,27 +1036,6 @@ void init_usb_driver(USBDriver *usbp) { #endif } -/* - * Send remote wakeup packet - * Note: should not be called from ISR - */ -void send_remote_wakeup(USBDriver *usbp) { - (void)usbp; -#if defined(K20x) || defined(KL2x) -#if KINETIS_USB_USE_USB0 - USB0->CTL |= USBx_CTL_RESUME; - wait_ms(15); - USB0->CTL &= ~USBx_CTL_RESUME; -#endif /* KINETIS_USB_USE_USB0 */ -#elif defined(STM32F0XX) || defined(STM32F1XX) || defined(STM32F3XX) /* End K20x || KL2x */ - STM32_USB->CNTR |= CNTR_RESUME; - wait_ms(15); - STM32_USB->CNTR &= ~CNTR_RESUME; -#else /* End STM32F0XX || STM32F1XX || STM32F3XX */ -#warning Sending remote wakeup packet not implemented for your platform. -#endif -} - /* --------------------------------------------------------- * Keyboard functions * --------------------------------------------------------- diff --git a/tmk_core/protocol/chibios/usb_main.h b/tmk_core/protocol/chibios/usb_main.h index 30d8fcae..b4f894f2 100644 --- a/tmk_core/protocol/chibios/usb_main.h +++ b/tmk_core/protocol/chibios/usb_main.h @@ -36,9 +36,6 @@ /* Initialize the USB driver and bus */ void init_usb_driver(USBDriver *usbp); -/* Send remote wakeup packet */ -void send_remote_wakeup(USBDriver *usbp); - /* --------------- * Keyboard header * ---------------