Fixed bug #549.
git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@7546 35acf78f-673a-0410-8e92-d51de3d6d3f4
This commit is contained in:
parent
b7068f4c02
commit
e08cf5d36f
|
@ -358,8 +358,11 @@ void rtc_lld_set_time(RTCDriver *rtcp, const RTCDateTime *timespec) {
|
||||||
* @notapi
|
* @notapi
|
||||||
*/
|
*/
|
||||||
void rtc_lld_get_time(RTCDriver *rtcp, RTCDateTime *timespec) {
|
void rtc_lld_get_time(RTCDriver *rtcp, RTCDateTime *timespec) {
|
||||||
uint32_t dr, tr, ssr;
|
uint32_t dr, tr;
|
||||||
uint32_t subs;
|
uint32_t subs;
|
||||||
|
#if STM32_RTC_HAS_SUBSECONDS
|
||||||
|
uint32_t ssr;
|
||||||
|
#endif /* STM32_RTC_HAS_SUBSECONDS */
|
||||||
syssts_t sts;
|
syssts_t sts;
|
||||||
|
|
||||||
/* Entering a reentrant critical zone.*/
|
/* Entering a reentrant critical zone.*/
|
||||||
|
@ -369,7 +372,9 @@ void rtc_lld_get_time(RTCDriver *rtcp, RTCDateTime *timespec) {
|
||||||
DR must be read last.*/
|
DR must be read last.*/
|
||||||
while ((rtcp->rtc->ISR & RTC_ISR_RSF) == 0)
|
while ((rtcp->rtc->ISR & RTC_ISR_RSF) == 0)
|
||||||
;
|
;
|
||||||
|
#if STM32_RTC_HAS_SUBSECONDS
|
||||||
ssr = rtcp->rtc->SSR;
|
ssr = rtcp->rtc->SSR;
|
||||||
|
#endif /* STM32_RTC_HAS_SUBSECONDS */
|
||||||
tr = rtcp->rtc->TR;
|
tr = rtcp->rtc->TR;
|
||||||
dr = rtcp->rtc->DR;
|
dr = rtcp->rtc->DR;
|
||||||
rtcp->rtc->ISR &= ~RTC_ISR_RSF;
|
rtcp->rtc->ISR &= ~RTC_ISR_RSF;
|
||||||
|
|
Loading…
Reference in New Issue