diff options
author | Ian Campbell <ian.campbell@citrix.com> | 2013-03-06 08:54:29 +0000 |
---|---|---|
committer | Ian Campbell <ian.campbell@citrix.com> | 2013-04-11 09:27:40 +0100 |
commit | b806c2736f6e6b03aadb8671f66f3ddc280f63cb (patch) | |
tree | e798b73b54886141273c43315b29c63c125f0df2 /xen/arch/arm/setup.c | |
parent | c0b352d1980f2dc9c8ab05851d1f4517c8d5a258 (diff) | |
download | xen-b806c2736f6e6b03aadb8671f66f3ddc280f63cb.tar.gz xen-b806c2736f6e6b03aadb8671f66f3ddc280f63cb.tar.bz2 xen-b806c2736f6e6b03aadb8671f66f3ddc280f63cb.zip |
arm: consolidate setup of hypervisor traps and second stage paging
In particular be sure to initisalise HCR_EL2 on secondary processors.
Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Acked-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
[ ijc -- adjusted due to unapplied "trap guest WFI" by s/HCR_TWI// ]
Diffstat (limited to 'xen/arch/arm/setup.c')
-rw-r--r-- | xen/arch/arm/setup.c | 13 |
1 files changed, 3 insertions, 10 deletions
diff --git a/xen/arch/arm/setup.c b/xen/arch/arm/setup.c index 566f36ce0c..cfe3d9416f 100644 --- a/xen/arch/arm/setup.c +++ b/xen/arch/arm/setup.c @@ -446,16 +446,9 @@ void __init start_xen(unsigned long boot_phys_offset, set_current((struct vcpu *)0xfffff000); /* debug sanity */ idle_vcpu[0] = current; - /* Setup Hyp vector base */ - WRITE_SYSREG((vaddr_t)hyp_traps_vector, VBAR_EL2); - isb(); - - /* Setup Stage 2 address translation */ - /* SH0=00, ORGN0=IRGN0=01 - * SL0=01 (Level-1) - * T0SZ=(1)1000 = -8 (40 bit physical addresses) - */ - WRITE_SYSREG32(0x80002558, VTCR_EL2); isb(); + init_traps(); + + setup_virt_paging(); enable_vfp(); |