bootstd: Always create the EFI bootmgr bootmeth
Now that we can separate this out from the normal bootmeths, update the code to create it always. We cannot rely on the device tree to create this, since the EFI project is quite opposed to having anything in the device tree that helps U-Boot with its processing. Signed-off-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
parent
c627cfc14c
commit
bd18b69de1
@ -133,12 +133,7 @@ int dm_scan_other(bool pre_reloc_only)
|
||||
return 0;
|
||||
|
||||
for (i = 0; i < n_ents; i++, drv++) {
|
||||
/*
|
||||
* Disable EFI Manager for now as no one uses it so it is
|
||||
* confusing
|
||||
*/
|
||||
if (drv->id == UCLASS_BOOTMETH &&
|
||||
strcmp("efi_mgr_bootmeth", drv->name)) {
|
||||
if (drv->id == UCLASS_BOOTMETH) {
|
||||
const char *name = drv->name;
|
||||
|
||||
if (!strncmp("bootmeth_", name, 9))
|
||||
|
@ -324,34 +324,26 @@ BOOTSTD_TEST(bootflow_iter, UT_TESTF_DM | UT_TESTF_SCAN_FDT);
|
||||
/* Check using the system bootdev */
|
||||
static int bootflow_system(struct unit_test_state *uts)
|
||||
{
|
||||
struct udevice *bootstd, *dev;
|
||||
struct udevice *dev;
|
||||
|
||||
/* Add the EFI bootmgr driver */
|
||||
ut_assertok(uclass_first_device_err(UCLASS_BOOTSTD, &bootstd));
|
||||
ut_assertok(device_bind_driver(bootstd, "bootmeth_efi_mgr", "bootmgr",
|
||||
&dev));
|
||||
ut_assertok(device_probe(dev));
|
||||
ut_assertok(uclass_get_device_by_name(UCLASS_BOOTMETH, "efi_mgr",
|
||||
&dev));
|
||||
sandbox_set_fake_efi_mgr_dev(dev, true);
|
||||
|
||||
/* Add the system bootdev that it uses */
|
||||
ut_assertok(device_bind_driver(bootstd, "system_bootdev",
|
||||
"system-bootdev", &dev));
|
||||
|
||||
ut_assertok(bootstd_test_drop_bootdev_order(uts));
|
||||
|
||||
/* We should get a single 'bootmgr' method right at the end */
|
||||
bootstd_clear_glob();
|
||||
console_record_reset_enable();
|
||||
ut_assertok(run_command("bootflow scan -l", 0));
|
||||
ut_assert_skip_to_line(
|
||||
" 0 bootmgr ready (none) 0 <NULL> <NULL>");
|
||||
" 0 efi_mgr ready (none) 0 <NULL> <NULL>");
|
||||
ut_assert_skip_to_line("No more bootdevs");
|
||||
ut_assert_skip_to_line("(2 bootflows, 2 valid)");
|
||||
ut_assert_skip_to_line("(6 bootflows, 6 valid)");
|
||||
ut_assert_console_end();
|
||||
|
||||
return 0;
|
||||
}
|
||||
BOOTSTD_TEST(bootflow_system, UT_TESTF_DM | UT_TESTF_SCAN_FDT);
|
||||
BOOTSTD_TEST(bootflow_system, UT_TESTF_DM | UT_TESTF_SCAN_PDATA |
|
||||
UT_TESTF_SCAN_FDT);
|
||||
|
||||
/* Check disabling a bootmethod if it requests it */
|
||||
static int bootflow_iter_disable(struct unit_test_state *uts)
|
||||
|
Loading…
Reference in New Issue
Block a user