mirror of
https://github.com/u-boot/u-boot.git
synced 2025-05-09 03:21:51 +00:00
cmd: bind: Fix driver binding on a device
Fix a regression brings by commit84f8e36f03
("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:84f8e36f03
("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>
This commit is contained in:
parent
089e433e56
commit
38f7d3b653
10 changed files with 13 additions and 10 deletions
|
@ -53,13 +53,14 @@ int lists_bind_drivers(struct udevice *parent, bool pre_reloc_only);
|
|||
* @parent: parent device (root)
|
||||
* @node: device tree node to bind
|
||||
* @devp: if non-NULL, returns a pointer to the bound device
|
||||
* @drv: if non-NULL, force this driver to be bound
|
||||
* @pre_reloc_only: If true, bind only nodes with special devicetree properties,
|
||||
* or drivers with the DM_FLAG_PRE_RELOC flag. If false bind all drivers.
|
||||
* @return 0 if device was bound, -EINVAL if the device tree is invalid,
|
||||
* other -ve value on error
|
||||
*/
|
||||
int lists_bind_fdt(struct udevice *parent, ofnode node, struct udevice **devp,
|
||||
bool pre_reloc_only);
|
||||
struct driver *drv, bool pre_reloc_only);
|
||||
|
||||
/**
|
||||
* device_bind_driver() - bind a device to a driver
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue