aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--embassy-stm32/src/rcc/c0.rs7
-rw-r--r--embassy-stm32/src/rcc/g0.rs7
2 files changed, 10 insertions, 4 deletions
diff --git a/embassy-stm32/src/rcc/c0.rs b/embassy-stm32/src/rcc/c0.rs
index 04cbe83ed..4ec8e7780 100644
--- a/embassy-stm32/src/rcc/c0.rs
+++ b/embassy-stm32/src/rcc/c0.rs
@@ -3,6 +3,7 @@ pub use crate::pac::rcc::vals::{
3 Hpre as AHBPrescaler, Hsidiv as HsiSysDiv, Hsikerdiv as HsiKerDiv, Ppre as APBPrescaler, Sw as Sysclk, 3 Hpre as AHBPrescaler, Hsidiv as HsiSysDiv, Hsikerdiv as HsiKerDiv, Ppre as APBPrescaler, Sw as Sysclk,
4}; 4};
5use crate::pac::{FLASH, RCC}; 5use crate::pac::{FLASH, RCC};
6use crate::rcc::LSI_FREQ;
6use crate::time::Hertz; 7use crate::time::Hertz;
7 8
8/// HSI speed 9/// HSI speed
@@ -121,9 +122,13 @@ pub(crate) unsafe fn init(config: Config) {
121 } 122 }
122 }; 123 };
123 124
125 let rtc = config.ls.init();
126
124 let sys = match config.sys { 127 let sys = match config.sys {
125 Sysclk::HSISYS => unwrap!(hsisys), 128 Sysclk::HSISYS => unwrap!(hsisys),
126 Sysclk::HSE => unwrap!(hse), 129 Sysclk::HSE => unwrap!(hse),
130 Sysclk::LSI => { assert!(config.ls.lsi); LSI_FREQ }
131 Sysclk::LSE => unwrap!(config.ls.lse).frequency,
127 _ => unreachable!(), 132 _ => unreachable!(),
128 }; 133 };
129 134
@@ -162,8 +167,6 @@ pub(crate) unsafe fn init(config: Config) {
162 RCC.cr().modify(|w| w.set_hsion(false)); 167 RCC.cr().modify(|w| w.set_hsion(false));
163 } 168 }
164 169
165 let rtc = config.ls.init();
166
167 config.mux.init(); 170 config.mux.init();
168 171
169 set_clocks!( 172 set_clocks!(
diff --git a/embassy-stm32/src/rcc/g0.rs b/embassy-stm32/src/rcc/g0.rs
index f55b18290..c84ac5166 100644
--- a/embassy-stm32/src/rcc/g0.rs
+++ b/embassy-stm32/src/rcc/g0.rs
@@ -5,6 +5,7 @@ pub use crate::pac::rcc::vals::{
5 Pllr as PllRDiv, Pllsrc as PllSource, Ppre as APBPrescaler, Sw as Sysclk, 5 Pllr as PllRDiv, Pllsrc as PllSource, Ppre as APBPrescaler, Sw as Sysclk,
6}; 6};
7use crate::pac::{FLASH, PWR, RCC}; 7use crate::pac::{FLASH, PWR, RCC};
8use crate::rcc::LSI_FREQ;
8use crate::time::Hertz; 9use crate::time::Hertz;
9 10
10/// HSI speed 11/// HSI speed
@@ -234,10 +235,14 @@ pub(crate) unsafe fn init(config: Config) {
234 }) 235 })
235 .unwrap_or_default(); 236 .unwrap_or_default();
236 237
238 let rtc = config.ls.init();
239
237 let sys = match config.sys { 240 let sys = match config.sys {
238 Sysclk::HSI => unwrap!(hsisys), 241 Sysclk::HSI => unwrap!(hsisys),
239 Sysclk::HSE => unwrap!(hse), 242 Sysclk::HSE => unwrap!(hse),
240 Sysclk::PLL1_R => unwrap!(pll.pll_r), 243 Sysclk::PLL1_R => unwrap!(pll.pll_r),
244 Sysclk::LSI => { assert!(config.ls.lsi); LSI_FREQ }
245 Sysclk::LSE => unwrap!(config.ls.lse).frequency,
241 _ => unreachable!(), 246 _ => unreachable!(),
242 }; 247 };
243 248
@@ -286,8 +291,6 @@ pub(crate) unsafe fn init(config: Config) {
286 PWR.cr1().modify(|w| w.set_lpr(true)); 291 PWR.cr1().modify(|w| w.set_lpr(true));
287 } 292 }
288 293
289 let rtc = config.ls.init();
290
291 config.mux.init(); 294 config.mux.init();
292 295
293 set_clocks!( 296 set_clocks!(