summaryrefslogtreecommitdiff
path: root/cmd
diff options
context:
space:
mode:
authorPatrice Chotard <patrice.chotard@foss.st.com>2021-09-10 17:16:20 +0300
committerPatrice Chotard <patrice.chotard@foss.st.com>2021-10-12 15:19:52 +0300
commit38f7d3b6530edae4c4d506d6b9dbd0ae8b8ee5e6 (patch)
treee8b2819e6fa074adaaa01d8aadc8cfac3993174b /cmd
parent089e433e560f883b23c53b66ce3f8fb5a81bd431 (diff)
downloadu-boot-38f7d3b6530edae4c4d506d6b9dbd0ae8b8ee5e6.tar.xz
cmd: bind: Fix driver binding on a device
Fix a regression brings by commit 84f8e36f03fa ("cmd: bind: allow to bind driver with driver data") As example, the following bind command doesn't work: bind /soc/usb-otg@49000000 usb_ether As usb_ether driver has no compatible string, it can't be find by lists_bind_fdt(). In bind_by_node_path(), which called lists_bind_fdt(), the driver entry is known, pass it to lists_bind_fdt() to force the driver entry selection. For this, add a new parameter struct *driver to lists_bind_fdt(). Fix also all lists_bind_fdt() callers. Fixes: 84f8e36f03fa ("cmd: bind: allow to bind driver with driver data") Signed-off-by: Patrice Chotard <patrice.chotard@foss.st.com> Reported-by: Herbert Poetzl <herbert@13thfloor.at> Cc: Marek Vasut <marex@denx.de> Cc: Herbert Poetzl <herbert@13thfloor.at> Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com> Reviewed-by: Simon Glass <sjg@chromium.org>
Diffstat (limited to 'cmd')
-rw-r--r--cmd/bind.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/cmd/bind.c b/cmd/bind.c
index 07c629eff7..4d1b7885e6 100644
--- a/cmd/bind.c
+++ b/cmd/bind.c
@@ -152,7 +152,7 @@ static int bind_by_node_path(const char *path, const char *drv_name)
}
ofnode = ofnode_path(path);
- ret = lists_bind_fdt(parent, ofnode, &dev, false);
+ ret = lists_bind_fdt(parent, ofnode, &dev, drv, false);
if (!dev || ret) {
printf("Unable to bind. err:%d\n", ret);