summaryrefslogtreecommitdiffstats
path: root/drivers/usb/chipidea
diff options
context:
space:
mode:
authorNicolas Adell <nicolas.adell@actia.fr>2018-08-27 15:59:56 +0200
committerPeter Chen <peter.chen@nxp.com>2018-09-20 17:04:21 +0800
commit1dedbdf2bbb1ede8d96f35f9845ecae179dc1988 (patch)
tree90b935cbe12a941401ee34854e6982825c15ef87 /drivers/usb/chipidea
parent9f644a64884f97f0d92f0689afc7fcf177b6ee92 (diff)
downloadlinux-1dedbdf2bbb1ede8d96f35f9845ecae179dc1988.tar.gz
linux-1dedbdf2bbb1ede8d96f35f9845ecae179dc1988.tar.bz2
linux-1dedbdf2bbb1ede8d96f35f9845ecae179dc1988.zip
usb: chipidea: imx: enable OTG overcurrent in case USB subsystem is already started
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>
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 34ad5bf8acd8..424ecb1f003f 100644
--- a/drivers/usb/chipidea/usbmisc_imx.c
+++ b/drivers/usb/chipidea/usbmisc_imx.c
@@ -343,6 +343,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);