diff options
author | David Gibson <david@gibson.dropbear.id.au> | 2012-11-12 16:46:49 +0000 |
---|---|---|
committer | Alexander Graf <agraf@suse.de> | 2012-12-14 13:12:53 +0100 |
commit | 044f4c8b0ee90290b6cbbc616c4be3c8aeffcaab (patch) | |
tree | ae473a71365047212c6b3a0600433e990b87c41c /hw/xics.c | |
parent | 1c97e303d4ea80a2691334b0febe87a50660f99d (diff) | |
download | qemu-044f4c8b0ee90290b6cbbc616c4be3c8aeffcaab.zip |
pseries: Fix incorrect initialization of interrupt controller
Currently in the reset code for the XICS interrupt controller, we
initialize the pending_priority field to 0 (most favored, by XICS
convention). This is incorrect, since there is no pending interrupt, it
should be set to least favored - 0xff. At the moment our XICS
implementation doesn't get hurt by this edge case, but it does confuse the
upcoming kernel XICS implementation.
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
Signed-off-by: Alexander Graf <agraf@suse.de>
Diffstat (limited to 'hw/xics.c')
-rw-r--r-- | hw/xics.c | 2 |
1 files changed, 1 insertions, 1 deletions
@@ -495,7 +495,7 @@ static void xics_reset(void *opaque) for (i = 0; i < icp->nr_servers; i++) { icp->ss[i].xirr = 0; - icp->ss[i].pending_priority = 0; + icp->ss[i].pending_priority = 0xff; icp->ss[i].mfrr = 0xff; /* Make all outputs are deasserted */ qemu_set_irq(icp->ss[i].output, 0); |