projects
/
qemu.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
45fdd3b
)
intc/xilinx_intc: Inhibit write to ISR when HIE
author
Peter Crosthwaite
<peter.crosthwaite@xilinx.com>
Tue, 11 Jun 2013 00:59:55 +0000
(10:59 +1000)
committer
Edgar E. Iglesias
<edgar.iglesias@gmail.com>
Tue, 18 Jun 2013 07:45:00 +0000
(09:45 +0200)
When the Hardware Interrupt Enable (HIE) bit is set, software cannot
change ISR. Add write guard accordingly.
Signed-off-by: Peter Crosthwaite <peter.crosthwaite@xilinx.com>
Signed-off-by: Edgar E. Iglesias <edgar.iglesias@gmail.com>
hw/intc/xilinx_intc.c
patch
|
blob
|
history
diff --git
a/hw/intc/xilinx_intc.c
b/hw/intc/xilinx_intc.c
index 09b445320b81c8c7658b1abf86c69dbe079eff0e..ddedfa3796fc4f13ee0b0626a4774eb8814292dc 100644
(file)
--- a/
hw/intc/xilinx_intc.c
+++ b/
hw/intc/xilinx_intc.c
@@
-116,6
+116,11
@@
pic_write(void *opaque, hwaddr addr,
case R_CIE:
p->regs[R_IER] &= ~value; /* Atomic clear ie. */
break;
+ case R_ISR:
+ if ((p->regs[R_MER] & 2)) {
+ break;
+ }
+ /* fallthrough */
default:
if (addr < ARRAY_SIZE(p->regs))
p->regs[addr] = value;