diff options
author | Simon Glass <sjg@chromium.org> | 2023-01-17 10:48:03 -0700 |
---|---|---|
committer | Tom Rini <trini@konsulko.com> | 2023-01-23 18:11:41 -0500 |
commit | 0c1f4a9fb13a54780f550d6e5bc4cd37a58f879e (patch) | |
tree | 0195ba57f94d4fca102bf5677d494f2727aa9fe6 /boot/bootflow.c | |
parent | 081bdc52c158dd3a4f73910cde3d7e70a5932d56 (diff) | |
download | u-boot-0c1f4a9fb13a54780f550d6e5bc4cd37a58f879e.tar.gz |
bootstd: Add a SPI flash bootdev
Add a bootdev for SPI flash so that these devices can be used with
standard boot. It only supports loading a script.
Add a special case for the label, since we want to use "spi", not
"spi_flash".
Enable the new bootdev on sandbox.
Signed-off-by: Simon Glass <sjg@chromium.org>
Diffstat (limited to 'boot/bootflow.c')
-rw-r--r-- | boot/bootflow.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/boot/bootflow.c b/boot/bootflow.c index 52cc2f9d548..d2dbc9d4450 100644 --- a/boot/bootflow.c +++ b/boot/bootflow.c @@ -440,6 +440,18 @@ int bootflow_iter_check_blk(const struct bootflow_iter *iter) return -ENOTSUPP; } +int bootflow_iter_check_sf(const struct bootflow_iter *iter) +{ + const struct udevice *media = dev_get_parent(iter->dev); + enum uclass_id id = device_get_uclass_id(media); + + log_debug("uclass %d: %s\n", id, uclass_get_name(id)); + if (id == UCLASS_SPI_FLASH) + return 0; + + return -ENOTSUPP; +} + int bootflow_iter_check_net(const struct bootflow_iter *iter) { const struct udevice *media = dev_get_parent(iter->dev); |