diff mbox series

[v2,03/17] dm: core: Change syscon to use helper function

Message ID 20200204001945.234347-4-sjg@chromium.org
State Superseded
Headers show
Series x86: coral: Add support for Cr50 | expand

Commit Message

Simon Glass Feb. 4, 2020, 12:19 a.m. UTC
Now that we have uclass_first_device_drvdata(), use it from syscon to
reduce code duplication.

Signed-off-by: Simon Glass <sjg at chromium.org>
---

Changes in v2:
- Add new patch to change syscon to use helper function

 drivers/core/syscon-uclass.c | 15 ++++-----------
 1 file changed, 4 insertions(+), 11 deletions(-)

Comments

Bin Meng Feb. 4, 2020, 7:32 a.m. UTC | #1
On Tue, Feb 4, 2020 at 8:20 AM Simon Glass <sjg at chromium.org> wrote:
>
> Now that we have uclass_first_device_drvdata(), use it from syscon to
> reduce code duplication.
>
> Signed-off-by: Simon Glass <sjg at chromium.org>
> ---
>
> Changes in v2:
> - Add new patch to change syscon to use helper function
>
>  drivers/core/syscon-uclass.c | 15 ++++-----------
>  1 file changed, 4 insertions(+), 11 deletions(-)
>

Reviewed-by: Bin Meng <bmeng.cn at gmail.com>
diff mbox series

Patch

diff --git a/drivers/core/syscon-uclass.c b/drivers/core/syscon-uclass.c
index 5bb38e329c..b9ae82174e 100644
--- a/drivers/core/syscon-uclass.c
+++ b/drivers/core/syscon-uclass.c
@@ -128,22 +128,15 @@  struct regmap *syscon_regmap_lookup_by_phandle(struct udevice *dev,
 
 int syscon_get_by_driver_data(ulong driver_data, struct udevice **devp)
 {
-	struct udevice *dev;
-	struct uclass *uc;
 	int ret;
 
 	*devp = NULL;
-	ret = uclass_get(UCLASS_SYSCON, &uc);
+
+	ret = uclass_first_device_drvdata(UCLASS_SYSCON, driver_data, devp);
 	if (ret)
-		return ret;
-	uclass_foreach_dev(dev, uc) {
-		if (dev->driver_data == driver_data) {
-			*devp = dev;
-			return device_probe(dev);
-		}
-	}
+		return log_msg_ret("find", ret);
 
-	return -ENODEV;
+	return 0;
 }
 
 struct regmap *syscon_get_regmap_by_driver_data(ulong driver_data)