usb: dwc3-generic: fix CONFIG_DM_REGULATOR-off case
When DM_REGULATOR is disabled, all calls will return -ENOSYS. Account
for that so that targets like the IOT2050 will work again.
Fixes: de451d5d5b
("usb: dwc3-generic: support external vbus regulator")
Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
Reviewed-by: Caleb Connolly <caleb.connolly@linaro.org>
This commit is contained in:
@@ -246,12 +246,12 @@ static int dwc3_generic_host_probe(struct udevice *dev)
|
|||||||
return rc;
|
return rc;
|
||||||
|
|
||||||
rc = device_get_supply_regulator(dev, "vbus-supply", &priv->vbus_supply);
|
rc = device_get_supply_regulator(dev, "vbus-supply", &priv->vbus_supply);
|
||||||
if (rc)
|
if (rc && rc != -ENOSYS)
|
||||||
debug("%s: No vbus regulator found: %d\n", dev->name, rc);
|
debug("%s: No vbus regulator found: %d\n", dev->name, rc);
|
||||||
|
|
||||||
/* Only returns an error if regulator is valid and failed to enable due to a driver issue */
|
/* Does not return an error if regulator is invalid - but does so when DM_REGULATOR is disabled */
|
||||||
rc = regulator_set_enable_if_allowed(priv->vbus_supply, true);
|
rc = regulator_set_enable_if_allowed(priv->vbus_supply, true);
|
||||||
if (rc)
|
if (rc && rc != -ENOSYS)
|
||||||
return rc;
|
return rc;
|
||||||
|
|
||||||
hccr = (struct xhci_hccr *)priv->gen_priv.base;
|
hccr = (struct xhci_hccr *)priv->gen_priv.base;
|
||||||
|
Reference in New Issue
Block a user