usb: onboard-hub: Don't disable regulator in remove() callback

In case USB hub regulator is shared, unexpected behavior occurs.
On stm32mp135f-dk, stm32mp157c-ev1 and stm32mp157x-dkx, regulator
v3v3 is shared between several IP/devices (USB, panel, ethernet phy,
camera, ...).
Running command "usb stop", v3v3 regulator is switched off and
the splashscreen content disappear.

v3v3 shouldn't be disabled on usb_onboard_hub_remove() callback.

Signed-off-by: Patrice Chotard <patrice.chotard@foss.st.com>
Change-Id: If7ed2ccb5a1c1a84637d29d763cc1935d9b8815e
Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/u-boot/+/299563
ACI: CITOOLS <MDG-smet-aci-reviews@list.st.com>
Reviewed-by: Fabrice GASNIER <fabrice.gasnier@foss.st.com>
Domain-Review: Fabrice GASNIER <fabrice.gasnier@foss.st.com>
This commit is contained in:
Patrice Chotard
2023-04-07 11:03:25 +02:00
parent 9dd8dd873d
commit f5fbab35b5

View File

@ -34,18 +34,6 @@ static int usb_onboard_hub_probe(struct udevice *dev)
return ret;
}
static int usb_onboard_hub_remove(struct udevice *dev)
{
struct onboard_hub *hub = dev_get_priv(dev);
int ret;
ret = regulator_set_enable_if_allowed(hub->vdd, false);
if (ret)
dev_err(dev, "can't disable vdd-supply: %d\n", ret);
return ret;
}
static const struct udevice_id usb_onboard_hub_ids[] = {
/* Use generic usbVID,PID dt-bindings (usb-device.yaml) */
{ .compatible = "usb424,2514" }, /* USB2514B USB 2.0 */
@ -56,7 +44,6 @@ U_BOOT_DRIVER(usb_onboard_hub) = {
.name = "usb_onboard_hub",
.id = UCLASS_USB_HUB,
.probe = usb_onboard_hub_probe,
.remove = usb_onboard_hub_remove,
.of_match = usb_onboard_hub_ids,
.priv_auto = sizeof(struct onboard_hub),
};