Message ID | 03f3ea7aab287e15179a8c857db713e9cb7ee27a.1664093812.git.msuchanek@suse.de |
---|---|
State | Superseded |
Delegated to: | Simon Glass |
Headers | show |
Series | Do not stop uclass iteration on error | expand |
On Sun, 25 Sept 2022 at 02:30, Michal Suchanek <msuchanek@suse.de> wrote: > > The code checks the return value from uclass_first_device as well as > that the device exists but it passes on the return value which may be > zero if there are no gadget devices. Just check that a device was > returned and return -ENODEV otherwise. > > Also remove the dev variable which is not really used for anything. > > Signed-off-by: Michal Suchanek <msuchanek@suse.de> > --- > drivers/usb/gadget/ether.c | 11 +++++------ > 1 file changed, 5 insertions(+), 6 deletions(-) Reviewed-by: Simon Glass <sjg@chromium.org>
diff --git a/drivers/usb/gadget/ether.c b/drivers/usb/gadget/ether.c index abb5332f13..ad394c80fc 100644 --- a/drivers/usb/gadget/ether.c +++ b/drivers/usb/gadget/ether.c @@ -2636,18 +2636,17 @@ static const struct eth_ops usb_eth_ops = { int usb_ether_init(void) { - struct udevice *dev; struct udevice *usb_dev; int ret; - ret = uclass_first_device(UCLASS_USB_GADGET_GENERIC, &usb_dev); - if (!usb_dev || ret) { + uclass_first_device(UCLASS_USB_GADGET_GENERIC, &usb_dev); + if (!usb_dev) { pr_err("No USB device found\n"); - return ret; + return -ENODEV; } - ret = device_bind_driver(usb_dev, "usb_ether", "usb_ether", &dev); - if (!dev || ret) { + ret = device_bind_driver(usb_dev, "usb_ether", "usb_ether", NULL); + if (ret) { pr_err("usb - not able to bind usb_ether device\n"); return ret; }
The code checks the return value from uclass_first_device as well as that the device exists but it passes on the return value which may be zero if there are no gadget devices. Just check that a device was returned and return -ENODEV otherwise. Also remove the dev variable which is not really used for anything. Signed-off-by: Michal Suchanek <msuchanek@suse.de> --- drivers/usb/gadget/ether.c | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-)