diff options
author | Fabio Utzig <utzig@utzig.org> | 2016-12-17 10:49:29 -0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2016-12-17 10:49:29 -0200 |
commit | 4b1ccfcd68718a0966bee7e0c48c44b80e62beb9 (patch) | |
tree | 8895040596dc87be54b34ddcc66866e030dd38c4 | |
parent | 453a05641e71282ae55cae5317bf534685c3090a (diff) | |
parent | dc478a551138b03c73997d091180cf15eb4afb57 (diff) | |
download | ChibiOS-Contrib-4b1ccfcd68718a0966bee7e0c48c44b80e62beb9.tar.gz ChibiOS-Contrib-4b1ccfcd68718a0966bee7e0c48c44b80e62beb9.tar.bz2 ChibiOS-Contrib-4b1ccfcd68718a0966bee7e0c48c44b80e62beb9.zip |
Merge pull request #109 from funnydog/kinetis-fixes
Kinetis fixes
-rw-r--r-- | testhal/KINETIS/FRDM-K20D50M/USB_SERIAL/usbcfg.c | 12 | ||||
-rw-r--r-- | testhal/KINETIS/FRDM-KL25Z/USB_HID/usbcfg.c | 2 | ||||
-rw-r--r-- | testhal/KINETIS/FRDM-KL25Z/USB_SERIAL/usbcfg.c | 12 | ||||
-rw-r--r-- | testhal/KINETIS/FRDM-KL26Z/USB_SERIAL/usbcfg.c | 12 | ||||
-rw-r--r-- | testhal/KINETIS/MCHCK/USB_SERIAL/usbcfg.c | 12 | ||||
-rw-r--r-- | testhal/KINETIS/TEENSY3_x/USB_SERIAL/usbcfg.c | 12 |
6 files changed, 52 insertions, 10 deletions
diff --git a/testhal/KINETIS/FRDM-K20D50M/USB_SERIAL/usbcfg.c b/testhal/KINETIS/FRDM-K20D50M/USB_SERIAL/usbcfg.c index 96bfdba..5c47795 100644 --- a/testhal/KINETIS/FRDM-K20D50M/USB_SERIAL/usbcfg.c +++ b/testhal/KINETIS/FRDM-K20D50M/USB_SERIAL/usbcfg.c @@ -262,8 +262,6 @@ static void usb_event(USBDriver *usbp, usbevent_t event) { extern SerialUSBDriver SDU1;
switch (event) {
- case USB_EVENT_RESET:
- return;
case USB_EVENT_ADDRESS:
return;
case USB_EVENT_CONFIGURED:
@@ -280,6 +278,10 @@ static void usb_event(USBDriver *usbp, usbevent_t event) { chSysUnlockFromISR();
return;
+ case USB_EVENT_RESET:
+ /* Falls into. */
+ case USB_EVENT_UNCONFIGURED:
+ /* Falls into. */
case USB_EVENT_SUSPEND:
chSysLockFromISR();
@@ -289,6 +291,12 @@ static void usb_event(USBDriver *usbp, usbevent_t event) { chSysUnlockFromISR();
return;
case USB_EVENT_WAKEUP:
+ chSysLockFromISR();
+
+ /* Disconnection event on suspend */
+ sduWakeupHookI(&SDU1);
+
+ chSysUnlockFromISR();
return;
case USB_EVENT_STALLED:
return;
diff --git a/testhal/KINETIS/FRDM-KL25Z/USB_HID/usbcfg.c b/testhal/KINETIS/FRDM-KL25Z/USB_HID/usbcfg.c index 30944b5..1f04a4c 100644 --- a/testhal/KINETIS/FRDM-KL25Z/USB_HID/usbcfg.c +++ b/testhal/KINETIS/FRDM-KL25Z/USB_HID/usbcfg.c @@ -315,6 +315,8 @@ static void usb_event(USBDriver *usbp, usbevent_t event) { osalSysUnlockFromISR();
return;
+ case USB_EVENT_UNCONFIGURED:
+ return;
case USB_EVENT_SUSPEND:
return;
case USB_EVENT_WAKEUP:
diff --git a/testhal/KINETIS/FRDM-KL25Z/USB_SERIAL/usbcfg.c b/testhal/KINETIS/FRDM-KL25Z/USB_SERIAL/usbcfg.c index fa5b4f4..0ec1c62 100644 --- a/testhal/KINETIS/FRDM-KL25Z/USB_SERIAL/usbcfg.c +++ b/testhal/KINETIS/FRDM-KL25Z/USB_SERIAL/usbcfg.c @@ -262,8 +262,6 @@ static void usb_event(USBDriver *usbp, usbevent_t event) { extern SerialUSBDriver SDU1;
switch (event) {
- case USB_EVENT_RESET:
- return;
case USB_EVENT_ADDRESS:
return;
case USB_EVENT_CONFIGURED:
@@ -280,6 +278,10 @@ static void usb_event(USBDriver *usbp, usbevent_t event) { chSysUnlockFromISR();
return;
+ case USB_EVENT_RESET:
+ /* Falls into. */
+ case USB_EVENT_UNCONFIGURED:
+ /* Falls into. */
case USB_EVENT_SUSPEND:
chSysLockFromISR();
@@ -289,6 +291,12 @@ static void usb_event(USBDriver *usbp, usbevent_t event) { chSysUnlockFromISR();
return;
case USB_EVENT_WAKEUP:
+ chSysLockFromISR();
+
+ /* Disconnection event on suspend */
+ sduWakeupHookI(&SDU1);
+
+ chSysUnlockFromISR();
return;
case USB_EVENT_STALLED:
return;
diff --git a/testhal/KINETIS/FRDM-KL26Z/USB_SERIAL/usbcfg.c b/testhal/KINETIS/FRDM-KL26Z/USB_SERIAL/usbcfg.c index fa5b4f4..0ec1c62 100644 --- a/testhal/KINETIS/FRDM-KL26Z/USB_SERIAL/usbcfg.c +++ b/testhal/KINETIS/FRDM-KL26Z/USB_SERIAL/usbcfg.c @@ -262,8 +262,6 @@ static void usb_event(USBDriver *usbp, usbevent_t event) { extern SerialUSBDriver SDU1;
switch (event) {
- case USB_EVENT_RESET:
- return;
case USB_EVENT_ADDRESS:
return;
case USB_EVENT_CONFIGURED:
@@ -280,6 +278,10 @@ static void usb_event(USBDriver *usbp, usbevent_t event) { chSysUnlockFromISR();
return;
+ case USB_EVENT_RESET:
+ /* Falls into. */
+ case USB_EVENT_UNCONFIGURED:
+ /* Falls into. */
case USB_EVENT_SUSPEND:
chSysLockFromISR();
@@ -289,6 +291,12 @@ static void usb_event(USBDriver *usbp, usbevent_t event) { chSysUnlockFromISR();
return;
case USB_EVENT_WAKEUP:
+ chSysLockFromISR();
+
+ /* Disconnection event on suspend */
+ sduWakeupHookI(&SDU1);
+
+ chSysUnlockFromISR();
return;
case USB_EVENT_STALLED:
return;
diff --git a/testhal/KINETIS/MCHCK/USB_SERIAL/usbcfg.c b/testhal/KINETIS/MCHCK/USB_SERIAL/usbcfg.c index fa5b4f4..0ec1c62 100644 --- a/testhal/KINETIS/MCHCK/USB_SERIAL/usbcfg.c +++ b/testhal/KINETIS/MCHCK/USB_SERIAL/usbcfg.c @@ -262,8 +262,6 @@ static void usb_event(USBDriver *usbp, usbevent_t event) { extern SerialUSBDriver SDU1;
switch (event) {
- case USB_EVENT_RESET:
- return;
case USB_EVENT_ADDRESS:
return;
case USB_EVENT_CONFIGURED:
@@ -280,6 +278,10 @@ static void usb_event(USBDriver *usbp, usbevent_t event) { chSysUnlockFromISR();
return;
+ case USB_EVENT_RESET:
+ /* Falls into. */
+ case USB_EVENT_UNCONFIGURED:
+ /* Falls into. */
case USB_EVENT_SUSPEND:
chSysLockFromISR();
@@ -289,6 +291,12 @@ static void usb_event(USBDriver *usbp, usbevent_t event) { chSysUnlockFromISR();
return;
case USB_EVENT_WAKEUP:
+ chSysLockFromISR();
+
+ /* Disconnection event on suspend */
+ sduWakeupHookI(&SDU1);
+
+ chSysUnlockFromISR();
return;
case USB_EVENT_STALLED:
return;
diff --git a/testhal/KINETIS/TEENSY3_x/USB_SERIAL/usbcfg.c b/testhal/KINETIS/TEENSY3_x/USB_SERIAL/usbcfg.c index fa5b4f4..0ec1c62 100644 --- a/testhal/KINETIS/TEENSY3_x/USB_SERIAL/usbcfg.c +++ b/testhal/KINETIS/TEENSY3_x/USB_SERIAL/usbcfg.c @@ -262,8 +262,6 @@ static void usb_event(USBDriver *usbp, usbevent_t event) { extern SerialUSBDriver SDU1;
switch (event) {
- case USB_EVENT_RESET:
- return;
case USB_EVENT_ADDRESS:
return;
case USB_EVENT_CONFIGURED:
@@ -280,6 +278,10 @@ static void usb_event(USBDriver *usbp, usbevent_t event) { chSysUnlockFromISR();
return;
+ case USB_EVENT_RESET:
+ /* Falls into. */
+ case USB_EVENT_UNCONFIGURED:
+ /* Falls into. */
case USB_EVENT_SUSPEND:
chSysLockFromISR();
@@ -289,6 +291,12 @@ static void usb_event(USBDriver *usbp, usbevent_t event) { chSysUnlockFromISR();
return;
case USB_EVENT_WAKEUP:
+ chSysLockFromISR();
+
+ /* Disconnection event on suspend */
+ sduWakeupHookI(&SDU1);
+
+ chSysUnlockFromISR();
return;
case USB_EVENT_STALLED:
return;
|