omap-common: SYS_BOOT-based fallback boot device selection for peripheral boot
authorPaul Kocialkowski <contact@paulk.fr>
Wed, 15 Jul 2015 14:02:23 +0000 (16:02 +0200)
committerTom Rini <trini@konsulko.com>
Mon, 27 Jul 2015 19:02:06 +0000 (15:02 -0400)
commited19bdaea3d70331de3cd93d0b21970fead97d39
tree35c4a7ac106a63ff240ebcadb898733402eeb472
parent2cb81b6bcd446952e83ef65279d01c3933ba0baa
omap-common: SYS_BOOT-based fallback boot device selection for peripheral boot

OMAP devices might boot from peripheral devices, such as UART or USB.
When that happens, the U-Boot SPL tries to boot the next stage (complete U-Boot)
from that peripheral device, but in most cases, this is not a valid boot device.

This introduces a fallback option that reads the SYS_BOOT pins, that are used by
the bootrom to determine which device to boot from. It is intended for the
SYS_BOOT value to be interpreted in the memory-preferred scheme, so that the
U-Boot SPL can load the next stage from a valid location.

Practically, this options allows loading the U-Boot SPL through USB and have it
load the next stage according to the memory device selected by SYS_BOOT instead
of stalling.

Signed-off-by: Paul Kocialkowski <contact@paulk.fr>
arch/arm/cpu/armv7/omap-common/boot-common.c
arch/arm/include/asm/omap_common.h