Skip to content

Commit 1bf0cf6

Browse files
author
Felipe Balbi
committed
usb: gadget: omap_udc: convert to udc_start/udc_stop
Mechanical change making use of the new (can we still call it new ?) interface for registering UDC drivers. Signed-off-by: Felipe Balbi <balbi@ti.com>
1 parent 3381fb6 commit 1bf0cf6

File tree

1 file changed

+12
-37
lines changed

1 file changed

+12
-37
lines changed

drivers/usb/gadget/omap_udc.c

Lines changed: 12 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -1309,9 +1309,10 @@ static int omap_pullup(struct usb_gadget *gadget, int is_on)
13091309
return 0;
13101310
}
13111311

1312-
static int omap_udc_start(struct usb_gadget_driver *driver,
1313-
int (*bind)(struct usb_gadget *, struct usb_gadget_driver *));
1314-
static int omap_udc_stop(struct usb_gadget_driver *driver);
1312+
static int omap_udc_start(struct usb_gadget *g,
1313+
struct usb_gadget_driver *driver)
1314+
static int omap_udc_stop(struct usb_gadget *g,
1315+
struct usb_gadget_driver *driver);
13151316

13161317
static struct usb_gadget_ops omap_gadget_ops = {
13171318
.get_frame = omap_get_frame,
@@ -1320,8 +1321,8 @@ static struct usb_gadget_ops omap_gadget_ops = {
13201321
.vbus_session = omap_vbus_session,
13211322
.vbus_draw = omap_vbus_draw,
13221323
.pullup = omap_pullup,
1323-
.start = omap_udc_start,
1324-
.stop = omap_udc_stop,
1324+
.udc_start = omap_udc_start,
1325+
.udc_stop = omap_udc_stop,
13251326
};
13261327

13271328
/*-------------------------------------------------------------------------*/
@@ -2041,28 +2042,15 @@ static inline int machine_without_vbus_sense(void)
20412042
|| cpu_is_omap7xx();
20422043
}
20432044

2044-
static int omap_udc_start(struct usb_gadget_driver *driver,
2045-
int (*bind)(struct usb_gadget *, struct usb_gadget_driver *))
2045+
static int omap_udc_start(struct usb_gadget *g,
2046+
struct usb_gadget_driver *driver)
20462047
{
20472048
int status = -ENODEV;
20482049
struct omap_ep *ep;
20492050
unsigned long flags;
20502051

2051-
/* basic sanity tests */
2052-
if (!udc)
2053-
return -ENODEV;
2054-
if (!driver
2055-
/* FIXME if otg, check: driver->is_otg */
2056-
|| driver->max_speed < USB_SPEED_FULL
2057-
|| !bind || !driver->setup)
2058-
return -EINVAL;
20592052

20602053
spin_lock_irqsave(&udc->lock, flags);
2061-
if (udc->driver) {
2062-
spin_unlock_irqrestore(&udc->lock, flags);
2063-
return -EBUSY;
2064-
}
2065-
20662054
/* reset state */
20672055
list_for_each_entry(ep, &udc->gadget.ep_list, ep.ep_list) {
20682056
ep->irqs = 0;
@@ -2084,15 +2072,6 @@ static int omap_udc_start(struct usb_gadget_driver *driver,
20842072
if (udc->dc_clk != NULL)
20852073
omap_udc_enable_clock(1);
20862074

2087-
status = bind(&udc->gadget, driver);
2088-
if (status) {
2089-
DBG("bind to %s --> %d\n", driver->driver.name, status);
2090-
udc->gadget.dev.driver = NULL;
2091-
udc->driver = NULL;
2092-
goto done;
2093-
}
2094-
DBG("bound to driver %s\n", driver->driver.name);
2095-
20962075
omap_writew(UDC_IRQ_SRC_MASK, UDC_IRQ_SRC);
20972076

20982077
/* connect to bus through transceiver */
@@ -2124,19 +2103,16 @@ static int omap_udc_start(struct usb_gadget_driver *driver,
21242103
done:
21252104
if (udc->dc_clk != NULL)
21262105
omap_udc_enable_clock(0);
2106+
21272107
return status;
21282108
}
21292109

2130-
static int omap_udc_stop(struct usb_gadget_driver *driver)
2110+
static int omap_udc_stop(struct usb_gadget *g,
2111+
struct usb_gadget_driver *driver)
21312112
{
21322113
unsigned long flags;
21332114
int status = -ENODEV;
21342115

2135-
if (!udc)
2136-
return -ENODEV;
2137-
if (!driver || driver != udc->driver || !driver->unbind)
2138-
return -EINVAL;
2139-
21402116
if (udc->dc_clk != NULL)
21412117
omap_udc_enable_clock(1);
21422118

@@ -2152,13 +2128,12 @@ static int omap_udc_stop(struct usb_gadget_driver *driver)
21522128
udc_quiesce(udc);
21532129
spin_unlock_irqrestore(&udc->lock, flags);
21542130

2155-
driver->unbind(&udc->gadget);
21562131
udc->gadget.dev.driver = NULL;
21572132
udc->driver = NULL;
21582133

21592134
if (udc->dc_clk != NULL)
21602135
omap_udc_enable_clock(0);
2161-
DBG("unregistered driver '%s'\n", driver->driver.name);
2136+
21622137
return status;
21632138
}
21642139

0 commit comments

Comments
 (0)