u-boot/arch
Martin Townsend bbfb81c187 ARM: mach-at91: arm926ejs: fix data abort in startup returning from lowlevel_init
The startup code in arm/cpu/arm926ejs preserves the link register across
the call to lowlevel_init by using r4:

mov	r4, lr		/* perserve link reg across call */
bl	lowlevel_init	/* go setup pll,mux,memory */
mov	lr, r4		/* restore link */

The lowlevel_init function for at91 machines based on the same CPU uses r4
and hence corrupts it causing a data abort when it returns to the startup
code. This patch fixes this by using r6 instead of r4 in the lowlevel_init
function.

Discovered and the fix was tested on a AT91SAM9261 based board.

Signed-off-by: Martin Townsend <martin@rufilla.com>
Reviewed-by: Eugen Hristev <eugen.hristev@microchip.com>
2021-03-22 10:53:52 +02:00
..
arc common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
arm ARM: mach-at91: arm926ejs: fix data abort in startup returning from lowlevel_init 2021-03-22 10:53:52 +02:00
m68k Merge branch '2021-02-02-drop-asm_global_data-when-unused' 2021-02-15 10:16:45 -05:00
microblaze common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
mips common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
nds32 common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
nios2 common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
powerpc ppc: Remove MPC8569MDS board 2021-02-25 11:59:54 -05:00
riscv riscv: k210: Enable QSPI for spi3 2021-02-25 18:06:08 +08:00
sandbox - adds adc-keys button driver 2021-02-22 12:37:02 -05:00
sh Merge branch '2021-02-02-drop-asm_global_data-when-unused' 2021-02-15 10:16:45 -05:00
x86 Merge branch '2021-02-02-drop-asm_global_data-when-unused' 2021-02-15 10:16:45 -05:00
xtensa common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
.gitignore
Kconfig linker_lists: Fix alignment issue 2020-12-18 20:32:21 -07:00
u-boot-elf.lds arch: Add explicit linker script for u-boot-elf 2020-04-03 11:52:55 -04:00