mirror of https://github.com/xemu-project/xemu.git
hw/irq: Declare QOM macros using OBJECT_DECLARE_SIMPLE_TYPE()
QOM *DECLARE* macros expect a typedef as first argument, not a structure. Replace 'struct IRQState' by 'IRQState' to avoid when modifying the macros: ../hw/core/irq.c:29:1: error: declaration of anonymous struct must be a definition DECLARE_INSTANCE_CHECKER(struct IRQState, IRQ, ^ Use OBJECT_DECLARE_SIMPLE_TYPE instead of DECLARE_INSTANCE_CHECKER. Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org> Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com> Reviewed-by: Alistair Francis <alistair.francis@wdc.com> Message-id: 20230113200138.52869-3-philmd@linaro.org Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
This commit is contained in:
parent
dc892d1e4c
commit
4703f6c2f7
|
@ -26,8 +26,7 @@
|
||||||
#include "hw/irq.h"
|
#include "hw/irq.h"
|
||||||
#include "qom/object.h"
|
#include "qom/object.h"
|
||||||
|
|
||||||
DECLARE_INSTANCE_CHECKER(struct IRQState, IRQ,
|
OBJECT_DECLARE_SIMPLE_TYPE(IRQState, IRQ)
|
||||||
TYPE_IRQ)
|
|
||||||
|
|
||||||
struct IRQState {
|
struct IRQState {
|
||||||
Object parent_obj;
|
Object parent_obj;
|
||||||
|
@ -68,7 +67,7 @@ qemu_irq *qemu_allocate_irqs(qemu_irq_handler handler, void *opaque, int n)
|
||||||
|
|
||||||
qemu_irq qemu_allocate_irq(qemu_irq_handler handler, void *opaque, int n)
|
qemu_irq qemu_allocate_irq(qemu_irq_handler handler, void *opaque, int n)
|
||||||
{
|
{
|
||||||
struct IRQState *irq;
|
IRQState *irq;
|
||||||
|
|
||||||
irq = IRQ(object_new(TYPE_IRQ));
|
irq = IRQ(object_new(TYPE_IRQ));
|
||||||
irq->handler = handler;
|
irq->handler = handler;
|
||||||
|
@ -94,7 +93,7 @@ void qemu_free_irq(qemu_irq irq)
|
||||||
|
|
||||||
static void qemu_notirq(void *opaque, int line, int level)
|
static void qemu_notirq(void *opaque, int line, int level)
|
||||||
{
|
{
|
||||||
struct IRQState *irq = opaque;
|
IRQState *irq = opaque;
|
||||||
|
|
||||||
irq->handler(irq->opaque, irq->n, !level);
|
irq->handler(irq->opaque, irq->n, !level);
|
||||||
}
|
}
|
||||||
|
@ -120,7 +119,7 @@ void qemu_irq_intercept_in(qemu_irq *gpio_in, qemu_irq_handler handler, int n)
|
||||||
static const TypeInfo irq_type_info = {
|
static const TypeInfo irq_type_info = {
|
||||||
.name = TYPE_IRQ,
|
.name = TYPE_IRQ,
|
||||||
.parent = TYPE_OBJECT,
|
.parent = TYPE_OBJECT,
|
||||||
.instance_size = sizeof(struct IRQState),
|
.instance_size = sizeof(IRQState),
|
||||||
};
|
};
|
||||||
|
|
||||||
static void irq_register_types(void)
|
static void irq_register_types(void)
|
||||||
|
|
Loading…
Reference in New Issue