Merge pull request #2956 from hathach/fix-samd-wfi

fix racing issue for SAMD when executing WFI
This commit is contained in:
Scott Shawcroft 2020-05-26 14:54:24 -07:00 committed by GitHub
commit c917270da7
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -69,6 +69,7 @@
#include "samd/events.h"
#include "samd/external_interrupts.h"
#include "samd/dma.h"
#include "shared-bindings/microcontroller/__init__.h"
#include "shared-bindings/rtc/__init__.h"
#include "reset.h"
@ -496,7 +497,12 @@ void port_sleep_until_interrupt(void) {
(void) __get_FPSCR();
}
#endif
__WFI();
common_hal_mcu_disable_interrupts();
if (!tud_task_event_ready()) {
__DSB();
__WFI();
}
common_hal_mcu_enable_interrupts();
}
/**