summaryrefslogtreecommitdiffstats
path: root/hw/cpu
diff options
context:
space:
mode:
authorPavel Fedin2015-08-13 12:26:21 +0200
committerPeter Maydell2015-08-13 12:26:21 +0200
commite6fbcbc4e57322a8de1307556e68a4cd6d0d8c8b (patch)
tree39e13cd535cb305398377adc6d2365eb9f6679e7 /hw/cpu
parenthw/arm/gic: Kill code duplication (diff)
downloadqemu-e6fbcbc4e57322a8de1307556e68a4cd6d0d8c8b.tar.gz
qemu-e6fbcbc4e57322a8de1307556e68a4cd6d0d8c8b.tar.xz
qemu-e6fbcbc4e57322a8de1307556e68a4cd6d0d8c8b.zip
Introduce gic_class_name() instead of repeating condition
This small inline returns correct GIC class name depending on whether we use KVM acceleration or not. Avoids duplicating the condition everywhere. Signed-off-by: Pavel Fedin <p.fedin@samsung.com> Reviewed-by: Peter Maydell <peter.maydell@linaro.org> Message-id: 4f26901be9b844b563673ce3ad08eeedbb7a7132.1438758065.git.p.fedin@samsung.com Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Diffstat (limited to 'hw/cpu')
-rw-r--r--hw/cpu/a15mpcore.c8
1 files changed, 2 insertions, 6 deletions
diff --git a/hw/cpu/a15mpcore.c b/hw/cpu/a15mpcore.c
index acc419e11a..e31a1f9faa 100644
--- a/hw/cpu/a15mpcore.c
+++ b/hw/cpu/a15mpcore.c
@@ -20,6 +20,7 @@
#include "hw/cpu/a15mpcore.h"
#include "sysemu/kvm.h"
+#include "kvm_arm.h"
static void a15mp_priv_set_irq(void *opaque, int irq, int level)
{
@@ -33,16 +34,11 @@ static void a15mp_priv_initfn(Object *obj)
SysBusDevice *sbd = SYS_BUS_DEVICE(obj);
A15MPPrivState *s = A15MPCORE_PRIV(obj);
DeviceState *gicdev;
- const char *gictype = "arm_gic";
-
- if (kvm_irqchip_in_kernel()) {
- gictype = "kvm-arm-gic";
- }
memory_region_init(&s->container, obj, "a15mp-priv-container", 0x8000);
sysbus_init_mmio(sbd, &s->container);
- object_initialize(&s->gic, sizeof(s->gic), gictype);
+ object_initialize(&s->gic, sizeof(s->gic), gic_class_name());
gicdev = DEVICE(&s->gic);
qdev_set_parent_bus(gicdev, sysbus_get_default());
qdev_prop_set_uint32(gicdev, "revision", 2);