Commit e4d3c51d authored by danh-arm's avatar danh-arm
Browse files

Merge pull request #460 from sandrine-bailleux/sb/init-vttbrel2-vmid

Initialize VTTBR_EL2 when bypassing EL2
parents 7e473eae 85d80e55
...@@ -330,6 +330,14 @@ void cm_prepare_el3_exit(uint32_t security_state) ...@@ -330,6 +330,14 @@ void cm_prepare_el3_exit(uint32_t security_state)
/* Set VPIDR, VMPIDR to match MIDR, MPIDR */ /* Set VPIDR, VMPIDR to match MIDR, MPIDR */
write_vpidr_el2(read_midr_el1()); write_vpidr_el2(read_midr_el1());
write_vmpidr_el2(read_mpidr_el1()); write_vmpidr_el2(read_mpidr_el1());
/*
* Reset VTTBR_EL2.
* Needed because cache maintenance operations depend on
* the VMID even when non-secure EL1&0 stage 2 address
* translation are disabled.
*/
write_vttbr_el2(0);
} }
} }
......
...@@ -270,6 +270,8 @@ DEFINE_SYSREG_RW_FUNCS(ttbr0_el3) ...@@ -270,6 +270,8 @@ DEFINE_SYSREG_RW_FUNCS(ttbr0_el3)
DEFINE_SYSREG_RW_FUNCS(ttbr1_el1) DEFINE_SYSREG_RW_FUNCS(ttbr1_el1)
DEFINE_SYSREG_RW_FUNCS(vttbr_el2)
DEFINE_SYSREG_RW_FUNCS(cptr_el2) DEFINE_SYSREG_RW_FUNCS(cptr_el2)
DEFINE_SYSREG_RW_FUNCS(cptr_el3) DEFINE_SYSREG_RW_FUNCS(cptr_el3)
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment