diff options
Diffstat (limited to 'hw/arm/highbank.c')
-rw-r--r-- | hw/arm/highbank.c | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/hw/arm/highbank.c b/hw/arm/highbank.c index 2a88b84..46b9f1e 100644 --- a/hw/arm/highbank.c +++ b/hw/arm/highbank.c @@ -230,6 +230,7 @@ static void calxeda_init(QEMUMachineInitArgs *args, enum cxmachines machine) for (n = 0; n < smp_cpus; n++) { ObjectClass *oc = cpu_class_by_name(TYPE_ARM_CPU, cpu_model); + Object *cpuobj; ARMCPU *cpu; Error *err = NULL; @@ -238,15 +239,14 @@ static void calxeda_init(QEMUMachineInitArgs *args, enum cxmachines machine) exit(1); } - cpu = ARM_CPU(object_new(object_class_get_name(oc))); + cpuobj = object_new(object_class_get_name(oc)); + cpu = ARM_CPU(cpuobj); - object_property_set_int(OBJECT(cpu), MPCORE_PERIPHBASE, "reset-cbar", - &err); - if (err) { - error_report("%s", error_get_pretty(err)); - exit(1); + if (object_property_find(cpuobj, "reset-cbar", NULL)) { + object_property_set_int(cpuobj, MPCORE_PERIPHBASE, + "reset-cbar", &error_abort); } - object_property_set_bool(OBJECT(cpu), true, "realized", &err); + object_property_set_bool(cpuobj, true, "realized", &err); if (err) { error_report("%s", error_get_pretty(err)); exit(1); |