sunxi: Support the FEL boot mode in the regular u-boot build
authorSiarhei Siamashka <siarhei.siamashka@gmail.com>
Mon, 16 Feb 2015 08:23:59 +0000 (10:23 +0200)
committerHans de Goede <hdegoede@redhat.com>
Mon, 16 Feb 2015 19:23:52 +0000 (20:23 +0100)
commit840fe95c3bcff7692c51b90ebc0d350792597ff0
treee1356e133b4e7dfb3f583d5ec0031e2483fe6670
parent942cb0b6a29f74507adeb0bce7ff7f23f69faf84
sunxi: Support the FEL boot mode in the regular u-boot build

So that the CONFIG_SPL_FEL option is not needed anymore. And the regular
SPL binary, generated by the default u-boot build, is now also bootable
over USB in the FEL mode. The SPL still can boot from the SD card too.

A bunch of system registers need to be saved/restored in order to ensure
that the IRQ handler still works in the BROM FEL code after getting
control back from the SPL. This is done in the sunxi code instead of
abusing ifdefs in 'start.S'.

The decision whether to load the main u-boot binary from the SD card or
return to the FEL code in the BROM is done at runtime.

Signed-off-by: Siarhei Siamashka <siarhei.siamashka@gmail.com>
[hdegoede@redhat.com: Since we now restore various regs before returning to
 the FEL BROM code we can drop the sunxi specific #ifdefs in start.S]
Acked-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
arch/arm/cpu/armv7/start.S
arch/arm/cpu/armv7/sunxi/board.c
arch/arm/cpu/armv7/sunxi/fel_utils.S