ppc: Rework POWER7 & POWER8 exception model
commit5c94b2a5e5ef7f91270ce034d2095c6ed924c61d
authorCédric Le Goater <clg@fr.ibm.com>
Sun, 3 Apr 2016 17:57:50 +0000 (3 19:57 +0200)
committerDavid Gibson <david@gibson.dropbear.id.au>
Tue, 5 Apr 2016 00:38:24 +0000 (5 10:38 +1000)
tree603be713f964f3c0ccc3db5e3b47419ee8dafaa2
parent2e3a76ae3e47d502f9f0c4424b719945fba9d459
ppc: Rework POWER7 & POWER8 exception model

From: Benjamin Herrenschmidt <benh@kernel.crashing.org>

This patch fixes the current AIL implementation for POWER8. The
interrupt vector address can be calculated directly from LPCR when the
exception is handled. The excp_prefix update becomes useless and we
can cleanup the H_SET_MODE hcall.

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
[clg: Removed LPES0/1 handling for HV vs. !HV
      Fixed LPCR_ILE case for POWERPC_EXCP_POWER8 ]
Signed-off-by: Cédric Le Goater <clg@fr.ibm.com>
[dwg: This was written as a cleanup, but it also fixes a real bug
      where setting an alternative interrupt location would not be
      correctly migrated]
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
hw/ppc/spapr_hcall.c
include/hw/ppc/spapr.h
target-ppc/cpu.h
target-ppc/excp_helper.c
target-ppc/translate_init.c