summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVenkatesh Yadav Abbarapu <venkatesh.abbarapu@amd.com>2024-11-25 09:41:59 +0530
committerMarek Vasut <marex@denx.de>2024-11-25 05:40:49 +0100
commit5fdce1fa1783fb0cada91b17cd341f026521c3d9 (patch)
tree00435399253d13ccf707b0a9842f531f3b9de753
parent0e670e2917d76005d03be7e2dc3db1b7cba2d0d8 (diff)
usb: onboard-hub: Fix the return values of regulator APIs
Don't error out if there is no vdd regulator supply, as these are optional properties. Signed-off-by: Venkatesh Yadav Abbarapu <venkatesh.abbarapu@amd.com> Reviewed-by: Marek Vasut <marex@denx.de>
-rw-r--r--common/usb_onboard_hub.c12
1 files changed, 8 insertions, 4 deletions
diff --git a/common/usb_onboard_hub.c b/common/usb_onboard_hub.c
index e4d1f12cb47..812e7749de5 100644
--- a/common/usb_onboard_hub.c
+++ b/common/usb_onboard_hub.c
@@ -57,14 +57,18 @@ static int usb_onboard_hub_probe(struct udevice *dev)
int ret;
ret = device_get_supply_regulator(dev, "vdd-supply", &hub->vdd);
- if (ret) {
+ if (ret && ret != -ENOENT) {
dev_err(dev, "can't get vdd-supply: %d\n", ret);
return ret;
}
- ret = regulator_set_enable_if_allowed(hub->vdd, true);
- if (ret)
- dev_err(dev, "can't enable vdd-supply: %d\n", ret);
+ if (hub->vdd) {
+ ret = regulator_set_enable_if_allowed(hub->vdd, true);
+ if (ret && ret != -ENOSYS) {
+ dev_err(dev, "can't enable vdd-supply: %d\n", ret);
+ return ret;
+ }
+ }
return usb_onboard_hub_reset(dev);
}