Skip to the content.

aarch64 ID_AA64PFR0_EL1

PFR0 也是一个经典 prefix 了,就是用来描述一个 CPU 有那些寄存器的。

在 sys_reg_desc 中,这是定义了两个字段:

static const struct sys_reg_desc sys_reg_descs[] = {
	AA32_ID_SANITISED(ID_PFR0_EL1),

	/* CRm=4 */
	ID_FILTERED(ID_AA64PFR0_EL1, id_aa64pfr0_el1,
		    ~(ID_AA64PFR0_EL1_AMU |
		      ID_AA64PFR0_EL1_MPAM |
		      ID_AA64PFR0_EL1_SVE |
		      ID_AA64PFR0_EL1_RAS |
		      ID_AA64PFR0_EL1_AdvSIMD |
		      ID_AA64PFR0_EL1_FP)),

AArch64 和 AArch32 之间的切换只能通过异常入口/异常返回完成:

同一个 EL 内部不能随机切换,因为每个 EL 有自己的执行状态。

本站所有文章转发 CSDN 将按侵权追究法律责任,其它情况随意。