Skip to content

Commit 6ebd123

Browse files
committed
fix: restore Main regulator on LowPower Sleep exit
In case of LowPower Regulator used for sleep, restore Main regulator on exit Signed-off-by: Alexandre Bourdiol <[email protected]>
1 parent c2e8d13 commit 6ebd123

File tree

1 file changed

+10
-0
lines changed

1 file changed

+10
-0
lines changed

src/low_power.c

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -241,6 +241,16 @@ void LowPower_sleep(uint32_t regulator)
241241
/* Enter Sleep Mode , wake up is done once User push-button is pressed */
242242
HAL_PWR_EnterSLEEPMode(regulator, PWR_SLEEPENTRY_WFI);
243243

244+
#if defined(PWR_CSR_REGLPF) || defined(PWR_SR2_REGLPF)
245+
// In case of LowPower Regulator used for sleep, restore Main regulator on exit
246+
if (regulator == PWR_LOWPOWERREGULATOR_ON) {
247+
#if defined(__HAL_RCC_PWR_CLK_ENABLE)
248+
__HAL_RCC_PWR_CLK_ENABLE();
249+
#endif
250+
HAL_PWREx_DisableLowPowerRunMode();
251+
}
252+
#endif
253+
244254
/* Resume Tick interrupt if disabled prior to SLEEP mode entry */
245255
HAL_ResumeTick();
246256

0 commit comments

Comments
 (0)