diff options
| author | Bernát Süli <[email protected]> | 2025-12-18 16:32:12 +0100 |
|---|---|---|
| committer | Bernát Süli <[email protected]> | 2025-12-18 16:32:12 +0100 |
| commit | de15ffcb4cf0db64d46bf49bd0e7bed41cdeacba (patch) | |
| tree | b06da6248d6799cd801df672fbdefa621fe4c70d /embassy-stm32 | |
| parent | f85337064c724f8fdb855e847345908e4c7384e9 (diff) | |
stm32: disable HSI if not used
Diffstat (limited to 'embassy-stm32')
| -rw-r--r-- | embassy-stm32/src/rcc/l.rs | 5 | ||||
| -rw-r--r-- | embassy-stm32/src/rcc/u5.rs | 5 | ||||
| -rw-r--r-- | embassy-stm32/src/rcc/wba.rs | 5 |
3 files changed, 15 insertions, 0 deletions
diff --git a/embassy-stm32/src/rcc/l.rs b/embassy-stm32/src/rcc/l.rs index 0d668103c..a1dfefd15 100644 --- a/embassy-stm32/src/rcc/l.rs +++ b/embassy-stm32/src/rcc/l.rs | |||
| @@ -385,6 +385,11 @@ pub(crate) unsafe fn init(config: Config) { | |||
| 385 | while !RCC.extcfgr().read().c2hpref() {} | 385 | while !RCC.extcfgr().read().c2hpref() {} |
| 386 | } | 386 | } |
| 387 | 387 | ||
| 388 | // Disable HSI if not used | ||
| 389 | if !config.hsi { | ||
| 390 | RCC.cr().modify(|w| w.set_hsion(false)); | ||
| 391 | } | ||
| 392 | |||
| 388 | config.mux.init(); | 393 | config.mux.init(); |
| 389 | 394 | ||
| 390 | set_clocks!( | 395 | set_clocks!( |
diff --git a/embassy-stm32/src/rcc/u5.rs b/embassy-stm32/src/rcc/u5.rs index 47cc29c6f..c8c3e4adb 100644 --- a/embassy-stm32/src/rcc/u5.rs +++ b/embassy-stm32/src/rcc/u5.rs | |||
| @@ -467,6 +467,11 @@ pub(crate) unsafe fn init(config: Config) { | |||
| 467 | let lse = config.ls.lse.map(|l| l.frequency); | 467 | let lse = config.ls.lse.map(|l| l.frequency); |
| 468 | let lsi = config.ls.lsi.then_some(LSI_FREQ); | 468 | let lsi = config.ls.lsi.then_some(LSI_FREQ); |
| 469 | 469 | ||
| 470 | // Disable HSI if not used | ||
| 471 | if !config.hsi { | ||
| 472 | RCC.cr().modify(|w| w.set_hsion(false)); | ||
| 473 | } | ||
| 474 | |||
| 470 | config.mux.init(); | 475 | config.mux.init(); |
| 471 | 476 | ||
| 472 | set_clocks!( | 477 | set_clocks!( |
diff --git a/embassy-stm32/src/rcc/wba.rs b/embassy-stm32/src/rcc/wba.rs index 2528996d5..4ab3067bc 100644 --- a/embassy-stm32/src/rcc/wba.rs +++ b/embassy-stm32/src/rcc/wba.rs | |||
| @@ -269,6 +269,11 @@ pub(crate) unsafe fn init(config: Config) { | |||
| 269 | 269 | ||
| 270 | let lsi = config.ls.lsi.then_some(LSI_FREQ); | 270 | let lsi = config.ls.lsi.then_some(LSI_FREQ); |
| 271 | 271 | ||
| 272 | // Disable HSI if not used | ||
| 273 | if !config.hsi { | ||
| 274 | RCC.cr().modify(|w| w.set_hsion(false)); | ||
| 275 | } | ||
| 276 | |||
| 272 | config.mux.init(); | 277 | config.mux.init(); |
| 273 | 278 | ||
| 274 | set_clocks!( | 279 | set_clocks!( |
