diff options
Diffstat (limited to 'embassy-stm32/src/rcc')
| -rw-r--r-- | embassy-stm32/src/rcc/bd.rs | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/embassy-stm32/src/rcc/bd.rs b/embassy-stm32/src/rcc/bd.rs index 4915d5e2a..5bae3edd9 100644 --- a/embassy-stm32/src/rcc/bd.rs +++ b/embassy-stm32/src/rcc/bd.rs | |||
| @@ -100,13 +100,14 @@ impl BackupDomain { | |||
| 100 | #[cfg(not(rtc_v3u5))] | 100 | #[cfg(not(rtc_v3u5))] |
| 101 | let csr = crate::pac::RCC.csr(); | 101 | let csr = crate::pac::RCC.csr(); |
| 102 | 102 | ||
| 103 | Self::modify(|_| { | 103 | // Disable backup domain write protection |
| 104 | #[cfg(not(any(rcc_wb, rcc_wba)))] | 104 | Self::modify(|_| {}); |
| 105 | csr.modify(|w| w.set_lsion(true)); | ||
| 106 | 105 | ||
| 107 | #[cfg(any(rcc_wb, rcc_wba))] | 106 | #[cfg(not(any(rcc_wb, rcc_wba)))] |
| 108 | csr.modify(|w| w.set_lsi1on(true)); | 107 | csr.modify(|w| w.set_lsion(true)); |
| 109 | }); | 108 | |
| 109 | #[cfg(any(rcc_wb, rcc_wba))] | ||
| 110 | csr.modify(|w| w.set_lsi1on(true)); | ||
| 110 | 111 | ||
| 111 | #[cfg(not(any(rcc_wb, rcc_wba)))] | 112 | #[cfg(not(any(rcc_wb, rcc_wba)))] |
| 112 | while !csr.read().lsirdy() {} | 113 | while !csr.read().lsirdy() {} |
