CVSROOT: /cvs Module name: src Changes by: kette...@cvs.openbsd.org 2022/07/13 03:28:19
Modified files: sys/arch/arm64/arm64: cpu.c genassym.cf locore.S sys/arch/arm64/conf: GENERIC sys/arch/arm64/dev: agintc.c ampintc.c aplintc.c apm.c sys/arch/arm64/include: cpu.h intr.h Log message: Implement the fundamentals for suspend/resume on arm64. This uses PSCI to turn off the secondary CPUs and suspend the primary CPU using the CPU_OFF and SYSTEM_SUSPEND calls. A new "halt" IPI is added to turn off the ssecondary CPUs. This IPI is implemented for the ampintc(4) and agintc(4) interrupt controllers. Fulle suspend/resume support is only implemented for ampintc(4). This is enough to suspend and resume boards based on the Allwinner A64 SoC, provided the necessary wakeup interrupts have been set up (not part of this commit). ok patrick@