aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorgdisirio <gdisirio@35acf78f-673a-0410-8e92-d51de3d6d3f4>2012-08-20 07:52:45 +0000
committergdisirio <gdisirio@35acf78f-673a-0410-8e92-d51de3d6d3f4>2012-08-20 07:52:45 +0000
commitf701d09fb00038923a601ba7a8847feb216efa9b (patch)
treeb4f6cbaa2630b0b0bb7165aefd1b611bc60e66a1
parentecfdf939f1e54f6666bc3b5d5a2eb595b546cb64 (diff)
downloadChibiOS-f701d09fb00038923a601ba7a8847feb216efa9b.tar.gz
ChibiOS-f701d09fb00038923a601ba7a8847feb216efa9b.tar.bz2
ChibiOS-f701d09fb00038923a601ba7a8847feb216efa9b.zip
git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@4589 35acf78f-673a-0410-8e92-d51de3d6d3f4
-rw-r--r--os/hal/platforms/STM32/OTGv1/usb_lld.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/os/hal/platforms/STM32/OTGv1/usb_lld.c b/os/hal/platforms/STM32/OTGv1/usb_lld.c
index 9d899fd68..2653698fd 100644
--- a/os/hal/platforms/STM32/OTGv1/usb_lld.c
+++ b/os/hal/platforms/STM32/OTGv1/usb_lld.c
@@ -617,13 +617,13 @@ static void usb_lld_serve_interrupt(USBDriver *usbp) {
be triggered again.*/
otgp->GINTMSK &= ~GINTMSK_RXFLVLM;
/* Checks if the thread is waiting for an event.*/
+ chSysLockFromIsr();
if (usbp->thd_wait != NULL) {
/* The thread is made ready, it will be scheduled on ISR exit.*/
- chSysLockFromIsr();
chThdResumeI(usbp->thd_wait);
usbp->thd_wait = NULL;
- chSysUnlockFromIsr();
}
+ chSysUnlockFromIsr();
}
/* IN/OUT endpoints event handling.*/