aboutsummaryrefslogtreecommitdiffstats
path: root/os/hal/ports/STM32
diff options
context:
space:
mode:
authorgdisirio <gdisirio@35acf78f-673a-0410-8e92-d51de3d6d3f4>2017-07-02 16:02:32 +0000
committergdisirio <gdisirio@35acf78f-673a-0410-8e92-d51de3d6d3f4>2017-07-02 16:02:32 +0000
commitefd34d53a19e5d1436774deffb3fd1733e670b53 (patch)
treee21bcc89b89720a36b8564087b330f74f66c3aa6 /os/hal/ports/STM32
parent81dd0533cc4df735e56d68c5e9f8dc404549aad5 (diff)
downloadChibiOS-efd34d53a19e5d1436774deffb3fd1733e670b53.tar.gz
ChibiOS-efd34d53a19e5d1436774deffb3fd1733e670b53.tar.bz2
ChibiOS-efd34d53a19e5d1436774deffb3fd1733e670b53.zip
Fixed bug #854.
git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@10298 35acf78f-673a-0410-8e92-d51de3d6d3f4
Diffstat (limited to 'os/hal/ports/STM32')
-rw-r--r--os/hal/ports/STM32/LLD/RTCv2/hal_rtc_lld.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/os/hal/ports/STM32/LLD/RTCv2/hal_rtc_lld.c b/os/hal/ports/STM32/LLD/RTCv2/hal_rtc_lld.c
index 09844f680..5c42dbc3b 100644
--- a/os/hal/ports/STM32/LLD/RTCv2/hal_rtc_lld.c
+++ b/os/hal/ports/STM32/LLD/RTCv2/hal_rtc_lld.c
@@ -345,9 +345,10 @@ void rtc_lld_set_time(RTCDriver *rtcp, const RTCDateTime *timespec) {
/* Writing the registers.*/
rtc_enter_init();
- rtcp->rtc->TR = tr;
- rtcp->rtc->DR = dr;
- rtcp->rtc->CR |= timespec->dstflag << RTC_CR_BKP_OFFSET;
+ rtcp->rtc->TR = tr;
+ rtcp->rtc->DR = dr;
+ rtcp->rtc->CR = (rtcp->rtc->CR & ~(1U << RTC_CR_BKP_OFFSET)) |
+ (timespec->dstflag << RTC_CR_BKP_OFFSET);
rtc_exit_init();
/* Leaving a reentrant critical zone.*/