qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] [PATCH v1 1/1] target_arm: Make the reset rom_ptr a propert


From: Alistair Francis
Subject: [Qemu-devel] [PATCH v1 1/1] target_arm: Make the reset rom_ptr a property
Date: Thu, 21 Aug 2014 11:36:59 +1000

This allows the board to set the reset address, which is required
for some boards (the Netduino Plus 2 for example)

Signed-off-by: Alistair Francis <address@hidden>
---
At the moment nothing requires this change, but I have a machine
model that I'm working on that requires this

Thanks to Peter C for spotting this issue

 target-arm/cpu-qom.h | 1 +
 target-arm/cpu.c     | 3 ++-
 2 files changed, 3 insertions(+), 1 deletion(-)

diff --git a/target-arm/cpu-qom.h b/target-arm/cpu-qom.h
index 07f3c9e..7e415f5 100644
--- a/target-arm/cpu-qom.h
+++ b/target-arm/cpu-qom.h
@@ -138,6 +138,7 @@ typedef struct ARMCPU {
     uint32_t id_isar3;
     uint32_t id_isar4;
     uint32_t id_isar5;
+    uint32_t rom_address;
     uint64_t id_aa64pfr0;
     uint64_t id_aa64pfr1;
     uint64_t id_aa64dfr0;
diff --git a/target-arm/cpu.c b/target-arm/cpu.c
index 8199f32..29f9473 100644
--- a/target-arm/cpu.c
+++ b/target-arm/cpu.c
@@ -134,7 +134,7 @@ static void arm_cpu_reset(CPUState *s)
         uint32_t pc;
         uint8_t *rom;
         env->daif &= ~PSTATE_I;
-        rom = rom_ptr(0);
+        rom = rom_ptr(cpu->rom_address);
         if (rom) {
             /* We should really use ldl_phys here, in case the guest
                modified flash and reset itself.  However images
@@ -1020,6 +1020,7 @@ static const ARMCPUInfo arm_cpus[] = {
 static Property arm_cpu_properties[] = {
     DEFINE_PROP_BOOL("start-powered-off", ARMCPU, start_powered_off, false),
     DEFINE_PROP_UINT32("midr", ARMCPU, midr, 0),
+    DEFINE_PROP_UINT32("rom-address", ARMCPU, rom_address, 0),
     DEFINE_PROP_END_OF_LIST()
 };
 
-- 
1.9.1




reply via email to

[Prev in Thread] Current Thread [Next in Thread]