summaryrefslogtreecommitdiff
path: root/drivers/usb/gadget
diff options
context:
space:
mode:
authorSuresh Gupta <suresh.gupta@freescale.com>2014-03-21 14:01:05 (GMT)
committerJose Rivera <German.Rivera@freescale.com>2014-03-21 14:05:03 (GMT)
commitd81e4fdda513f875e1444e63623aa4b6e823abec (patch)
tree8969b5f856903f3c1c21b2ad911b5aedbf3bf4e5 /drivers/usb/gadget
parent5944853bb052b7a34845cdcda3c14312378f5ffa (diff)
downloadlinux-fsl-qoriq-d81e4fdda513f875e1444e63623aa4b6e823abec.tar.xz
USB: Gadget: fsl driver pullup fix
This fix the fsl usb gadget driver in a way that the usb device will be only "pulled up" on requests only when vbus is powered Signed-off-by: Suresh Gupta <suresh.gupta@freescale.com> Change-Id: I1ca5d3e7121a12a4e11ab163504180233367eaf6 Reviewed-on: http://git.am.freescale.net:8181/9367 Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com> Reviewed-by: Jose Rivera <German.Rivera@freescale.com>
Diffstat (limited to 'drivers/usb/gadget')
-rw-r--r--drivers/usb/gadget/fsl_udc_core.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/usb/gadget/fsl_udc_core.c b/drivers/usb/gadget/fsl_udc_core.c
index f1330fd..fa27a4c 100644
--- a/drivers/usb/gadget/fsl_udc_core.c
+++ b/drivers/usb/gadget/fsl_udc_core.c
@@ -1219,6 +1219,10 @@ static int fsl_pullup(struct usb_gadget *gadget, int is_on)
struct fsl_udc *udc;
udc = container_of(gadget, struct fsl_udc, gadget);
+
+ if (!udc->vbus_active)
+ return -EOPNOTSUPP;
+
udc->softconnect = (is_on != 0);
if (can_pullup(udc))
fsl_writel((fsl_readl(&dr_regs->usbcmd) | USB_CMD_RUN_STOP),