|
@@ -103,6 +103,8 @@
|
|
#define EXYNOS4210_PL330_BASE1_ADDR 0x12690000
|
|
#define EXYNOS4210_PL330_BASE1_ADDR 0x12690000
|
|
#define EXYNOS4210_PL330_BASE2_ADDR 0x12850000
|
|
#define EXYNOS4210_PL330_BASE2_ADDR 0x12850000
|
|
|
|
|
|
|
|
+#define GIC_EXT_IRQS 64 /* FIXME: verify for this SoC */
|
|
|
|
+
|
|
enum ExtGicId {
|
|
enum ExtGicId {
|
|
EXT_GIC_ID_MDMA_LCD0 = 66,
|
|
EXT_GIC_ID_MDMA_LCD0 = 66,
|
|
EXT_GIC_ID_PDMA0,
|
|
EXT_GIC_ID_PDMA0,
|
|
@@ -588,6 +590,8 @@ static void exynos4210_realize(DeviceState *socdev, Error **errp)
|
|
|
|
|
|
/* Private memory region and Internal GIC */
|
|
/* Private memory region and Internal GIC */
|
|
qdev_prop_set_uint32(DEVICE(&s->a9mpcore), "num-cpu", EXYNOS4210_NCPUS);
|
|
qdev_prop_set_uint32(DEVICE(&s->a9mpcore), "num-cpu", EXYNOS4210_NCPUS);
|
|
|
|
+ qdev_prop_set_uint32(DEVICE(&s->a9mpcore), "num-irq",
|
|
|
|
+ GIC_EXT_IRQS + GIC_INTERNAL);
|
|
busdev = SYS_BUS_DEVICE(&s->a9mpcore);
|
|
busdev = SYS_BUS_DEVICE(&s->a9mpcore);
|
|
sysbus_realize(busdev, &error_fatal);
|
|
sysbus_realize(busdev, &error_fatal);
|
|
sysbus_mmio_map(busdev, 0, EXYNOS4210_SMP_PRIVATE_BASE_ADDR);
|
|
sysbus_mmio_map(busdev, 0, EXYNOS4210_SMP_PRIVATE_BASE_ADDR);
|