
The current error check for device_find_first_child is not working as expected, the documentation for device_find_first_child mention:
@devp: Returns first child device, or NULL if none Return: 0
Change to return early when there is no child node to avoid any possible null pointer dereference.
Signed-off-by: Jonas Karlman jonas@kwiboo.se Reviewed-by: Marek Vasut marex@denx.de --- v3: - Collect r-b tag v2: - Update commit message
drivers/usb/dwc3/dwc3-generic.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/drivers/usb/dwc3/dwc3-generic.c b/drivers/usb/dwc3/dwc3-generic.c index 35e4b36a695e..4d5d500aefab 100644 --- a/drivers/usb/dwc3/dwc3-generic.c +++ b/drivers/usb/dwc3/dwc3-generic.c @@ -558,9 +558,9 @@ int dwc3_glue_probe(struct udevice *dev) return ret; }
- ret = device_find_first_child(dev, &child); - if (ret) - return ret; + device_find_first_child(dev, &child); + if (!child) + return 0;
if (glue->clks.count == 0) { ret = dwc3_glue_clk_init(child, glue);