aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/usb/gadget/udc-core.c
diff options
context:
space:
mode:
authorFelipe Balbi <balbi@ti.com>2013-02-26 13:51:24 +0200
committerFelipe Balbi <balbi@ti.com>2013-03-18 11:17:30 +0200
commit70d3a49878cb3fc0e5ec0bd1e607c7ac63743f67 (patch)
tree14403fa1cc47e2785835a23aa684868b14be41ac /drivers/usb/gadget/udc-core.c
parentusb: gadget: fsl_udc_core: remove unnecessary initializations (diff)
downloadlinux-dev-70d3a49878cb3fc0e5ec0bd1e607c7ac63743f67.tar.xz
linux-dev-70d3a49878cb3fc0e5ec0bd1e607c7ac63743f67.zip
usb: gadget: udc-core: initialize gadget->dev.driver
if we initialize gadget->dev.driver ourselves, UDC drivers won't have to do the same, so we can remove some duplicated code. Signed-off-by: Felipe Balbi <balbi@ti.com>
Diffstat (limited to 'drivers/usb/gadget/udc-core.c')
-rw-r--r--drivers/usb/gadget/udc-core.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/usb/gadget/udc-core.c b/drivers/usb/gadget/udc-core.c
index 447a1614736e..2423d024654f 100644
--- a/drivers/usb/gadget/udc-core.c
+++ b/drivers/usb/gadget/udc-core.c
@@ -247,6 +247,7 @@ static void usb_gadget_remove_driver(struct usb_udc *udc)
udc->driver = NULL;
udc->dev.driver = NULL;
+ udc->gadget->dev.driver = NULL;
}
/**
@@ -296,6 +297,7 @@ static int udc_bind_to_driver(struct usb_udc *udc, struct usb_gadget_driver *dri
udc->driver = driver;
udc->dev.driver = &driver->driver;
+ udc->gadget->dev.driver = &driver->driver;
ret = driver->bind(udc->gadget, driver);
if (ret)
@@ -314,6 +316,7 @@ err1:
udc->driver->function, ret);
udc->driver = NULL;
udc->dev.driver = NULL;
+ udc->gadget->dev.driver = NULL;
return ret;
}