exynos4210: Set reset-cbar property of Cortex-A9 CPUs
Set the reset-cbar property of the Exynos4210 SoC's Cortex-A9 CPUs, so that Linux doesn't misrecognize them as a broken uniprocessor SoC. Signed-off-by: Peter Maydell <peter.maydell@linaro.org> Reviewed-by: Peter Crosthwaite <peter.crosthwaite@xilinx.com> Message-id: 1394462692-8871-4-git-send-email-peter.maydell@linaro.org
This commit is contained in:
parent
b5a3ca3e30
commit
4719ab918a
|
@ -143,11 +143,21 @@ Exynos4210State *exynos4210_init(MemoryRegion *system_mem,
|
||||||
unsigned long mem_size;
|
unsigned long mem_size;
|
||||||
DeviceState *dev;
|
DeviceState *dev;
|
||||||
SysBusDevice *busdev;
|
SysBusDevice *busdev;
|
||||||
|
ObjectClass *cpu_oc;
|
||||||
|
|
||||||
|
cpu_oc = cpu_class_by_name(TYPE_ARM_CPU, "cortex-a9");
|
||||||
|
assert(cpu_oc);
|
||||||
|
|
||||||
for (n = 0; n < EXYNOS4210_NCPUS; n++) {
|
for (n = 0; n < EXYNOS4210_NCPUS; n++) {
|
||||||
s->cpu[n] = cpu_arm_init("cortex-a9");
|
Object *cpuobj = object_new(object_class_get_name(cpu_oc));
|
||||||
if (!s->cpu[n]) {
|
Error *err = NULL;
|
||||||
fprintf(stderr, "Unable to find CPU %d definition\n", n);
|
|
||||||
|
s->cpu[n] = ARM_CPU(cpuobj);
|
||||||
|
object_property_set_int(cpuobj, EXYNOS4210_SMP_PRIVATE_BASE_ADDR,
|
||||||
|
"reset-cbar", &error_abort);
|
||||||
|
object_property_set_bool(cpuobj, true, "realized", &err);
|
||||||
|
if (err) {
|
||||||
|
error_report("%s", error_get_pretty(err));
|
||||||
exit(1);
|
exit(1);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue