diff options
author | Rohith Seelaboyina <rseelaboyina@nvidia.com> | 2012-09-12 14:22:15 +0530 |
---|---|---|
committer | Varun Colbert <vcolbert@nvidia.com> | 2012-09-12 19:07:44 -0700 |
commit | e2dcc0fff0bde89eced1482f3df763bfc7afd3a2 (patch) | |
tree | f697e3c95e3ed32e466e290ebdf93fedb4f5eb3a /drivers | |
parent | b3595d04747d71e494bc0dbc64175d9645d193ad (diff) |
usb: gadget: tegra: check vbus before run bit set
Adding the check for vbus before setting the
run bit.
Bug 1046443
Change-Id: If71748f0fe9c942061ca871034ad4298a58efc23
Signed-off-by: Rohith Seelaboyina <rseelaboyina@nvidia.com>
Reviewed-on: http://git-master/r/131733
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: Rakesh Bodla <rbodla@nvidia.com>
Reviewed-by: Venkat Moganty <vmoganty@nvidia.com>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/usb/gadget/tegra_udc.c | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/drivers/usb/gadget/tegra_udc.c b/drivers/usb/gadget/tegra_udc.c index aaffe8482f82..ddf9c602dc89 100644 --- a/drivers/usb/gadget/tegra_udc.c +++ b/drivers/usb/gadget/tegra_udc.c @@ -2364,11 +2364,13 @@ static int tegra_udc_start(struct usb_gadget_driver *driver, /* Enable DR IRQ reg and Set usbcmd reg Run bit */ - dr_controller_run(udc); - udc->usb_state = USB_STATE_ATTACHED; - udc->ep0_state = WAIT_FOR_SETUP; - udc->ep0_dir = 0; - udc->vbus_active = vbus_enabled(udc); + if (vbus_enabled(udc)) { + dr_controller_run(udc); + udc->usb_state = USB_STATE_ATTACHED; + udc->ep0_state = WAIT_FOR_SETUP; + udc->ep0_dir = 0; + udc->vbus_active = vbus_enabled(udc); + } printk(KERN_INFO "%s: bind to driver %s\n", udc->gadget.name, driver->driver.name); |