aboutsummaryrefslogtreecommitdiffstats
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
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
-rw-r--r--os/hal/platforms/STM32/OTGv1/usb_lld.c4
-rw-r--r--readme.txt2
2 files changed, 6 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)
;
diff --git a/readme.txt b/readme.txt
index 4317f462f..a37766a09 100644
--- a/readme.txt
+++ b/readme.txt
@@ -89,6 +89,8 @@
*****************************************************************************
*** 2.7.0 ***
+- FIX: Fixed timing issue in the STM32 OTGv1 USB driver (bug #436)(backported
+ to 2.6.2).
- FIX: Fixed possible unalignment in GCC Cortex-M scatter files (bug #430)
(backported to 2.6.2 and 2.4.6).
- FIX: Fixed PAL driver documentation error (bug #427)(backported to 2.6.1