part: Add a function to find the first bootable partition
If a disk has a bootable partition we are expected to use it to locate the
boot files. Add a function to find it.
To test this, update mmc1 to have two paritions, fixing up other tests
accordingly.
Signed-off-by: Simon Glass <sjg@chromium.org>
diff --git a/test/boot/bootflow.c b/test/boot/bootflow.c
index 1297600..38ffe8f 100644
--- a/test/boot/bootflow.c
+++ b/test/boot/bootflow.c
@@ -315,15 +315,15 @@
ut_asserteq(BOOTFLOWST_FS, bflow.state);
bootflow_free(&bflow);
- /* Then more to partition 2 which doesn't exist */
- ut_asserteq(-ENOENT, bootflow_scan_next(&iter, &bflow));
+ /* Then more to partition 2 which exists but is not bootable */
+ ut_asserteq(-EPERM, bootflow_scan_next(&iter, &bflow));
ut_asserteq(2, iter.num_methods);
ut_asserteq(0, iter.cur_method);
ut_asserteq(2, iter.part);
ut_asserteq(0x1e, iter.max_part);
ut_asserteq_str("syslinux", iter.method->name);
ut_asserteq(0, bflow.err);
- ut_asserteq(BOOTFLOWST_MEDIA, bflow.state);
+ ut_asserteq(BOOTFLOWST_PART, bflow.state);
bootflow_free(&bflow);
bootflow_iter_uninit(&iter);