aboutsummaryrefslogtreecommitdiff
path: root/target/ppc
diff options
context:
space:
mode:
authorCédric Le Goater <clg@kaod.org>2021-08-09 15:45:24 +0200
committerDavid Gibson <david@gibson.dropbear.id.au>2021-08-27 12:41:13 +1000
commitc944a3ba7bae52512a8cb781a2e3ffe8c678fc9c (patch)
tree0f53c18ecea6e698b049fc62f70c53f553e19faf /target/ppc
parent6bc8c046485463d9fb513a4a6bcc31460e6e8ba6 (diff)
ppc/pnv: powerpc_excp: Do not discard HDECR exception when entering power-saving mode
The Hypervisor Decrementer exception should not be generated while the CPU is in power-saving mode (see cpu_ppc_hdecr_excp()). However, discarding the exception before entering the power-saving mode is wrong since we would loose a previously generated HDEC. Fixes: 4b236b621bf0 ("ppc: Initial HDEC support") Signed-off-by: Cédric Le Goater <clg@kaod.org> Message-Id: <20210809134547.689560-4-clg@kaod.org> Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
Diffstat (limited to 'target/ppc')
-rw-r--r--target/ppc/excp_helper.c6
1 files changed, 0 insertions, 6 deletions
diff --git a/target/ppc/excp_helper.c b/target/ppc/excp_helper.c
index a79a0ed465..7b6ac16eef 100644
--- a/target/ppc/excp_helper.c
+++ b/target/ppc/excp_helper.c
@@ -1211,12 +1211,6 @@ void helper_pminsn(CPUPPCState *env, powerpc_pm_insn_t insn)
cs = env_cpu(env);
cs->halted = 1;
- /*
- * The architecture specifies that HDEC interrupts are discarded
- * in PM states
- */
- env->pending_interrupts &= ~(1 << PPC_INTERRUPT_HDECR);
-
/* Condition for waking up at 0x100 */
env->resume_as_sreset = (insn != PPC_PM_STOP) ||
(env->spr[SPR_PSSCR] & PSSCR_EC);