stm32f2: Avoid resetting rtc backup domain
Also ensure the pwr is enabled before trying to initialize. For the F2 series this is in a seperate clock control register.
This commit is contained in:
parent
f3237d7a2c
commit
e8d3e86591
@ -39,9 +39,8 @@ impl<'d, T: Instance> super::Rtc<'d, T> {
|
||||
let rtcsel = reg.rtcsel().to_bits();
|
||||
|
||||
if !reg.rtcen() || rtcsel != clock_config {
|
||||
#[cfg(not(any(rtc_v2l0, rtc_v2l1)))]
|
||||
#[cfg(not(any(rtc_v2l0, rtc_v2l1, rtc_v2f2)))]
|
||||
crate::pac::RCC.bdcr().modify(|w| w.set_bdrst(true));
|
||||
|
||||
#[cfg(not(any(rtc_v2l0, rtc_v2l1)))]
|
||||
let cr = crate::pac::RCC.bdcr();
|
||||
#[cfg(any(rtc_v2l0, rtc_v2l1))]
|
||||
@ -201,6 +200,11 @@ impl sealed::Instance for crate::peripherals::RTC {
|
||||
// read to allow the pwr clock to enable
|
||||
crate::pac::PWR.cr1().read();
|
||||
}
|
||||
#[cfg(any(rtc_v2f2))]
|
||||
{
|
||||
crate::pac::RCC.apb1enr().modify(|w| w.set_pwren(true));
|
||||
crate::pac::PWR.cr().read();
|
||||
}
|
||||
}
|
||||
|
||||
fn read_backup_register(rtc: &Rtc, register: usize) -> Option<u32> {
|
||||
|
Loading…
Reference in New Issue
Block a user