The OR_IRQ device is bus-less, thus isn't reset automatically. Manually reset the OR IRQs in the armsse_reset() handler.
Fixes: bb75e16d5e6 ("hw/arm/iotkit: Wire up MPC interrupt lines") Signed-off-by: Philippe Mathieu-Daudé <f4...@amsat.org> --- hw/arm/armsse.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/hw/arm/armsse.c b/hw/arm/armsse.c index 2e5d0679e7b..a5f8e89950e 100644 --- a/hw/arm/armsse.c +++ b/hw/arm/armsse.c @@ -1668,6 +1668,10 @@ static void armsse_reset(DeviceState *dev) ARMSSE *s = ARM_SSE(dev); s->nsccfg = 0; + + device_cold_reset(DEVICE(&s->mpc_irq_orgate)); + device_cold_reset(DEVICE(&s->ppc_irq_orgate)); + device_cold_reset(DEVICE(&s->sec_resp_splitter)); } static void armsse_class_init(ObjectClass *klass, void *data) -- 2.26.3