summaryrefslogtreecommitdiff
path: root/drivers/usb/gadget
diff options
context:
space:
mode:
authorRakesh Bodla <rbodla@nvidia.com>2011-12-29 09:35:39 +0530
committerVarun Wadekar <vwadekar@nvidia.com>2011-12-28 21:44:58 -0800
commita8717590e3d7fb0e1de6f482c2b6577a8f48d068 (patch)
tree7b9ccc79c29353dca8d16e86facd43f6b5074eac /drivers/usb/gadget
parent9c0046e705cea7ffd3892029d4ccbae32f3d42f6 (diff)
usb: gadget: fsl_udc: check for transciever
Need to run the controller only if transciever is not present. Bug 915706 Change-Id: I78b790e64fb24daf7a1df0d71c2e5ca1e9ef672b Reviewed-on: http://git-master/r/72534 Reviewed-by: Automatic_Commit_Validation_User Reviewed-by: Rakesh Bodla <rbodla@nvidia.com> Tested-by: Rakesh Bodla <rbodla@nvidia.com> Reviewed-by: Venkat Moganty <vmoganty@nvidia.com>
Diffstat (limited to 'drivers/usb/gadget')
-rw-r--r--drivers/usb/gadget/fsl_udc_core.c11
1 files changed, 7 insertions, 4 deletions
diff --git a/drivers/usb/gadget/fsl_udc_core.c b/drivers/usb/gadget/fsl_udc_core.c
index 0630c06ad281..813d290cdc5c 100644
--- a/drivers/usb/gadget/fsl_udc_core.c
+++ b/drivers/usb/gadget/fsl_udc_core.c
@@ -2394,10 +2394,13 @@ static int fsl_start(struct usb_gadget_driver *driver,
}
/* Enable DR IRQ reg and Set usbcmd reg Run bit */
- dr_controller_run(udc_controller);
- udc_controller->usb_state = USB_STATE_ATTACHED;
- udc_controller->ep0_state = WAIT_FOR_SETUP;
- udc_controller->ep0_dir = 0;
+ if (!udc_controller->transceiver) {
+ dr_controller_run(udc_controller);
+ udc_controller->usb_state = USB_STATE_ATTACHED;
+ udc_controller->ep0_state = WAIT_FOR_SETUP;
+ udc_controller->ep0_dir = 0;
+ }
+
printk(KERN_INFO "%s: bind to driver %s\n",
udc_controller->gadget.name, driver->driver.name);