From fe404743f85868fb979a073dd1380746460e6112 Mon Sep 17 00:00:00 2001 From: Joseph Chen Date: Thu, 25 Jul 2019 15:11:49 +0800 Subject: [PATCH] power: io-domain: initialize all io-domain There maybe more than one io-domain. Change-Id: I786544547b7c5da034e4d9685d60144c22266c3b Signed-off-by: Joseph Chen --- drivers/power/io-domain/io-domain-uclass.c | 16 ++++++++++++---- include/io-domain.h | 2 +- 2 files changed, 13 insertions(+), 5 deletions(-) diff --git a/drivers/power/io-domain/io-domain-uclass.c b/drivers/power/io-domain/io-domain-uclass.c index 7d5139e3c1..c3d35b2c71 100644 --- a/drivers/power/io-domain/io-domain-uclass.c +++ b/drivers/power/io-domain/io-domain-uclass.c @@ -7,14 +7,22 @@ #include #include -void io_domain_init(void) +int io_domain_init(void) { - int ret; struct udevice *dev; + struct uclass *uc; + int ret; - ret = uclass_get_device(UCLASS_IO_DOMAIN, 0, &dev); + ret = uclass_get(UCLASS_IO_DOMAIN, &uc); if (ret) - printf("Can't find UCLASS_IO_DOMAIN driver %d\n", ret); + return ret; + + for (uclass_first_device(UCLASS_IO_DOMAIN, &dev); + dev; + uclass_next_device(&dev)) + ; + + return 0; } UCLASS_DRIVER(io_domain) = { diff --git a/include/io-domain.h b/include/io-domain.h index a52b9a7e37..53624cd6c0 100644 --- a/include/io-domain.h +++ b/include/io-domain.h @@ -11,6 +11,6 @@ /** * io_domain_init() - init io-domain driver */ -void io_domain_init(void); +int io_domain_init(void); #endif /* _IO_DOMAIN_H_ */