aboutsummaryrefslogtreecommitdiff
path: root/hw/pl050.c
diff options
context:
space:
mode:
authorpbrook <pbrook@c046a42c-6fe2-441c-8c8c-71466251a162>2007-04-07 18:14:41 +0000
committerpbrook <pbrook@c046a42c-6fe2-441c-8c8c-71466251a162>2007-04-07 18:14:41 +0000
commitd537cf6c8624b27ce2b63431d2f8937f6356f652 (patch)
treed7173d79977b4426b2ff225b35c839c8a2e4a215 /hw/pl050.c
parentb6e27ab8b12ef6075d85fc505f821643804a3a79 (diff)
downloadqemu-d537cf6c8624b27ce2b63431d2f8937f6356f652.zip
qemu-d537cf6c8624b27ce2b63431d2f8937f6356f652.tar.gz
qemu-d537cf6c8624b27ce2b63431d2f8937f6356f652.tar.bz2
Unify IRQ handling.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@2635 c046a42c-6fe2-441c-8c8c-71466251a162
Diffstat (limited to 'hw/pl050.c')
-rw-r--r--hw/pl050.c8
1 files changed, 3 insertions, 5 deletions
diff --git a/hw/pl050.c b/hw/pl050.c
index 20451e5..eed7294 100644
--- a/hw/pl050.c
+++ b/hw/pl050.c
@@ -15,9 +15,8 @@ typedef struct {
uint32_t cr;
uint32_t clk;
uint32_t last;
- void *pic;
int pending;
- int irq;
+ qemu_irq irq;
int is_mouse;
} pl050_state;
@@ -32,7 +31,7 @@ static void pl050_update(void *opaque, int level)
s->pending = level;
raise = (s->pending && (s->cr & 0x10) != 0)
|| (s->cr & 0x08) != 0;
- pic_set_irq_new(s->pic, s->irq, raise);
+ qemu_set_irq(s->irq, raise);
}
static uint32_t pl050_read(void *opaque, target_phys_addr_t offset)
@@ -105,7 +104,7 @@ static CPUWriteMemoryFunc *pl050_writefn[] = {
pl050_write
};
-void pl050_init(uint32_t base, void *pic, int irq, int is_mouse)
+void pl050_init(uint32_t base, qemu_irq irq, int is_mouse)
{
int iomemtype;
pl050_state *s;
@@ -115,7 +114,6 @@ void pl050_init(uint32_t base, void *pic, int irq, int is_mouse)
pl050_writefn, s);
cpu_register_physical_memory(base, 0x00000fff, iomemtype);
s->base = base;
- s->pic = pic;
s->irq = irq;
s->is_mouse = is_mouse;
if (is_mouse)