diff options
| author | Peter Crosthwaite <peter.crosthwaite@xilinx.com> | 2013-04-02 17:59:29 +0000 |
|---|---|---|
| committer | Peter Maydell <peter.maydell@linaro.org> | 2013-04-05 16:59:09 +0100 |
| commit | fd7f8a99f3b08640a7fe2b2f3c3e6b68068b4983 (patch) | |
| tree | e9f3db64efe88e1d67ec620e35280c10aa23ec1d /hw | |
| parent | d8d24fb78cf21205bf672d85231712dc1f0bbb39 (diff) | |
| download | focaccia-qemu-fd7f8a99f3b08640a7fe2b2f3c3e6b68068b4983.tar.gz focaccia-qemu-fd7f8a99f3b08640a7fe2b2f3c3e6b68068b4983.zip | |
pl330: Don't inhibit ES bits on INTEN
This if-else logic inhibits setting of the event status (ES) bits when interrupts are enabled. This is incorrect. ES should be set regardless on INTEN state. INTEN only inhibits the signalling of events to PL330 threads, not setting of the ES register. Signed-off-by: Peter Crosthwaite <peter.crosthwaite@xilinx.com> Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Diffstat (limited to 'hw')
| -rw-r--r-- | hw/pl330.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/hw/pl330.c b/hw/pl330.c index 1a04773a71..60aa4a8f9f 100644 --- a/hw/pl330.c +++ b/hw/pl330.c @@ -870,9 +870,8 @@ static void pl330_dmasev(PL330Chan *ch, uint8_t opcode, uint8_t *args, int len) ch->parent->int_status |= (1 << ev_id); DB_PRINT("event interrupt raised %d\n", ev_id); qemu_irq_raise(ch->parent->irq[ev_id]); - } else { - ch->parent->ev_status |= (1 << ev_id); } + ch->parent->ev_status |= (1 << ev_id); } static void pl330_dmast(PL330Chan *ch, uint8_t opcode, uint8_t *args, int len) |