hi, experts:
如果一个ARMv8 SOC没有实现EL2,那么就不存在stage2 address translation,对吗?
best wishes,
增加一个问题:
对于Cortex-A57来说:
它是44bit地址线:
对于4KB granule, 那么它的address translation level必须是4级?不能配置为3级吗?
translation level 是根据VA来确定的(44bit是指PA),AArch64有48bit VA,针对4KB granule, 必须是4级,如下:
hi, yongfeng:
感谢回复!
对于CA57 44bitVA,针对4KB granule,看来只能是4级了。
还有一个问题:
什么时候存在stage 2 translation?
如果一个SOC实现了EL2,那么才存在stage 2 translation吗?
Hi,
stage2 translation 是将IPA转成PA。
该过程需要寄存器 VTTBR0_EL2,
所以,如果没有EL2,就没有上述寄存器,也就不会有stage2的translation了。