aboutsummaryrefslogtreecommitdiffstats
path: root/arch/powerpc/kernel/cpu_setup_power7.S
diff options
context:
space:
mode:
authorBenjamin Herrenschmidt <benh@kernel.crashing.org>2011-04-05 00:20:31 -0400
committerBenjamin Herrenschmidt <benh@kernel.crashing.org>2011-04-19 21:03:22 -0400
commita5d4f3ad3a28cf046836b9bfae61d532b8f77036 (patch)
tree6940ace9422e91459d819b385dacf9b2ab44bd50 /arch/powerpc/kernel/cpu_setup_power7.S
parent2dd60d79e0202628a47af9812a84d502cc63628c (diff)
powerpc: Base support for exceptions using HSRR0/1
Pass the register type to the prolog, also provides alternate "HV" version of hardware interrupt (0x500) and adjust LPES accordingly We tag those interrupts by setting bit 0x2 in the trap number Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Diffstat (limited to 'arch/powerpc/kernel/cpu_setup_power7.S')
-rw-r--r--arch/powerpc/kernel/cpu_setup_power7.S3
1 files changed, 2 insertions, 1 deletions
diff --git a/arch/powerpc/kernel/cpu_setup_power7.S b/arch/powerpc/kernel/cpu_setup_power7.S
index f2b317817c4e..e801ef15d6d0 100644
--- a/arch/powerpc/kernel/cpu_setup_power7.S
+++ b/arch/powerpc/kernel/cpu_setup_power7.S
@@ -52,13 +52,14 @@ __init_hvmode_206:
52__init_LPCR: 52__init_LPCR:
53 /* Setup a sane LPCR: 53 /* Setup a sane LPCR:
54 * 54 *
55 * LPES = 0b11 (SRR0/1 used for 0x500) 55 * LPES = 0b01 (HSRR0/1 used for 0x500)
56 * PECE = 0b111 56 * PECE = 0b111
57 * 57 *
58 * Other bits untouched for now 58 * Other bits untouched for now
59 */ 59 */
60 mfspr r3,SPRN_LPCR 60 mfspr r3,SPRN_LPCR
61 ori r3,r3,(LPCR_LPES0|LPCR_LPES1) 61 ori r3,r3,(LPCR_LPES0|LPCR_LPES1)
62 xori r3,r3, LPCR_LPES0
62 ori r3,r3,(LPCR_PECE0|LPCR_PECE1|LPCR_PECE2) 63 ori r3,r3,(LPCR_PECE0|LPCR_PECE1|LPCR_PECE2)
63 mtspr SPRN_LPCR,r3 64 mtspr SPRN_LPCR,r3
64 isync 65 isync