]> git.karo-electronics.de Git - karo-tx-uboot.git/blobdiff - drivers/power/regulator/regulator-uclass.c
dm: power: Add a function to set up all regulators
[karo-tx-uboot.git] / drivers / power / regulator / regulator-uclass.c
index 687d3b1e31b6574a8099a675b801113335c00671..a2d0b9fa8bd2cee923d66baa05fca3065328355d 100644 (file)
@@ -306,6 +306,28 @@ static int regulator_pre_probe(struct udevice *dev)
        return 0;
 }
 
+int regulators_enable_boot_on(bool verbose)
+{
+       struct udevice *dev;
+       struct uclass *uc;
+       int ret;
+
+       ret = uclass_get(UCLASS_REGULATOR, &uc);
+       if (ret)
+               return ret;
+       for (uclass_first_device(UCLASS_REGULATOR, &dev);
+            dev && !ret;
+            uclass_next_device(&dev)) {
+               ret = regulator_autoset(dev);
+               if (ret == -EMEDIUMTYPE)
+                       continue;
+               if (verbose)
+                       regulator_show(dev, ret);
+       }
+
+       return ret;
+}
+
 UCLASS_DRIVER(regulator) = {
        .id             = UCLASS_REGULATOR,
        .name           = "regulator",