CatenaStm32L0Rtc::SleepForAlarm() calls __HAL_PWR_CLEAR_FLAG w/o clocking
terrillmoore opened this issue · comments
CatenaStm32L0Rtc::SleepForAlarm() calls __HAL_PWR_CLEAR_FLAG(PWR_FLAG_WU), but doesn't ensure that the clock to the PWR register is turned on. In fact, by default, it's off. This makes this call useless. There is a new API in future BSPs, but testing indicates that this API is not needed -- the system still sleeps.
E.g.
Catena-Arduino-Platform/src/lib/stm32/stm32l0/CatenaStm32L0Rtc.cpp
Lines 381 to 382 in d0a03aa
Solution: remove calls.