dm: core: Change syscon to use helper function

Now that we have uclass_first_device_drvdata(), use it from syscon to
reduce code duplication.

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
This commit is contained in:
Simon Glass 2020-02-06 09:54:51 -07:00 committed by Bin Meng
parent 50162348f0
commit ae44cafcb3

View File

@ -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);
if (ret)
return ret;
uclass_foreach_dev(dev, uc) {
if (dev->driver_data == driver_data) {
*devp = dev;
return device_probe(dev);
}
}
return -ENODEV;
ret = uclass_first_device_drvdata(UCLASS_SYSCON, driver_data, devp);
if (ret)
return log_msg_ret("find", ret);
return 0;
}
struct regmap *syscon_get_regmap_by_driver_data(ulong driver_data)