diff options
author | Greg Bellows <greg.bellows@linaro.org> | 2014-12-15 17:09:49 -0600 |
---|---|---|
committer | Peter Maydell <peter.maydell@linaro.org> | 2014-12-22 23:12:28 +0000 |
commit | e5a5604f8fdabfc788fbf75354b7f92eb349dcff (patch) | |
tree | 1d32f170504fd05d3de0caa87a4df980b9f8b63f /hw | |
parent | 12d027f132246826c4358f3734d738a3385bf75f (diff) | |
download | hqemu-e5a5604f8fdabfc788fbf75354b7f92eb349dcff.zip hqemu-e5a5604f8fdabfc788fbf75354b7f92eb349dcff.tar.gz |
target-arm: Set CPU has_el3 prop during virt init
Adds setting of the CPU has_el3 property based on the virt machine
secure state property during initialization. This enables/disables EL3
state during start-up. Changes include adding an additional secure state
boolean during virt CPU initialization. Also disables the ARM secure boot
by default.
Signed-off-by: Greg Bellows <greg.bellows@linaro.org>
Message-id: 1418684992-8996-13-git-send-email-greg.bellows@linaro.org
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Diffstat (limited to 'hw')
-rw-r--r-- | hw/arm/virt.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/hw/arm/virt.c b/hw/arm/virt.c index 73c68c7..a9e13ca 100644 --- a/hw/arm/virt.c +++ b/hw/arm/virt.c @@ -547,6 +547,7 @@ static void *machvirt_dtb(const struct arm_boot_info *binfo, int *fdt_size) static void machvirt_init(MachineState *machine) { + VirtMachineState *vms = VIRT_MACHINE(machine); qemu_irq pic[NUM_IRQS]; MemoryRegion *sysmem = get_system_memory(); int n; @@ -584,6 +585,10 @@ static void machvirt_init(MachineState *machine) } cpuobj = object_new(object_class_get_name(oc)); + if (!vms->secure) { + object_property_set_bool(cpuobj, false, "has_el3", NULL); + } + object_property_set_int(cpuobj, QEMU_PSCI_CONDUIT_HVC, "psci-conduit", NULL); |