mirror of
https://github.com/u-boot/u-boot.git
synced 2025-04-25 14:56:03 +00:00
vbe: Allow probing the VBE bootmeth to fail in OS fixup
This device is created when there are no bootmeths defined in the device
tree. But it cannot be probed without a device tree node.
For now, ignore a probe failure.
Signed-off-by: Simon Glass <sjg@chromium.org>
Reported-by: Karsten Merker <merker@debian.org>
Suggested-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
Fixes: a56f663f07
("vbe: Add info about the VBE device to the fwupd node")
Tested-by: Vagrant Cascadian <vagrant@debian.org>
Tested-by: Karsten Merker <merker@debian.org>
This commit is contained in:
parent
65d373abb0
commit
635bb31dad
1 changed files with 12 additions and 4 deletions
|
@ -72,6 +72,18 @@ static int bootmeth_vbe_simple_ft_fixup(void *ctx, struct event *event)
|
||||||
chosen = oftree_path(tree, "/chosen");
|
chosen = oftree_path(tree, "/chosen");
|
||||||
if (!ofnode_valid(chosen))
|
if (!ofnode_valid(chosen))
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
|
ret = device_probe(dev);
|
||||||
|
if (ret) {
|
||||||
|
/*
|
||||||
|
* This should become an error when VBE is updated to
|
||||||
|
* only bind this device when a node exists
|
||||||
|
*/
|
||||||
|
log_debug("VBE device '%s' failed to probe (err=%d)",
|
||||||
|
dev->name, ret);
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
ret = ofnode_add_subnode(chosen, "fwupd", &node);
|
ret = ofnode_add_subnode(chosen, "fwupd", &node);
|
||||||
if (ret && ret != -EEXIST)
|
if (ret && ret != -EEXIST)
|
||||||
return log_msg_ret("fwu", ret);
|
return log_msg_ret("fwu", ret);
|
||||||
|
@ -80,10 +92,6 @@ static int bootmeth_vbe_simple_ft_fixup(void *ctx, struct event *event)
|
||||||
if (ret && ret != -EEXIST)
|
if (ret && ret != -EEXIST)
|
||||||
return log_msg_ret("dev", ret);
|
return log_msg_ret("dev", ret);
|
||||||
|
|
||||||
ret = device_probe(dev);
|
|
||||||
if (ret)
|
|
||||||
return log_msg_ret("probe", ret);
|
|
||||||
|
|
||||||
/* Copy over the vbe properties for fwupd */
|
/* Copy over the vbe properties for fwupd */
|
||||||
log_debug("Fixing up: %s\n", dev->name);
|
log_debug("Fixing up: %s\n", dev->name);
|
||||||
ret = ofnode_copy_props(dev_ofnode(dev), subnode);
|
ret = ofnode_copy_props(dev_ofnode(dev), subnode);
|
||||||
|
|
Loading…
Add table
Reference in a new issue