From f3ebe66f015e04a2e3a4414d24b3dba90ad3b893 Mon Sep 17 00:00:00 2001 From: Benjamin Herrenschmidt Date: Sun, 24 Jul 2016 09:27:09 +1000 Subject: main: Copy all exception vectors down If we aren't loaded at 0 before relocation, we have no exception handlers. This is annoying when debugging, but will be deadly when we start using NAP mode which wakes up via the system reset interrupt at 0x100. So instead, let's copy the whole vectors block down. We are careful to avoid 0..0x100 since that contains the boot flags which are still "hot" as secondaries might still be entering skiboot. Signed-off-by: Benjamin Herrenschmidt Signed-off-by: Stewart Smith --- asm/head.S | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'asm') diff --git a/asm/head.S b/asm/head.S index 4f976b6..f7ccee1 100644 --- a/asm/head.S +++ b/asm/head.S @@ -95,6 +95,11 @@ attn_trigger: hir_trigger: .long 0 + /* + * At 0x100 and 0x180 reside our entry points. Once started, + * we will ovewrite them with our actual 0x100 exception handler + * used for recovering from rvw or nap mode + */ . = 0x100 /* BML entry, load up r3 with device tree location */ li %r3, 0 -- cgit v1.1