[RFC] [PATCH] imx8mp: power-domain: force usb powerdomain off on startup

This patch fixes a bug, where usb-ether is not usable, after an imx8mp board has been booted using the uuu tool. In order to solve this, the usb power domain is turned off during the probe of the imx8mp-hsiomix driver. Thereby the usb controller is reset during startup and can operate normally thereafter.
This was tested on an imx8mp-evk.
Signed-off-by: Boerge Struempfel bstruempfel@ultratronik.de --- drivers/power/domain/imx8mp-hsiomix.c | 1 + 1 file changed, 1 insertion(+)
diff --git a/drivers/power/domain/imx8mp-hsiomix.c b/drivers/power/domain/imx8mp-hsiomix.c index 6a721a934a..a87595b8eb 100644 --- a/drivers/power/domain/imx8mp-hsiomix.c +++ b/drivers/power/domain/imx8mp-hsiomix.c @@ -116,6 +116,7 @@ static int imx8mp_hsiomix_probe(struct udevice *dev) ret = power_domain_get_by_name(dev, &priv->pd_usb, "usb"); if (ret < 0) goto err_pd_usb; + power_domain_off(&priv->pd_bus);
ret = power_domain_get_by_name(dev, &priv->pd_usb_phy1, "usb-phy1"); if (ret < 0)

Am Do., 15. Dez. 2022 um 15:43 Uhr schrieb Börge Strümpfel boerge.struempfel@gmail.com:
This patch fixes a bug, where usb-ether is not usable, after an imx8mp board has been booted using the uuu tool. In order to solve this, the usb power domain is turned off during the probe of the imx8mp-hsiomix driver. Thereby the usb controller is reset during startup and can operate normally thereafter.
This was tested on an imx8mp-evk.
Signed-off-by: Boerge Struempfel bstruempfel@ultratronik.de
drivers/power/domain/imx8mp-hsiomix.c | 1 + 1 file changed, 1 insertion(+)
diff --git a/drivers/power/domain/imx8mp-hsiomix.c b/drivers/power/domain/imx8mp-hsiomix.c index 6a721a934a..a87595b8eb 100644 --- a/drivers/power/domain/imx8mp-hsiomix.c +++ b/drivers/power/domain/imx8mp-hsiomix.c @@ -116,6 +116,7 @@ static int imx8mp_hsiomix_probe(struct udevice *dev) ret = power_domain_get_by_name(dev, &priv->pd_usb, "usb"); if (ret < 0) goto err_pd_usb;
power_domain_off(&priv->pd_bus);
I noticed that, instead of the usb-powerdomain i turned off the usb-powerdomain. Therefore this should probably be 'power_domain_off(&priv->pd_usb);'. However this should not make a difference in function.
ret = power_domain_get_by_name(dev, &priv->pd_usb_phy1, "usb-phy1"); if (ret < 0)
-- 2.25.1
participants (1)
-
Börge Strümpfel