summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorpatacongo <patacongo@42af7a65-404d-4744-a932-0658087f49c3>2012-08-03 15:15:28 +0000
committerpatacongo <patacongo@42af7a65-404d-4744-a932-0658087f49c3>2012-08-03 15:15:28 +0000
commit915abc09ad5aa6f4dabaae0876d3bead833edc3e (patch)
tree247e0f2de43212f3a490c5b9921e22b2bc270a62
parentba515284a4d20e7bbf3cac16331e798175adbf36 (diff)
downloadnuttx-915abc09ad5aa6f4dabaae0876d3bead833edc3e.tar.gz
nuttx-915abc09ad5aa6f4dabaae0876d3bead833edc3e.tar.bz2
nuttx-915abc09ad5aa6f4dabaae0876d3bead833edc3e.zip
STM32 PM update
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@5003 42af7a65-404d-4744-a932-0658087f49c3
-rw-r--r--nuttx/configs/stm3210e-eval/src/up_idle.c19
1 files changed, 16 insertions, 3 deletions
diff --git a/nuttx/configs/stm3210e-eval/src/up_idle.c b/nuttx/configs/stm3210e-eval/src/up_idle.c
index 13c88ee80..5b9f3c9fa 100644
--- a/nuttx/configs/stm3210e-eval/src/up_idle.c
+++ b/nuttx/configs/stm3210e-eval/src/up_idle.c
@@ -39,17 +39,19 @@
* Included Files
****************************************************************************/
-#include <arch/board/board.h>
#include <nuttx/config.h>
+#include <debug.h>
+
#include <nuttx/arch.h>
#include <nuttx/clock.h>
#include <nuttx/power/pm.h>
-
-#include <debug.h>
#include <nuttx/rtc.h>
+
#include <arch/irq.h>
+#include <arch/board/board.h>
+
#include "up_internal.h"
#include "stm32_pm.h"
#include "stm32_rcc.h"
@@ -288,7 +290,18 @@ static void up_idlepm(void)
if (oldstate == PM_STANDBY)
{
+ /* Re-enable clocking */
+
stm32_clockenable();
+
+ /* The system timer was disabled while in PM_STANDBY or
+ * PM_SLEEP modes. But the RTC has still be running: Reset
+ * the system time the current RTC time.
+ */
+
+#ifdef CONFIG_RTC
+ clock_synchronize();
+#endif
}
}
break;