Commit 979f5418 authored by Nicolas Adell's avatar Nicolas Adell Committed by Greg Kroah-Hartman

usb: chipidea: imx: enable OTG overcurrent in case USB subsystem is already started

[ Upstream commit 1dedbdf2 ]

When initializing the USB subsystem before starting the kernel,
OTG overcurrent detection is disabled. In case the OTG polarity of
overcurrent is low active, the overcurrent detection is never enabled
again and events cannot be reported as expected. Because imx usb
overcurrent polarity is low active by default, only detection needs
to be enable in usbmisc init function.
Signed-off-by: default avatarNicolas Adell <nicolas.adell@actia.fr>
Signed-off-by: default avatarPeter Chen <peter.chen@nxp.com>
Signed-off-by: default avatarSasha Levin <sashal@kernel.org>
parent b39e733d
...@@ -343,6 +343,8 @@ static int usbmisc_imx6q_init(struct imx_usbmisc_data *data) ...@@ -343,6 +343,8 @@ static int usbmisc_imx6q_init(struct imx_usbmisc_data *data)
} else if (data->oc_polarity == 1) { } else if (data->oc_polarity == 1) {
/* High active */ /* High active */
reg &= ~(MX6_BM_OVER_CUR_DIS | MX6_BM_OVER_CUR_POLARITY); reg &= ~(MX6_BM_OVER_CUR_DIS | MX6_BM_OVER_CUR_POLARITY);
} else {
reg &= ~(MX6_BM_OVER_CUR_DIS);
} }
writel(reg, usbmisc->base + data->index * 4); writel(reg, usbmisc->base + data->index * 4);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment