diff options
author | Sascha Hauer <s.hauer@pengutronix.de> | 2015-12-08 08:27:08 +0100 |
---|---|---|
committer | Sascha Hauer <s.hauer@pengutronix.de> | 2015-12-08 08:27:08 +0100 |
commit | fe68ba4526ed666a2c3a5ddd84d964dbaae0f2d0 (patch) | |
tree | a37811c5b1566c0433af4df012ea6449998b0c2e /arch | |
parent | e6b83bd498ce7c5449a65207bdb8f45fbcaeeb54 (diff) | |
parent | a2b3a25417593e97500cd746f0632d36edfac1a5 (diff) | |
download | barebox-fe68ba4526ed666a2c3a5ddd84d964dbaae0f2d0.tar.gz barebox-fe68ba4526ed666a2c3a5ddd84d964dbaae0f2d0.tar.xz |
Merge branch 'for-next/arm'
Diffstat (limited to 'arch')
-rw-r--r-- | arch/arm/Kconfig | 1 | ||||
-rw-r--r-- | arch/arm/cpu/cpu.c | 26 | ||||
-rw-r--r-- | arch/arm/cpu/interrupts.c | 7 | ||||
-rw-r--r-- | arch/arm/lib/armlinux.c | 12 | ||||
-rw-r--r-- | arch/arm/lib/unwind.c | 5 |
5 files changed, 5 insertions, 46 deletions
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig index 95103c1c9a..c03f7dc883 100644 --- a/arch/arm/Kconfig +++ b/arch/arm/Kconfig @@ -322,7 +322,6 @@ config ARM_EXCEPTIONS config ARM_UNWIND bool "enable stack unwinding support" depends on AEABI - depends on ARM_EXCEPTIONS help This option enables stack unwinding support in barebox using the information automatically generated by the diff --git a/arch/arm/cpu/cpu.c b/arch/arm/cpu/cpu.c index e8191ecde5..eb12166c16 100644 --- a/arch/arm/cpu/cpu.c +++ b/arch/arm/cpu/cpu.c @@ -121,29 +121,3 @@ static int arm_request_stack(void) return 0; } coredevice_initcall(arm_request_stack); - -#ifdef CONFIG_THUMB2_BAREBOX -static void thumb2_execute(void *func, int argc, char *argv[]) -{ - /* - * Switch back to ARM mode before executing external - * programs. - */ - __asm__ __volatile__ ( - "mov r0, #0\n" - "mov r1, %0\n" - "mov r2, %1\n" - "bx %2\n" - : - : "r" (argc - 1), "r" (&argv[1]), "r" (func) - : "r0", "r1", "r2" - ); -} - -static int execute_init(void) -{ - do_execute = thumb2_execute; - return 0; -} -postcore_initcall(execute_init); -#endif diff --git a/arch/arm/cpu/interrupts.c b/arch/arm/cpu/interrupts.c index c437af7188..fb4bb78dae 100644 --- a/arch/arm/cpu/interrupts.c +++ b/arch/arm/cpu/interrupts.c @@ -71,13 +71,6 @@ void show_regs (struct pt_regs *regs) #endif } -#ifdef CONFIG_ARM_UNWIND -void dump_stack(void) -{ - unwind_backtrace(NULL); -} -#endif - static void __noreturn do_exception(struct pt_regs *pt_regs) { show_regs(pt_regs); diff --git a/arch/arm/lib/armlinux.c b/arch/arm/lib/armlinux.c index 16879f8e59..47b9bd33ed 100644 --- a/arch/arm/lib/armlinux.c +++ b/arch/arm/lib/armlinux.c @@ -277,17 +277,5 @@ void start_linux(void *adr, int swap, unsigned long initrd_address, __asm__ __volatile__("mcr p15, 0, %0, c1, c0" :: "r" (reg)); } -#ifdef CONFIG_THUMB2_BAREBOX - __asm__ __volatile__ ( - "mov r0, #0\n" - "mov r1, %0\n" - "mov r2, %1\n" - "bx %2\n" - : - : "r" (architecture), "r" (params), "r" (kernel) - : "r0", "r1", "r2" - ); -#else kernel(0, architecture, params); -#endif } diff --git a/arch/arm/lib/unwind.c b/arch/arm/lib/unwind.c index 7932bca702..c3dca5b61d 100644 --- a/arch/arm/lib/unwind.c +++ b/arch/arm/lib/unwind.c @@ -331,6 +331,11 @@ void unwind_backtrace(struct pt_regs *regs) } } +void dump_stack(void) +{ + unwind_backtrace(NULL); +} + static int unwind_init(void) { struct unwind_idx *idx; |