From d537cf6c8624b27ce2b63431d2f8937f6356f652 Mon Sep 17 00:00:00 2001 From: pbrook Date: Sat, 7 Apr 2007 18:14:41 +0000 Subject: Unify IRQ handling. git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@2635 c046a42c-6fe2-441c-8c8c-71466251a162 --- hw/pl080.c | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) (limited to 'hw/pl080.c') diff --git a/hw/pl080.c b/hw/pl080.c index 549b3bf..aab1cac 100644 --- a/hw/pl080.c +++ b/hw/pl080.c @@ -49,8 +49,7 @@ typedef struct { int nchannels; /* Flag to avoid recursive DMA invocations. */ int running; - void *pic; - int irq; + qemu_irq irq; } pl080_state; static const unsigned char pl080_id[] = @@ -63,9 +62,9 @@ static void pl080_update(pl080_state *s) { if ((s->tc_int & s->tc_mask) || (s->err_int & s->err_mask)) - pic_set_irq_new(s->pic, s->irq, 1); + qemu_irq_raise(s->irq); else - pic_set_irq_new(s->pic, s->irq, 1); + qemu_irq_lower(s->irq); } static void pl080_run(pl080_state *s) @@ -325,7 +324,7 @@ static CPUWriteMemoryFunc *pl080_writefn[] = { /* The PL080 and PL081 are the same except for the number of channels they implement (8 and 2 respectively). */ -void *pl080_init(uint32_t base, void *pic, int irq, int nchannels) +void *pl080_init(uint32_t base, qemu_irq irq, int nchannels) { int iomemtype; pl080_state *s; @@ -335,7 +334,6 @@ void *pl080_init(uint32_t base, void *pic, int irq, int nchannels) pl080_writefn, s); cpu_register_physical_memory(base, 0x00000fff, iomemtype); s->base = base; - s->pic = pic; s->irq = irq; s->nchannels = nchannels; /* ??? Save/restore. */ -- cgit v1.1