aboutsummaryrefslogtreecommitdiffstats
path: root/os
diff options
context:
space:
mode:
authorgdisirio <gdisirio@35acf78f-673a-0410-8e92-d51de3d6d3f4>2013-11-02 10:51:32 +0000
committergdisirio <gdisirio@35acf78f-673a-0410-8e92-d51de3d6d3f4>2013-11-02 10:51:32 +0000
commit4c4a95172c8c5222955c97c4ab3eaaa6c4f7a4ff (patch)
treee4a86a7293cf14aeac1b219ac0486a747bd4f87c /os
parent6e9303ee9cf662dc26a9aa0b6f3a8e2d0af6695b (diff)
downloadChibiOS-4c4a95172c8c5222955c97c4ab3eaaa6c4f7a4ff.tar.gz
ChibiOS-4c4a95172c8c5222955c97c4ab3eaaa6c4f7a4ff.tar.bz2
ChibiOS-4c4a95172c8c5222955c97c4ab3eaaa6c4f7a4ff.zip
Fixed bug #436.
git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@6405 35acf78f-673a-0410-8e92-d51de3d6d3f4
Diffstat (limited to 'os')
-rw-r--r--os/hal/platforms/STM32/OTGv1/usb_lld.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/os/hal/platforms/STM32/OTGv1/usb_lld.c b/os/hal/platforms/STM32/OTGv1/usb_lld.c
index f6287a49c..4af75ccd2 100644
--- a/os/hal/platforms/STM32/OTGv1/usb_lld.c
+++ b/os/hal/platforms/STM32/OTGv1/usb_lld.c
@@ -128,11 +128,15 @@ static void usb_lld_wakeup_pump(USBDriver *usbp) {
static void otg_core_reset(USBDriver *usbp) {
stm32_otg_t *otgp = usbp->otg;
+ halPolledDelay(32);
+
/* Core reset and delay of at least 3 PHY cycles.*/
otgp->GRSTCTL = GRSTCTL_CSRST;
while ((otgp->GRSTCTL & GRSTCTL_CSRST) != 0)
;
+
halPolledDelay(12);
+
/* Wait AHB idle condition.*/
while ((otgp->GRSTCTL & GRSTCTL_AHBIDL) == 0)
;