u-boot/include
Tony Dinh ee2ce29223 bootstd: Skip over bad device during bootflows scanning
During bootstd scanning for bootdevs, if bootdev_hunt_drv() encounters
a device not found error (e.g. ENOENT), let it return a successful status
so that bootstd will continue scanning the next devices, not stopping
prematurely.

Background:

During scanning for bootflows, it's possible for bootstd to encounter a
faulty device controller. Also when the same u-boot is used for another
variant of the same board, some device controller such as SATA might
not exist.

I've found this issue while converting the Marvell Sheevaplug board to
use bootstd. This board has 2 variants, the original Sheevaplug has MMC and
USB only, but the later variant comes with USB, MMC, and eSATA ports. We
have been using the same u-boot (starting with CONFIG_IDE and later with DM
CONFIG_SATA) for both variants. This worked well with the old
envs-scripting booting scheme.

Signed-off-by: Tony Dinh <mibodhi@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
2023-11-10 11:01:50 -05:00
..
acpi x86: Prevent from missing the FADT chaining 2023-09-22 06:03:46 +08:00
asm-generic bloblist: Support initing from multiple places 2023-10-06 14:38:13 -04:00
broadcom
cavium
clk
configs tree-wide: Replace http:// link with https:// link for ti.com 2023-11-10 11:01:50 -05:00
cramfs
crypto common: Drop linux/printk.h from common header 2023-09-24 09:54:57 -04:00
dm serial: zynqmp: Fetch baudrate from dtb and update 2023-11-07 13:47:08 +01:00
dt-bindings tree-wide: Replace http:// link with https:// link for ti.com 2023-11-10 11:01:50 -05:00
env tree-wide: Replace http:// link with https:// link for ti.com 2023-11-10 11:01:50 -05:00
faraday
firmware/imx/sci imx: scu_api: update to version 1.16 and add more APIs 2023-07-13 11:29:40 +02:00
fsl-mc drivers: net: fsl-mc: add support for MC reserved memory 2023-10-10 10:13:33 +08:00
jffs2
k210
keys
linux tree-wide: Replace http:// link with https:// link for ti.com 2023-11-10 11:01:50 -05:00
lzma
meson drivers: introduce Meson Secure Monitor driver 2023-10-15 12:23:48 +02:00
mtd
mvebu
net
power tree-wide: Replace http:// link with https:// link for ti.com 2023-11-10 11:01:50 -05:00
reboot-mode
renesas pinctrl: renesas: Add RZ/G2L PFC driver 2023-10-16 15:46:18 +02:00
samsung
spmi
tee
test bootX measurements and measurement API moved to u-boot core 2023-10-27 19:27:29 -04:00
u-boot
usb
valgrind
xen
zfs
_exports.h
abuf.h abuf: Allow incrementing the size 2023-08-25 13:54:33 -04:00
ACEX1K.h
adc.h
addr_map.h
ahci.h
altera.h
android_ab.h android_ab: Add option to skip decrementing tries 2023-07-17 15:39:55 -04:00
android_bootloader_message.h
android_image.h
ansi.h
api_public.h
api.h
arm_ffa_priv.h arm_ffa: introduce Arm FF-A support 2023-08-08 10:22:03 -04:00
arm_ffa.h arm_ffa: introduce Arm FF-A support 2023-08-08 10:22:03 -04:00
armcoremodule.h
asm-offsets.h
ata.h
atf_common.h
atmel_hlcdc.h
atmel_lcd.h
atmel_lcdc.h
atmel_mci.h
atsha204a-i2c.h
audio_codec.h
autoboot.h
avb_verify.h
axi.h
axp_pmic.h
axp152.h
axp209.h
axp221.h
axp305.h
axp809.h
axp818.h
backlight.h
bcb.h
bcd.h
binman_sym.h
binman.h
bios_emul.h
bitfield.h
blk.h rockchip: block: blk-uclass: add bounce buffer flag to blk_desc 2023-10-24 15:55:17 +08:00
blkmap.h
bloblist.h bloblist: Support initing from multiple places 2023-10-06 14:38:13 -04:00
bmp_layout.h
boot_fit.h
bootcount.h
bootdev.h bootstd: Skip over bad device during bootflows scanning 2023-11-10 11:01:50 -05:00
bootflow.h bootstd: Add a command to read all files for a bootflow 2023-08-11 07:33:38 -06:00
bootm.h bootm: Support boot measurement 2023-10-27 13:15:57 +03:00
bootmeth.h bootstd: Support bootmeths which can scan any partition 2023-08-25 17:55:19 -04:00
bootretry.h
bootstage.h include: Add <linux/types.h> in a few places 2023-10-24 16:34:45 -04:00
bootstd.h bootstd: Correct 'bpot' typo 2023-07-17 15:38:11 -04:00
bouncebuf.h
btrfs.h
bus_vcxk.h
button.h
bzlib.h
cache.h include: Add <linux/types.h> in a few places 2023-10-24 16:34:45 -04:00
capitalization.h
cbfs.h binman: Rename TYPE_STAGE to TYPE_LEGACY_STAGE 2023-11-02 22:38:01 -04:00
cedit.h expo: cedit: Support reading settings from CMOS RAM 2023-08-25 13:54:33 -04:00
charset.h
circbuf.h
cli_hush.h
cli.h cli: Add a function to set up a new cread 2023-10-11 15:43:54 -04:00
clk-uclass.h clk: Fix typo in header comment 2023-08-19 04:12:53 +02:00
clk.h clk: also handle ENOENT in *_optional functions 2023-11-01 15:14:51 -04:00
clock_legacy.h
cmd_spl.h
command.h command.h: Add a U_BOOT_LONGHELP macro 2023-10-16 10:22:11 -04:00
common_timing_params.h
common.h common: Drop linux/printk.h from common header 2023-09-24 09:54:57 -04:00
compiler.h
config_distro_bootcmd.h
config_fallbacks.h
config_fsl_chain_trust.h
config_phylib_all_drivers.h
console.h
cortina.h
cp437.h
cp1250.h
cpsw.h tree-wide: Replace http:// link with https:// link for ti.com 2023-11-10 11:01:50 -05:00
cpu_func.h
cpu.h include: Add <linux/types.h> in a few places 2023-10-24 16:34:45 -04:00
cros_ec_message.h
cros_ec.h
crypt.h
ctype.h
cyclic.h
ddr_spd.h
debug_uart.h
dfu.h
dialog_pmic.h
display_options.h
display.h
div64.h
dm-demo.h
dm.h
dma-uclass.h
dma.h
dsi_host.h
dt_table.h
dt-structs.h
dw_hdmi.h
dwc_ahsata.h
dwc3-omap-uboot.h tree-wide: Replace http:// link with https:// link for ti.com 2023-11-10 11:01:50 -05:00
dwc3-sti-glue.h
dwc3-uboot.h tree-wide: Replace http:// link with https:// link for ti.com 2023-11-10 11:01:50 -05:00
dwmmc.h
e500.h
ec_commands.h
edid.h
eeprom_field.h
eeprom_layout.h
eeprom.h
efi_api.h efi_loader: support all uclasses in device path 2023-07-20 09:12:50 +02:00
efi_config.h Move bootorder and bootoption apis to lib 2023-07-15 11:20:41 +02:00
efi_default_filename.h
efi_driver.h
efi_dt_fixup.h
efi_load_initrd.h
efi_loader.h efi_loader: use well-known guid for auto-created boot option 2023-10-12 08:32:27 +02:00
efi_riscv.h
efi_rng.h
efi_selftest.h
efi_tcg2.h tpm: Support boot measurements 2023-10-27 13:14:47 +03:00
efi_variable.h
efi.h
elf.h
env_attr.h
env_callback.h bootstd: Use the bootargs env var for changing the cmdline 2023-07-16 23:13:17 +08:00
env_default.h serial: zynqmp: Fetch baudrate from dtb and update 2023-11-07 13:47:08 +01:00
env_flags.h
env_internal.h configs: Add support in Kconfig and convert for armada boards 2023-11-07 13:47:08 +01:00
env.h env: Remove unused NEEDS_MANUAL_RELOC code bits 2023-09-14 10:42:24 -04:00
erofs.h
errno.h
eth_phy.h
ethsw.h
event_internal.h
event.h event: add new EVT_SETTINGS_R event 2023-10-23 17:07:06 +03:00
exception.h
expo.h expo: Add basic support for textline objects 2023-10-11 15:43:55 -04:00
exports.h
ext_common.h fs: ext4: Add some defines for testing 2023-10-17 20:50:52 -04:00
ext4fs.h fs: ext4: Add some defines for testing 2023-10-17 20:50:52 -04:00
extcon.h
extension_board.h
extlinux.h
fastboot-internal.h
fastboot.h
fat.h
fb_mmc.h
fb_nand.h
fdt_region.h
fdt_simplefb.h
fdt_support.h
fdt.h
fdtdec.h
fis.h
flash.h
fm_eth.h
fpga.h fpga: define dummy fpga_load function for debug build 2023-09-21 13:20:11 +02:00
fs_internal.h
fs_loader.h
fs.h fs: Create functions to load and allocate a file 2023-07-14 12:54:51 -04:00
fsl_csu.h
fsl_ddr_dimm_params.h
fsl_ddr_sdram.h
fsl_ddr.h
fsl_ddrc_version.h
fsl_devdis.h
fsl_dspi.h
fsl_dtsec.h
fsl_errata.h
fsl_esdhc_imx.h
fsl_esdhc.h
fsl_fman.h
fsl_ifc.h
fsl_immap.h
fsl_lpuart.h
fsl_mdio.h
fsl_memac.h
fsl_mmdc.h
fsl_pmic.h
fsl_qbman.h
fsl_qe.h
fsl_sec_mon.h
fsl_sec.h imx: fsl_sec: preprocessor casting issue with addresses involving math 2023-07-13 11:29:40 +02:00
fsl_secboot_err.h
fsl_sfp.h
fsl_tgec.h
fsl_usb.h
fsl_validate.h
fsl_wdog.h
fuse.h
fuzzing_engine.h
fwu_mdata.h
fwu.h
g_dnl.h
gdsys_fpga.h
generic-phy.h tree-wide: Replace http:// link with https:// link for ti.com 2023-11-10 11:01:50 -05:00
getopt.h
gsc.h
gt64120.h
gzip.h
handoff.h
hang.h
hash.h
hda_codec.h
hexdump.h
host_arch.h
hw_sha.h
hwconfig.h
hwspinlock.h
i2c_eeprom.h
i2c.h i2c: Implement i2c_get_chip_by_phandle() 2023-10-31 09:08:51 +01:00
i2s.h
i8042.h
ide.h
image-android-dt.h
image-sparse.h lib: sparse: allocate FASTBOOT_MAX_BLK_WRITE instead of small number 2023-07-25 12:44:46 -04:00
image.h bootm: Support boot measurement 2023-10-27 13:15:57 +03:00
imx_container.h arm: imx: Check header before calling spl_load_imx_container 2023-10-17 20:50:52 -04:00
imx_lpi2c.h
imx_sip.h imx: bootaux: change names of MACROs used to boot MCU on iMX devices 2023-07-13 11:29:40 +02:00
imx_thermal.h
imx8image.h
imximage.h
init.h common: add prototype & rename populate_serial_number() 2023-10-23 17:07:06 +03:00
initcall.h initcall: Remove unused NEEDS_MANUAL_RELOC code bits 2023-09-14 10:42:24 -04:00
input.h
interrupt.h riscv: allow resume after exception 2023-11-02 16:22:06 +08:00
inttypes.h
iommu.h
iomux.h
ioports.h
iotrace.h
ipu_pixfmt.h
irq_func.h
irq.h irq: Fix typo in header comment 2023-08-19 04:12:53 +02:00
k3-avs.h tree-wide: Replace http:// link with https:// link for ti.com 2023-11-10 11:01:50 -05:00
k3-clk.h tree-wide: Replace http:// link with https:// link for ti.com 2023-11-10 11:01:50 -05:00
k3-ddrss.h
k3-dev.h tree-wide: Replace http:// link with https:// link for ti.com 2023-11-10 11:01:50 -05:00
key_matrix.h
keyboard.h
kgdb.h
lattice.h
led.h
libata.h
libtizen.h
linker_lists.h
lmb.h lmb: description lmb_is_reserved, lmb_is_reserved_flags 2023-08-15 18:21:17 +02:00
log.h bootstd: Add a separate log category for expo 2023-07-14 12:54:51 -04:00
mailbox-uclass.h
mailbox.h
malloc.h
mapmem.h
marvell_phy.h
mc13892.h
MCD_dma.h
MCD_progCheck.h
MCD_tasksInit.h
media_bus_format.h
memalign.h
membuff.h
menu.h expo: Support handling any key in cedit 2023-10-11 15:43:55 -04:00
micrel.h
miiphy.h
mipi_display.h
mipi_dsi.h
misc.h
mm_communication.h arm_ffa: efi: introduce FF-A MM communication 2023-08-08 10:22:03 -04:00
mmc.h mmc: Introduce mmc_send_stop_transmission() 2023-07-18 09:17:16 +09:00
mpc8xx_irq.h
mpc8xx.h
mpc83xx.h
mpc85xx.h
msc01.h
mtd_node.h
mtd.h
mux-internal.h tree-wide: Replace http:// link with https:// link for ti.com 2023-11-10 11:01:50 -05:00
mux.h tree-wide: Replace http:// link with https:// link for ti.com 2023-11-10 11:01:50 -05:00
mv88e6352.h
mvebu_mmc.h
mxs_nand.h
nand.h
ndisc.h
net.h net: Add option for tracing packets 2023-11-05 16:11:38 -05:00
net6.h net: ipv6: network protocol structures should be packed 2023-07-27 13:39:07 -04:00
netdev.h
ns16550.h pci: serial: Support reading PCI-register size with base 2023-10-06 14:38:13 -04:00
nuvoton_nct6102d.h
nvme.h
nvmem.h
nvmxip.h drivers/mtd/nvmxip: Trigger post bind as probe on driver level 2023-08-30 17:56:21 -04:00
of_live.h dm: core: Add a way to convert a devicetree to a dtb 2023-10-06 14:38:13 -04:00
omap3_spi.h
onenand_uboot.h
opensbi.h
os.h sandbox: Add a way to access persistent test files 2023-08-25 17:55:19 -04:00
p2sb.h
palmas.h
panel.h
part_efi.h uuid: Add ChromiumOS partition types 2023-08-25 17:55:19 -04:00
part.h part: rename disk_partition_type_uuid() 2023-09-11 16:27:49 -04:00
pca953x.h
pch.h
pci_ep.h
pci_gt64120.h
pci_ids.h
pci_msc01.h
pci_rom.h
pci_tegra.h
pci.h
pe.h
phy_interface.h
phy-mipi-dphy.h
phy-sun4i-usb.h
phy.h net: phy: Remove unused NEEDS_MANUAL_RELOC code bits 2023-09-14 10:42:25 -04:00
phys2bus.h
physmem.h
post.h post: Remove unused NEEDS_MANUAL_RELOC code bits 2023-09-14 10:42:25 -04:00
power-domain-uclass.h
power-domain.h
ppc_asm.tmpl
ppc_defs.h
pvblock.h
pwm.h
pwrseq.h
pxe_utils.h
qfw.h
ram.h
rand.h
rc4.h
regmap.h
reiserfs.h
relocate.h image: Remove unused NEEDS_MANUAL_RELOC code bits 2023-09-14 10:42:24 -04:00
remoteproc.h tree-wide: Replace http:// link with https:// link for ti.com 2023-11-10 11:01:50 -05:00
reset-uclass.h
reset.h
rkmtd.h rockchip: block: add rkmtd class and drivers 2023-10-24 15:55:17 +08:00
rng.h
rtc_def.h
rtc.h
s_record.h
samsung-usb-phy-uboot.h
sandbox_efi_capsule.h test: capsule: Generate EFI capsules through binman 2023-08-29 13:37:54 -04:00
sandbox_host.h blk: sandbox: Support binding a device with a given logical block size 2023-10-10 16:19:43 -04:00
sandbox-adc.h
sandbox-clk.h
sandbox-sm.h sandbox: add sandbox sm uclass driver 2023-10-15 12:23:48 +02:00
sandboxfs.h
sandboxtee.h
sata.h bootstd: sata: Add bootstd support for ahci sata 2023-10-23 13:07:12 -04:00
scmi_agent-uclass.h power: domain: add SCMI driver 2023-10-24 17:05:24 -04:00
scmi_agent.h firmware: scmi: framework for installing additional protocols 2023-10-13 16:59:23 -04:00
scmi_protocols.h firmware: scmi: add power domain protocol support 2023-10-24 17:05:24 -04:00
scp03.h
scsi_emul.h
scsi.h scsi: Add buffer_aligned check pass-through 2023-08-22 15:17:53 -04:00
sdhci.h mmc: sdhci: Rework SDHCI_QUIRK_BROKEN_R1B 2023-11-01 10:01:10 +09:00
sdp.h sdp: Use plain udevice for UDC controller interaction 2023-09-15 23:38:02 +02:00
search.h
semihosting.h
semihostingfs.h
serial.h serial: zynqmp: Fetch baudrate from dtb and update 2023-11-07 13:47:08 +01:00
sh_pfc.h
signatures.h
sl28cpld.h
slre.h
sm-uclass.h drivers: introduce Secure Monitor uclass 2023-10-15 12:23:48 +02:00
sm.h drivers: introduce Secure Monitor uclass 2023-10-15 12:23:48 +02:00
smbios.h
smem.h
smsc_lpc47m.h
smsc_sio1007.h
soc.h tree-wide: Replace http:// link with https:// link for ti.com 2023-11-10 11:01:50 -05:00
sort.h
sound.h
sparse_defs.h
sparse_format.h
spartan2.h
spartan3.h
spd_sdram.h
spd.h
spi_flash.h
spi-mem.h
spi.h
spl_gpio.h
spl.h u-boot-imx-20231024 2023-10-24 09:39:02 -04:00
splash.h
squashfs.h
status_led.h
stdint.h
stdio_dev.h stdio: fix stdio_deregister_dev() 2023-10-09 15:24:31 -04:00
stdio.h
stdlib.h
stm32_rcc.h
stratixII.h
string.h
sunxi_gpio.h sunxi: introduce NCAT2 generation model 2023-10-22 23:41:46 +01:00
sunxi_image.h
sy8106a.h
syscon.h
sysinfo.h
sysreset.h
system-constants.h spl: Avoid #ifdef with CONFIG_SPL_PAYLOAD_ARGS_ADDR 2023-10-06 14:38:12 -04:00
tables_csum.h
tca642x.h
tee.h
tegra-kbc.h
thermal.h
thor.h thordown: Use plain udevice for UDC controller interaction 2023-09-15 23:38:02 +02:00
ti-usb-phy-uboot.h tree-wide: Replace http:// link with https:// link for ti.com 2023-11-10 11:01:50 -05:00
time.h
timer.h timer: document the unit of the timer rate 2023-09-09 06:12:47 +02:00
timestamp.h
tlv_eeprom.h
tmu.h
tpm_api.h
tpm-common.h
tpm-v1.h
tpm-v2.h tpm: Support boot measurements 2023-10-27 13:14:47 +03:00
tps6586x.h
trace.h
tsec.h
tsi148.h
twl4030.h
twl6030.h
ubi_uboot.h
ubifs_uboot.h
ubispl.h
uboot_aes.h
ufs.h
universe.h
usb_cdc_acm.h
usb_defs.h
usb_ether.h
usb_mass_storage.h cmd: ums: Use plain udevice for UDC controller interaction 2023-09-15 23:38:02 +02:00
usb.h usb: Return -ENOENT when no devices are found 2023-08-09 23:31:11 +08:00
usbdescriptors.h
usbdevice.h
usbroothubdes.h
uuid.h uuid: Move function comments to header file 2023-08-25 17:55:18 -04:00
vbe.h
versalpl.h arm64: zynqmp: Switch to amd.com emails 2023-07-21 09:00:38 +02:00
version_string.h
version.h
vesa.h
video_bridge.h
video_console.h video: Support showing a cursor 2023-10-11 15:43:55 -04:00
video_font_4x6.h
video_font_8x16.h
video_font_data.h
video_font_sun12x22.h
video_font_ter16x32.h
video_font.h
video_osd.h
video.h Prepare v2023.10-rc4 2023-09-04 10:51:58 -04:00
virtex2.h
virtio_ring.h
virtio_types.h
virtio.h
vsc7385.h
vsc9953.h
vsprintf.h
vxworks.h
w1-eeprom.h
w1.h
wait_bit.h
watchdog.h
wdt.h
winbond_w83627.h
xen.h
xilinx.h
xyzModem.h
zfs_common.h
zynq_bootimg.h
zynqmp_firmware.h firmware: zynqmp: Add support to check feature 2023-09-21 13:20:10 +02:00
zynqmppl.h arm64: zynqmp: Switch to amd.com emails 2023-07-21 09:00:38 +02:00
zynqpl.h