spl: initialize PCI before booting

MMC, SATA, and USB may be using PCI based controllers.
Initialize the PCI sub-system before trying to boot.

Remove the initialization for NVMe that is now redundant.

Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Mayuresh Chitale <mchitale@ventanamicro.com>
This commit is contained in:
Heinrich Schuchardt 2023-07-24 22:18:41 +02:00
parent 8d2c311ce6
commit 7d4c8cfe25
2 changed files with 7 additions and 5 deletions

View file

@ -800,6 +800,13 @@ void board_init_r(gd_t *dummy1, ulong dummy2)
IS_ENABLED(CONFIG_SPL_ATF))
dram_init_banksize();
if (CONFIG_IS_ENABLED(PCI)) {
ret = pci_init();
if (ret)
puts(SPL_TPL_PROMPT "Cannot initialize PCI\n");
/* Don't fail. We still can try other boot methods. */
}
bootcount_inc();
/* Dump driver model states to aid analysis */

View file

@ -7,7 +7,6 @@
#include <common.h>
#include <spl.h>
#include <init.h>
#include <nvme.h>
static int spl_nvme_load_image(struct spl_image_info *spl_image,
@ -15,10 +14,6 @@ static int spl_nvme_load_image(struct spl_image_info *spl_image,
{
int ret;
ret = pci_init();
if (ret < 0)
return ret;
ret = nvme_scan_namespace();
if (ret < 0)
return ret;