arm64: zynqmp: Fix logic around CONFIG_ZYNQ_SDHCI

Replace SDHCI controller listing by Kconfig symbol to let SPL know that
this board is using multiple SDHCIs controllers.
Kconfig help message should explain why this is needed.
Origin symbols were used in full u-boot but with moving to distro boot
this was fixed already.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
This commit is contained in:
Michal Simek
2019-02-13 13:46:41 +01:00
parent 027b1134b2
commit 35e2b92344
11 changed files with 13 additions and 17 deletions

View File

@@ -99,6 +99,17 @@ config SPL_ZYNQMP_ALT_BOOTMODE_ENABLED
config ZYNQ_SDHCI_MAX_FREQ
default 200000000
config SPL_ZYNQMP_TWO_SDHCI
bool "Enable booting from both SDHCIs"
depends on SPL
help
This option reflects that board has two SDHCI controllers which
platform can use as boot device. This option ensures that SPL will
setup BOOT_DEVICE_MMC2 for SDHCI1 controller and BOOT_DEVICE_MMC1 for
SDHCI0 controller. Platforms which have only one SDHCI controller
shouldn't enable this option because it for software SDHCI0 or SDHCI1
are both covered by BOOT_DEVICE_MMC1.
config SPL_ZYNQMP_ALT_BOOTMODE
hex
default 0x0 if JTAG_MODE

View File

@@ -85,7 +85,7 @@ u32 spl_boot_device(void)
case SD_MODE1:
case SD1_LSHFT_MODE: /* not working on silicon v1 */
/* if both controllers enabled, then these two are the second controller */
#if defined(CONFIG_ZYNQ_SDHCI0) && defined(CONFIG_ZYNQ_SDHCI1)
#if defined(SPL_ZYNQMP_TWO_SDHCI)
return BOOT_DEVICE_MMC2;
/* else, fall through, the one SDHCI controller that is enabled is number 1 */
#endif