diff options
author | Benjamin Herrenschmidt <benh@kernel.crashing.org> | 2013-05-10 16:59:18 +1000 |
---|---|---|
committer | Benjamin Herrenschmidt <benh@kernel.crashing.org> | 2013-05-10 16:59:18 +1000 |
commit | 73ed148aea9dc0508be7e30e7a447f55c1b2f378 (patch) | |
tree | 2571b5d1851a9f2bef62e92def3608f738748251 /arch/powerpc/include/asm | |
parent | 1de1455f33709a8afd8d41d26d09739a1148105b (diff) | |
download | op-kernel-dev-73ed148aea9dc0508be7e30e7a447f55c1b2f378.zip op-kernel-dev-73ed148aea9dc0508be7e30e7a447f55c1b2f378.tar.gz |
powerpc/powernv: Improve kexec reliability
We add a machine_shutdown hook that frees the OPAL interrupts
(so they get masked at the source and don't fire while kexec'ing)
and which triggers an IODA reset on all the PCIe host bridges
which will have the effect of blocking all DMAs and subsequent
PCIs interrupts.
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Diffstat (limited to 'arch/powerpc/include/asm')
-rw-r--r-- | arch/powerpc/include/asm/opal.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/arch/powerpc/include/asm/opal.h b/arch/powerpc/include/asm/opal.h index b6c8b58..b2906ad 100644 --- a/arch/powerpc/include/asm/opal.h +++ b/arch/powerpc/include/asm/opal.h @@ -563,6 +563,8 @@ extern void opal_nvram_init(void); extern int opal_machine_check(struct pt_regs *regs); +extern void opal_shutdown(void); + #endif /* __ASSEMBLY__ */ #endif /* __OPAL_H */ |