From 76afc8457eb2f55771d9c9e2ba6106bac43a166b Mon Sep 17 00:00:00 2001 From: Simon Glass Date: Fri, 28 Apr 2023 13:18:09 -0600 Subject: bootstd: Work around missing partition 1 If there is no partition numbered 1, we decide that there are no partitions at all. That may not be correct, since at least one Debian installed has just a single partition numbered 2. Continue searching up to partition 3, just in case. Signed-off-by: Simon Glass --- boot/bootdev-uclass.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/boot/bootdev-uclass.c b/boot/bootdev-uclass.c index 57d2944647..9660ff7567 100644 --- a/boot/bootdev-uclass.c +++ b/boot/bootdev-uclass.c @@ -154,8 +154,15 @@ int bootdev_find_in_blk(struct udevice *dev, struct udevice *blk, ret = -ESHUTDOWN; else bflow->state = BOOTFLOWST_MEDIA; - if (ret) + if (ret) { + /* allow partition 1 to be missing */ + if (iter->part == 1) { + iter->max_part = 3; + ret = -ENOENT; + } + return log_msg_ret("part", ret); + } /* * Currently we don't get the number of partitions, so just -- cgit v1.2.3