Commit 24b776bf authored by Mika Westerberg's avatar Mika Westerberg Committed by Russell King

ARM: 6117/1: kdump: implement crash_setup_regs()

Implement machine specific function crash_setup_regs() which is
responsible for storing machine state when crash occured.
Signed-off-by: default avatarMika Westerberg <ext-mika.1.westerberg@nokia.com>
Signed-off-by: default avatarRussell King <rmk+kernel@arm.linux.org.uk>
parent 3c57fb43
...@@ -19,10 +19,26 @@ ...@@ -19,10 +19,26 @@
#ifndef __ASSEMBLY__ #ifndef __ASSEMBLY__
struct kimage; /**
/* Provide a dummy definition to avoid build failures. */ * crash_setup_regs() - save registers for the panic kernel
* @newregs: registers are saved here
* @oldregs: registers to be saved (may be %NULL)
*
* Function copies machine registers from @oldregs to @newregs. If @oldregs is
* %NULL then current registers are stored there.
*/
static inline void crash_setup_regs(struct pt_regs *newregs, static inline void crash_setup_regs(struct pt_regs *newregs,
struct pt_regs *oldregs) { } struct pt_regs *oldregs)
{
if (oldregs) {
memcpy(newregs, oldregs, sizeof(*newregs));
} else {
__asm__ __volatile__ ("stmia %0, {r0 - r15}"
: : "r" (&newregs->ARM_r0));
__asm__ __volatile__ ("mrs %0, cpsr"
: "=r" (newregs->ARM_cpsr));
}
}
#endif /* __ASSEMBLY__ */ #endif /* __ASSEMBLY__ */
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment