Update dev_power_domain_ctrl() to log a warning if the power-domain
driver is not found (-ENODEV). Return 0 in this case to allow continued
execution, while preserving error handling for other failures.

Signed-off-by: Aswin Murugan <[email protected]>
---
Changes in v7:
- Cleaned up the warning logic in drivers/power/domain/power-domain-uclass.c
  when power-domain driver is missing

Changes in v6:
- Newly added the change in drivers/power/domain/power-domain-uclass.c to give 
warning
  when power-domain driver is missing
---
 drivers/power/domain/power-domain-uclass.c | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/drivers/power/domain/power-domain-uclass.c 
b/drivers/power/domain/power-domain-uclass.c
index d9fa8ad4bd2..52f56f57658 100644
--- a/drivers/power/domain/power-domain-uclass.c
+++ b/drivers/power/domain/power-domain-uclass.c
@@ -10,6 +10,7 @@
 #include <malloc.h>
 #include <power-domain.h>
 #include <power-domain-uclass.h>
+#include <dm/device_compat.h>
 #include <dm/device-internal.h>
 
 struct power_domain_priv {
@@ -184,6 +185,12 @@ static int dev_power_domain_ctrl(struct udevice *dev, bool 
on)
                                            "#power-domain-cells", 0);
        for (i = 0; i < count; i++) {
                ret = power_domain_get_by_index(dev, &pd, i);
+
+               if (ret == -ENODEV) {
+                       dev_warn(dev, "power-domain driver not found\n");
+                       return 0;
+               }
+
                if (ret)
                        return ret;
                if (on)
-- 
2.34.1

Reply via email to