summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGregory Nutt <gnutt@nuttx.org>2015-01-27 09:20:42 -0600
committerGregory Nutt <gnutt@nuttx.org>2015-01-27 09:20:42 -0600
commit145a0121b129b3d35d6a0e287754ecd957bb7566 (patch)
tree6ce5cb58c5829bd81f797c9c96f04a590d161b44
parentfaf1b92fa77f7fa1b86d4d663f65552a015b12a7 (diff)
downloadnuttx-145a0121b129b3d35d6a0e287754ecd957bb7566.tar.gz
nuttx-145a0121b129b3d35d6a0e287754ecd957bb7566.tar.bz2
nuttx-145a0121b129b3d35d6a0e287754ecd957bb7566.zip
Recent changes to stm32_rtcc.c do not compile with STM32L15XX configurations. From Jussi Kivilinna.
-rw-r--r--nuttx/arch/arm/src/stm32/Kconfig2
-rw-r--r--nuttx/arch/arm/src/stm32/stm32_rtcc.c17
2 files changed, 19 insertions, 0 deletions
diff --git a/nuttx/arch/arm/src/stm32/Kconfig b/nuttx/arch/arm/src/stm32/Kconfig
index c7c46b040..5dd9f299d 100644
--- a/nuttx/arch/arm/src/stm32/Kconfig
+++ b/nuttx/arch/arm/src/stm32/Kconfig
@@ -3251,11 +3251,13 @@ config RTC_LSECLOCK
config RTC_LSICLOCK
bool "LSI clock"
+ depends on !STM32_STM32L15XX
---help---
Drive the RTC with the LSI clock
config RTC_HSECLOCK
bool "HSE clock"
+ depends on !STM32_STM32L15XX
---help---
Drive the RTC with the HSE clock, divided down to 1MHz.
diff --git a/nuttx/arch/arm/src/stm32/stm32_rtcc.c b/nuttx/arch/arm/src/stm32/stm32_rtcc.c
index 817111d58..ea49fa2e6 100644
--- a/nuttx/arch/arm/src/stm32/stm32_rtcc.c
+++ b/nuttx/arch/arm/src/stm32/stm32_rtcc.c
@@ -51,6 +51,8 @@
#include "up_arch.h"
+#include "stm32_rcc.h"
+#include "stm32_pwr.h"
#include "stm32_rtc.h"
#ifdef CONFIG_RTC
@@ -77,6 +79,14 @@
# undef CONFIG_DEBUG_RTC
#endif
+#ifdef CONFIG_STM32_STM32L15XX
+# if defined(CONFIG_RTC_HSECLOCK)
+# error "RTC with HSE clock not yet implemented for STM32L15XXX"
+# elif defined(CONFIG_RTC_LSICLOCK)
+# error "RTC with LSI clock not yet implemented for STM32L15XXX"
+# endif
+#endif
+
/* Constants ************************************************************************/
#define SYNCHRO_TIMEOUT (0x00020000)
@@ -435,6 +445,7 @@ static int rtc_setup(void)
uint32_t regval;
int ret;
+#ifndef CONFIG_STM32_STM32L15XX
/* We might be changing RTCSEL - to ensure such changes work, we must reset the
* backup domain
*/
@@ -475,6 +486,12 @@ static int rtc_setup(void)
stm32_rcc_enablelse();
#endif
+#else
+ /* Enable the LSE clock */
+
+ stm32_rcc_enablelse();
+
+#endif /* CONFIG_STM32_STM32L15XX */
/* Wait for the RTC Time and Date registers to be synchronized with RTC APB
* clock.