summaryrefslogtreecommitdiff
path: root/drivers/usb/chipidea
diff options
context:
space:
mode:
authorNicolas Adell <nicolas.adell@actia.fr>2018-08-27 15:59:56 +0200
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2019-11-25 09:52:37 +0100
commit7cd6a13e203251caef4759eca16a7542510624a1 (patch)
treeb692aa79d56133b078ef7a0f6eb1ff2976fe45d5 /drivers/usb/chipidea
parent4605e4686d6cf8715cd239b720696a14c0ad2bb1 (diff)
usb: chipidea: imx: enable OTG overcurrent in case USB subsystem is already started
[ Upstream commit 1dedbdf2bbb1ede8d96f35f9845ecae179dc1988 ] 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: Nicolas Adell <nicolas.adell@actia.fr> Signed-off-by: Peter Chen <peter.chen@nxp.com> Signed-off-by: Sasha Levin <sashal@kernel.org>
Diffstat (limited to 'drivers/usb/chipidea')
-rw-r--r--drivers/usb/chipidea/usbmisc_imx.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/usb/chipidea/usbmisc_imx.c b/drivers/usb/chipidea/usbmisc_imx.c
index 20d02a5e418d..c6577f489d0f 100644
--- a/drivers/usb/chipidea/usbmisc_imx.c
+++ b/drivers/usb/chipidea/usbmisc_imx.c
@@ -273,6 +273,8 @@ static int usbmisc_imx6q_init(struct imx_usbmisc_data *data)
} else if (data->oc_polarity == 1) {
/* High active */
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);