zephyr/soc/arm/microchip_mec/mec1501
Scott Worley a10ce7561f soc: mchp: Deep sleep exit sequence update
Zephyr kernel masks interrupts before calling the SoC PM
sleep entry point. On the Cortex-Mx family this prevents
wake from peripheral interrupts. The SoC PM layer requires
interrupts to wake the SoC and must prevent the CPU from
vectoring to an interrup until PM exit. The SoC does this
by setting ARM NVIC PRIMASK to 1 and BASEPRI to 0. On
return to the kernel SoC sets PRIMASK to 0 allowing ISR's
to fire. In addition the MEC HW only clears its peripheral
sleep enables if the CPU vectors to an ISR. On wake we
clear the MEC PCR sleep control register which clears all
the peripheral sleep enables so peripherals will be active
before exiting the SoC PM layer.

Signed-off-by: Scott Worley <scott.worley@microchip.com>
2021-05-27 12:52:51 -04:00
..
CMakeLists.txt
Kconfig.defconfig.mec1501hsz
Kconfig.defconfig.series
Kconfig.series
Kconfig.soc
device_power.c soc: mchp: Deep sleep exit sequence update 2021-05-27 12:52:51 -04:00
device_power.h
linker.ld
power.c soc: mchp: Deep sleep exit sequence update 2021-05-27 12:52:51 -04:00
soc.c
soc.h
timing.c