summaryrefslogtreecommitdiff
path: root/arch/arm/include/asm/bug.h
diff options
context:
space:
mode:
authorEzequiel Garcia <ezequiel@vanguardiasur.com.ar>2015-11-04 16:08:37 (GMT)
committerRussell King <rmk+kernel@arm.linux.org.uk>2015-11-16 18:34:38 (GMT)
commita4124e7296000242243996e1ae2601cfadf276a5 (patch)
tree93b53a9c4bedc358c6c53ec0a7b98344bf612c53 /arch/arm/include/asm/bug.h
parent440ee365d30adbcd9a97fba9cd629cedb7e9b7cb (diff)
downloadlinux-a4124e7296000242243996e1ae2601cfadf276a5.tar.xz
ARM: 8451/1: v7-M: Set an early stack for __v7m_setup
On ARM v7-M, when PROCINFO_INITFUNC (__v7m_setup) is called, a stack is needed before calling the supervisor call (SVC), which is used by the supervisor call to save the context. Currently, __v7m_setup() prepares a temporary stack in the .text.init section, which is is broken if the kernel is executing directly from read-only memory. In particular, this is the case for LPC43xx, which allows to execute the kernel in-place from a serial flash through its SPIFI controller. This commit fixes the issue by seting an early stack to its usual location. Also, __v7m_setup() is currently saving and restoring the previous stack. That was bogus, because there's no stack previously set, so this commit removes it. Acked-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Signed-off-by: Ezequiel Garcia <ezequiel@vanguardiasur.com.ar> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch/arm/include/asm/bug.h')
0 files changed, 0 insertions, 0 deletions