- Disable MMU before reconfiguring the pagetables in the trampoline code.
Otherwise we might end up overwriting the PTEs we're currently using for some reason. Reviewed by: cognet
This commit is contained in:
parent
912ab38d08
commit
943262f7c0
@ -614,6 +614,17 @@ __start(void)
|
||||
(unsigned int)&func_end + 800 , 0);
|
||||
if (altdst > dst)
|
||||
dst = altdst;
|
||||
|
||||
/*
|
||||
* Disable MMU. Otherwise, setup_pagetables call below
|
||||
* might overwrite the L1 table we are currently using.
|
||||
*/
|
||||
cpu_idcache_wbinv_all();
|
||||
cpu_l2cache_wbinv_all();
|
||||
__asm __volatile("mrc p15, 0, %0, c1, c0, 0\n"
|
||||
"bic %0, %0, #1\n" /* MMU_DISABLE */
|
||||
"mcr p15, 0, %0, c1, c0, 0\n"
|
||||
:"=r" (pt_addr));
|
||||
} else
|
||||
#endif
|
||||
dst = 4 + load_kernel((unsigned int)&kernel_start,
|
||||
|
Loading…
x
Reference in New Issue
Block a user