mirror of
https://github.com/u-boot/u-boot.git
synced 2024-11-26 05:34:30 +08:00
bootstd: Tidy up reporting of errors
In a few cases the error handling is not quite right. Make sure we return the actual error in distro_efi_read_bootflow_file() rather than -EINVAL. Return -IO when a file cannot be read. Also show the error name if available. This does not change operation, but does make it easier to diagnose problems. Signed-off-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
parent
d8d40bc392
commit
c889434845
@ -319,7 +319,7 @@ static int alloc_file(const char *fname, uint size, void **bufp)
|
||||
return log_msg_ret("read", ret);
|
||||
}
|
||||
if (size != bytes_read)
|
||||
return log_msg_ret("bread", -EINVAL);
|
||||
return log_msg_ret("bread", -EIO);
|
||||
buf[size] = '\0';
|
||||
|
||||
*bufp = buf;
|
||||
|
@ -235,7 +235,7 @@ static int distro_efi_read_bootflow_file(struct udevice *dev,
|
||||
|
||||
ret = efiload_read_file(desc, bflow);
|
||||
if (ret)
|
||||
return log_msg_ret("read", -EINVAL);
|
||||
return log_msg_ret("read", ret);
|
||||
|
||||
fdt_addr = env_get_hex("fdt_addr_r", 0);
|
||||
|
||||
|
@ -55,7 +55,7 @@ static void report_bootflow_err(struct bootflow *bflow, int err)
|
||||
break;
|
||||
}
|
||||
|
||||
printf(", err=%d\n", err);
|
||||
printf(", err=%dE\n", err);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -168,21 +168,21 @@ static int bootflow_cmd_scan_e(struct unit_test_state *uts)
|
||||
ut_assert_nextlinen("---");
|
||||
ut_assert_nextline("Scanning bootdev 'mmc2.bootdev':");
|
||||
ut_assert_nextline(" 0 syslinux media mmc 0 mmc2.bootdev.whole <NULL>");
|
||||
ut_assert_nextline(" ** No partition found, err=-93");
|
||||
ut_assert_nextline(" ** No partition found, err=-93: Protocol not supported");
|
||||
ut_assert_nextline(" 1 efi media mmc 0 mmc2.bootdev.whole <NULL>");
|
||||
ut_assert_nextline(" ** No partition found, err=-93");
|
||||
ut_assert_nextline(" ** No partition found, err=-93: Protocol not supported");
|
||||
|
||||
ut_assert_nextline("Scanning bootdev 'mmc1.bootdev':");
|
||||
ut_assert_nextline(" 2 syslinux media mmc 0 mmc1.bootdev.whole <NULL>");
|
||||
ut_assert_nextline(" ** No partition found, err=-2");
|
||||
ut_assert_nextline(" ** No partition found, err=-2: No such file or directory");
|
||||
ut_assert_nextline(" 3 efi media mmc 0 mmc1.bootdev.whole <NULL>");
|
||||
ut_assert_nextline(" ** No partition found, err=-2");
|
||||
ut_assert_nextline(" ** No partition found, err=-2: No such file or directory");
|
||||
ut_assert_nextline(" 4 syslinux ready mmc 1 mmc1.bootdev.part_1 /extlinux/extlinux.conf");
|
||||
ut_assert_nextline(" 5 efi fs mmc 1 mmc1.bootdev.part_1 efi/boot/bootsbox.efi");
|
||||
|
||||
ut_assert_skip_to_line("Scanning bootdev 'mmc0.bootdev':");
|
||||
ut_assert_skip_to_line(" 3f efi media mmc 0 mmc0.bootdev.whole <NULL>");
|
||||
ut_assert_nextline(" ** No partition found, err=-93");
|
||||
ut_assert_nextline(" ** No partition found, err=-93: Protocol not supported");
|
||||
ut_assert_nextline("No more bootdevs");
|
||||
ut_assert_nextlinen("---");
|
||||
ut_assert_nextline("(64 bootflows, 1 valid)");
|
||||
|
Loading…
Reference in New Issue
Block a user