diff options
-rw-r--r-- | os/hal/ports/STM32/LLD/RTCv1/hal_rtc_lld.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/os/hal/ports/STM32/LLD/RTCv1/hal_rtc_lld.c b/os/hal/ports/STM32/LLD/RTCv1/hal_rtc_lld.c index 27689839d..9fe6417b2 100644 --- a/os/hal/ports/STM32/LLD/RTCv1/hal_rtc_lld.c +++ b/os/hal/ports/STM32/LLD/RTCv1/hal_rtc_lld.c @@ -399,6 +399,9 @@ void rtcSTM32GetSecMsec(RTCDriver *rtcp, uint32_t *tv_sec, uint32_t *tv_msec) { /* Required because access to CNT and DIV.*/
rtc_apb1_sync();
+ /* wait for previous write accesses to complete.*/
+ rtc_wait_write_completed();
+
/* Loops until two consecutive read returning the same value.*/
do {
*tv_sec = ((uint32_t)(rtcp->rtc->CNTH) << 16) + rtcp->rtc->CNTL;
|