Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

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

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
Loading
Loading
Loading
Loading
+19 −3
Original line number Diff line number Diff line
@@ -19,10 +19,26 @@

#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,
                                        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__ */