u-boot-brain/arch/arm/mach-zynqmp
Michal Simek de79ca9512 arm64: zynqmp: Add board_boot_order for MMC boot extension
In past SPL_ZYNQMP_TWO_SDHCI symbol was introduced to handle boards with
two sdhci controllers. The problem was that U-Boot is registering
controllers based on aliases in DT but bootmode targets specific controller
ID. That's why on boards with one "second" sdhci controller bootmode was
pointing to second controller(MMC2) but alias was setup to mmc0 (the first
controller). And SPL requires to point to mmc0 in this case.

Long time ago commit f101e4bd37
("spl: add support for alternative boot device") added support for handling
multiple bootmodes in SPL. Use this functionality and setup second sdhci
controller as backup boot device.

Below is table with behavior:
HW/bootmode  bootorder
sd0/sd0      mmc0/mmc1 (mmc1 never called)
sd1/sd1      mmc1/mmc0 (mmc0 fails and mmc1 is called)
sd0+sd1/sd0  mmc0/mmc1 (mmc1 never called)
sd0+sd1/sd1  mmc1/mmc0 (mmc0 never called)

All other bootmodes are not affected but order can be extended to cover
advance boot flows.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2020-01-14 09:05:53 +01:00
..
include/mach arm64: zynqmp: Do not assing MIO34 that early on zcu100 2020-01-14 09:05:53 +01:00
clk.c arm64: zynqmp: Move SoC sources to mach-zynqmp 2019-01-24 10:03:44 +01:00
cpu.c arm64: zynqmp: Convert invoke_smc() to xilinx_pm_request() 2019-10-24 13:37:01 +02:00
handoff.c arm64: zynqmp: Move SoC sources to mach-zynqmp 2019-01-24 10:03:44 +01:00
Kconfig arm64: zynqmp: Add board_boot_order for MMC boot extension 2020-01-14 09:05:53 +01:00
Makefile arm64: zynqmp: Use mailbox driver for PMUFW config loading 2019-10-08 09:55:11 +02:00
mp.c common: Move older CPU functions to their own header 2019-12-02 18:23:06 -05:00
psu_spl_init.c arm64: zynqmp: Do not assing MIO34 that early on zcu100 2020-01-14 09:05:53 +01:00
spl.c arm64: zynqmp: Add board_boot_order for MMC boot extension 2020-01-14 09:05:53 +01:00