File tree Expand file tree Collapse file tree 1 file changed +6
-1
lines changed Expand file tree Collapse file tree 1 file changed +6
-1
lines changed Original file line number Diff line number Diff line change @@ -33,7 +33,12 @@ void LowPowerTickerWrapper::irq_handler(ticker_irq_handler_type handler)
33
33
{
34
34
core_util_critical_section_enter ();
35
35
36
- if (_pending_fire_now || _match_check (_intf->read ()) || _suspended) {
36
+ // This code no longer filters out early interrupts. Instead it
37
+ // passes them through to the next layer and ignores further interrupts
38
+ // until the next call to set_interrrupt or fire_interrupt (when not suspended).
39
+ // This is to ensure that the device doesn't get stuck in sleep due to an
40
+ // early low power ticker interrupt that was ignored.
41
+ if (_pending_fire_now || _pending_match || _suspended) {
37
42
_timeout.detach ();
38
43
_pending_timeout = false ;
39
44
_pending_match = false ;
You can’t perform that action at this time.
0 commit comments