diff options
author | Tom Rini <trini@konsulko.com> | 2018-12-10 07:15:12 -0500 |
---|---|---|
committer | Tom Rini <trini@konsulko.com> | 2018-12-10 07:15:12 -0500 |
commit | 48d299a799f8e60342f10309dc3d4eb8e4b453a1 (patch) | |
tree | 61176a4b76589978db8bc785727924f5af037e5e /drivers/core/syscon-uclass.c | |
parent | 53287a89e90a842f7265446be89c3c6b2aff3271 (diff) | |
parent | 532ededd5cbff3d55e8c8e5b6377cec9e90f2152 (diff) |
Merge branch 'master' of git://git.denx.de/u-boot-usb
- DWC3 and UDC cleanup
Diffstat (limited to 'drivers/core/syscon-uclass.c')
-rw-r--r-- | drivers/core/syscon-uclass.c | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/drivers/core/syscon-uclass.c b/drivers/core/syscon-uclass.c index 303e166a69c..661cf61d62a 100644 --- a/drivers/core/syscon-uclass.c +++ b/drivers/core/syscon-uclass.c @@ -53,6 +53,29 @@ static int syscon_pre_probe(struct udevice *dev) #endif } +struct regmap *syscon_regmap_lookup_by_phandle(struct udevice *dev, + const char *name) +{ + struct udevice *syscon; + struct regmap *r; + int err; + + err = uclass_get_device_by_phandle(UCLASS_SYSCON, dev, + name, &syscon); + if (err) { + dev_dbg(dev, "unable to find syscon device\n"); + return ERR_PTR(err); + } + + r = syscon_get_regmap(syscon); + if (!r) { + dev_dbg(dev, "unable to find regmap\n"); + return ERR_PTR(-ENODEV); + } + + return r; +} + int syscon_get_by_driver_data(ulong driver_data, struct udevice **devp) { struct udevice *dev; |