diff options
Diffstat (limited to 'demos/AVR')
-rw-r--r-- | demos/AVR/RT-ARDUINOLEONARDO/usbcfg.c | 8 | ||||
-rw-r--r-- | demos/AVR/RT-PRO_MICRO/usbcfg.c | 8 | ||||
-rw-r--r-- | demos/AVR/RT-TEENSY2-USB/usbcfg.c | 8 |
3 files changed, 24 insertions, 0 deletions
diff --git a/demos/AVR/RT-ARDUINOLEONARDO/usbcfg.c b/demos/AVR/RT-ARDUINOLEONARDO/usbcfg.c index b579c8144..09420baf7 100644 --- a/demos/AVR/RT-ARDUINOLEONARDO/usbcfg.c +++ b/demos/AVR/RT-ARDUINOLEONARDO/usbcfg.c @@ -302,7 +302,15 @@ static void usb_event(USBDriver *usbp, usbevent_t event) { chSysUnlockFromISR(); return; + case USB_EVENT_UNCONFIGURED: + return; case USB_EVENT_SUSPEND: + chSysLockFromISR(); + + /* Disconnection event on suspend.*/ + sduDisconnectI(&SDU1); + + chSysUnlockFromISR(); return; case USB_EVENT_WAKEUP: return; diff --git a/demos/AVR/RT-PRO_MICRO/usbcfg.c b/demos/AVR/RT-PRO_MICRO/usbcfg.c index 575639150..91b0207ab 100644 --- a/demos/AVR/RT-PRO_MICRO/usbcfg.c +++ b/demos/AVR/RT-PRO_MICRO/usbcfg.c @@ -301,7 +301,15 @@ static void usb_event(USBDriver *usbp, usbevent_t event) { chSysUnlockFromISR(); return; + case USB_EVENT_UNCONFIGURED: + return; case USB_EVENT_SUSPEND: + chSysLockFromISR(); + + /* Disconnection event on suspend.*/ + sduDisconnectI(&SDU1); + + chSysUnlockFromISR(); return; case USB_EVENT_WAKEUP: return; diff --git a/demos/AVR/RT-TEENSY2-USB/usbcfg.c b/demos/AVR/RT-TEENSY2-USB/usbcfg.c index a0c9ad258..5c20ee7d9 100644 --- a/demos/AVR/RT-TEENSY2-USB/usbcfg.c +++ b/demos/AVR/RT-TEENSY2-USB/usbcfg.c @@ -267,7 +267,15 @@ static void usb_event(USBDriver *usbp, usbevent_t event) { chSysUnlockFromISR(); return; + case USB_EVENT_UNCONFIGURED: + return; case USB_EVENT_SUSPEND: + chSysLockFromISR(); + + /* Disconnection event on suspend.*/ + sduDisconnectI(&SDU1); + + chSysUnlockFromISR(); return; case USB_EVENT_WAKEUP: return; |