
Hi Simon
On 4/14/21 9:38 PM, Simon Glass wrote:
On Fri, 9 Apr 2021 at 08:36, Patrice Chotard patrice.chotard@foss.st.com wrote:
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
cmd/bind.c | 2 +- drivers/core/device.c | 2 +- drivers/core/lists.c | 11 ++++++++--- drivers/core/root.c | 2 +- drivers/misc/imx8/scu.c | 2 +- drivers/serial/serial-uclass.c | 2 +- drivers/timer/timer-uclass.c | 2 +- include/dm/lists.h | 3 ++- test/dm/nop.c | 2 +- test/dm/test-fdt.c | 2 +- 10 files changed, 18 insertions(+), 12 deletions(-)
Reviewed-by: Simon Glass sjg@chromium.org
Really this command needs a test.
Yes i will work on that even is there is already a bind test. In fact, this new use case was not covered by the existing implementation.
Patrice
Regards, Simon