diff --git a/core/usbd_core.c b/core/usbd_core.c index 8eda36f4..4742da6a 100644 --- a/core/usbd_core.c +++ b/core/usbd_core.c @@ -1360,6 +1360,11 @@ bool usb_device_is_configured(uint8_t busid) return g_usbd_core[busid].configuration; } +bool usb_device_is_suspend(uint8_t busid) +{ + return g_usbd_core[busid].is_suspend; +} + int usbd_send_remote_wakeup(uint8_t busid) { if (g_usbd_core[busid].remote_wakeup_support && g_usbd_core[busid].remote_wakeup_enabled && g_usbd_core[busid].is_suspend) { diff --git a/core/usbd_core.h b/core/usbd_core.h index f50432a7..71bdb29b 100644 --- a/core/usbd_core.h +++ b/core/usbd_core.h @@ -103,6 +103,7 @@ void usbd_add_endpoint(uint8_t busid, struct usbd_endpoint *ep); uint16_t usbd_get_ep_mps(uint8_t busid, uint8_t ep); uint8_t usbd_get_ep_mult(uint8_t busid, uint8_t ep); bool usb_device_is_configured(uint8_t busid); +bool usb_device_is_suspend(uint8_t busid); int usbd_send_remote_wakeup(uint8_t busid); int usbd_initialize(uint8_t busid, uintptr_t reg_base, void (*event_handler)(uint8_t busid, uint8_t event));