hw/intc/arm_gicv3_its: Don't clear GITS_CREADR when GITS_CTLR.ENABLED is set
The current ITS code clears GITS_CREADR when GITS_CTLR.ENABLED is set. This is not correct -- guest code can validly clear ENABLED and then set it again and expect the ITS to continue processing where it left off. Remove the erroneous assignment. Signed-off-by: Peter Maydell <peter.maydell@linaro.org> Reviewed-by: Richard Henderson <richard.henderson@linaro.org> Message-id: 20220122182444.724087-5-peter.maydell@linaro.org
This commit is contained in:
parent
e5ff041f62
commit
1e794a3be1
@ -853,7 +853,6 @@ static bool its_writel(GICv3ITSState *s, hwaddr offset,
|
||||
s->ctlr |= R_GITS_CTLR_ENABLED_MASK;
|
||||
extract_table_params(s);
|
||||
extract_cmdq_params(s);
|
||||
s->creadr = 0;
|
||||
process_cmdq(s);
|
||||
} else {
|
||||
s->ctlr &= ~R_GITS_CTLR_ENABLED_MASK;
|
||||
|
Loading…
Reference in New Issue
Block a user