]> git.sur5r.net Git - u-boot/blobdiff - drivers/core/uclass.c
dm: core: Add uclass_first_device_err() to return a valid device
[u-boot] / drivers / core / uclass.c
index 12095e75a41ef2c303115ea0c107a0ca234821dd..1141ce1ba3ccd0d22a081674e2f038b9a1b93c81 100644 (file)
@@ -401,6 +401,19 @@ int uclass_first_device(enum uclass_id id, struct udevice **devp)
        return uclass_get_device_tail(dev, ret, devp);
 }
 
+int uclass_first_device_err(enum uclass_id id, struct udevice **devp)
+{
+       int ret;
+
+       ret = uclass_first_device(id, devp);
+       if (ret)
+               return ret;
+       else if (!*devp)
+               return -ENODEV;
+
+       return 0;
+}
+
 int uclass_next_device(struct udevice **devp)
 {
        struct udevice *dev = *devp;