PSCI, 是Power State Coordination Interface的缩写,是由ARM定义的电源管理接口规范,通常由Firmware来实现,而Linux系统可以通过smc/hvc指令来进入不同的Exception Level,进而调用对应的实现。在ARMv8架构,引入了Virtualization,Security等概念,CPU boot、shutdown、suspend/resume等操作需要根据架构的演进来满足安全要求。
代码目录部署:
Arch/arm64/kernel/psci.c
Drivers/firmware/psci/psci.c
这2个文件的关系以及其与ATFSR主流程的关系如下图所示,最终都会陷入到ATF中进行对应操作。CPU的热插拔,CPU启动、SR主流程都需要PSCI框架的支持。



