realview_gic.c (95a9457fd44ad97c518858a4e1586a5498f9773c) realview_gic.c (db873cc5d1a4aaa67eea87768d504b2f89d88738)
1/*
2 * ARM RealView Emulation Baseboard Interrupt Controller
3 *
4 * Copyright (c) 2006-2007 CodeSourcery.
5 * Written by Paul Brook
6 *
7 * This code is licensed under the GPL.
8 */

--- 20 unchanged lines hidden (view full) ---

29 Error *err = NULL;
30 /* The GICs on the RealView boards have a fixed nonconfigurable
31 * number of interrupt lines, so we don't need to expose this as
32 * a qdev property.
33 */
34 int numirq = 96;
35
36 qdev_prop_set_uint32(DEVICE(&s->gic), "num-irq", numirq);
1/*
2 * ARM RealView Emulation Baseboard Interrupt Controller
3 *
4 * Copyright (c) 2006-2007 CodeSourcery.
5 * Written by Paul Brook
6 *
7 * This code is licensed under the GPL.
8 */

--- 20 unchanged lines hidden (view full) ---

29 Error *err = NULL;
30 /* The GICs on the RealView boards have a fixed nonconfigurable
31 * number of interrupt lines, so we don't need to expose this as
32 * a qdev property.
33 */
34 int numirq = 96;
35
36 qdev_prop_set_uint32(DEVICE(&s->gic), "num-irq", numirq);
37 object_property_set_bool(OBJECT(&s->gic), true, "realized", &err);
37 sysbus_realize(SYS_BUS_DEVICE(&s->gic), &err);
38 if (err != NULL) {
39 error_propagate(errp, err);
40 return;
41 }
42 busdev = SYS_BUS_DEVICE(&s->gic);
43
44 /* Pass through outbound IRQ lines from the GIC */
45 sysbus_pass_irq(sbd, busdev);

--- 11 unchanged lines hidden (view full) ---

57{
58 SysBusDevice *sbd = SYS_BUS_DEVICE(obj);
59 RealViewGICState *s = REALVIEW_GIC(obj);
60
61 memory_region_init(&s->container, OBJECT(s),
62 "realview-gic-container", 0x2000);
63 sysbus_init_mmio(sbd, &s->container);
64
38 if (err != NULL) {
39 error_propagate(errp, err);
40 return;
41 }
42 busdev = SYS_BUS_DEVICE(&s->gic);
43
44 /* Pass through outbound IRQ lines from the GIC */
45 sysbus_pass_irq(sbd, busdev);

--- 11 unchanged lines hidden (view full) ---

57{
58 SysBusDevice *sbd = SYS_BUS_DEVICE(obj);
59 RealViewGICState *s = REALVIEW_GIC(obj);
60
61 memory_region_init(&s->container, OBJECT(s),
62 "realview-gic-container", 0x2000);
63 sysbus_init_mmio(sbd, &s->container);
64
65 sysbus_init_child_obj(obj, "gic", &s->gic, sizeof(s->gic), TYPE_ARM_GIC);
65 object_initialize_child(obj, "gic", &s->gic, TYPE_ARM_GIC);
66 qdev_prop_set_uint32(DEVICE(&s->gic), "num-cpu", 1);
67}
68
69static void realview_gic_class_init(ObjectClass *oc, void *data)
70{
71 DeviceClass *dc = DEVICE_CLASS(oc);
72
73 dc->realize = realview_gic_realize;

--- 16 unchanged lines hidden ---
66 qdev_prop_set_uint32(DEVICE(&s->gic), "num-cpu", 1);
67}
68
69static void realview_gic_class_init(ObjectClass *oc, void *data)
70{
71 DeviceClass *dc = DEVICE_CLASS(oc);
72
73 dc->realize = realview_gic_realize;

--- 16 unchanged lines hidden ---