diff options
author | Alex Sadovsky <nable.maininbox@googlemail.com> | 2015-01-08 20:51:10 +0300 |
---|---|---|
committer | Marek Vasut <marex@denx.de> | 2015-01-18 12:31:01 +0100 |
commit | c0978a94aa4eab52e8c634ac0a43af4b411921e3 (patch) | |
tree | bec99eec185d678d4f70f93db8972c2a03859d34 /drivers | |
parent | 1fd81b7c23705eb46fd80d1eccb68fa8697cf348 (diff) | |
download | talos-obmc-uboot-c0978a94aa4eab52e8c634ac0a43af4b411921e3.tar.gz talos-obmc-uboot-c0978a94aa4eab52e8c634ac0a43af4b411921e3.zip |
usb: gadget: pxa25x_udc: fix use-before-initialized bug
Fix use-before-initialized bug in pxa25x_udc driver.
Function usb_gadget_register_driver calls udc_disable,
and udc_disable calls pullup_off that uses dev->mach->udc_command.
But dev->mach is initialized in usb_gadget_register_driver after
calling udc_disable. This patch fixes the order of initialization.
Signed-off-by: Alex Sadovsky <Nable.MainInbox@googlemail.com>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/usb/gadget/pxa25x_udc.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/usb/gadget/pxa25x_udc.c b/drivers/usb/gadget/pxa25x_udc.c index 8945c5b665..d4460b2dc7 100644 --- a/drivers/usb/gadget/pxa25x_udc.c +++ b/drivers/usb/gadget/pxa25x_udc.c @@ -1950,11 +1950,11 @@ int usb_gadget_register_driver(struct usb_gadget_driver *driver) dev->watchdog.period = 5000 * CONFIG_SYS_HZ / 1000000; /* 5 ms */ dev->watchdog.function = udc_watchdog; + dev->mach = &mach_info; + udc_disable(dev); udc_reinit(dev); - dev->mach = &mach_info; - dev->gadget.name = "pxa2xx_udc"; retval = driver->bind(&dev->gadget); if (retval) { |