aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/usb/gadget
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/usb/gadget')
-rw-r--r--drivers/usb/gadget/s3c-hsudc.c14
1 files changed, 14 insertions, 0 deletions
diff --git a/drivers/usb/gadget/s3c-hsudc.c b/drivers/usb/gadget/s3c-hsudc.c
index 25829b4398da..8d54f893cefe 100644
--- a/drivers/usb/gadget/s3c-hsudc.c
+++ b/drivers/usb/gadget/s3c-hsudc.c
@@ -1241,10 +1241,24 @@ static int s3c_hsudc_gadget_getframe(struct usb_gadget *gadget)
1241 return s3c_hsudc_read_frameno(to_hsudc(gadget)); 1241 return s3c_hsudc_read_frameno(to_hsudc(gadget));
1242} 1242}
1243 1243
1244static int s3c_hsudc_vbus_draw(struct usb_gadget *gadget, unsigned mA)
1245{
1246 struct s3c_hsudc *hsudc = the_controller;
1247
1248 if (!hsudc)
1249 return -ENODEV;
1250
1251 if (hsudc->transceiver)
1252 return otg_set_power(hsudc->transceiver, mA);
1253
1254 return -EOPNOTSUPP;
1255}
1256
1244static struct usb_gadget_ops s3c_hsudc_gadget_ops = { 1257static struct usb_gadget_ops s3c_hsudc_gadget_ops = {
1245 .get_frame = s3c_hsudc_gadget_getframe, 1258 .get_frame = s3c_hsudc_gadget_getframe,
1246 .start = s3c_hsudc_start, 1259 .start = s3c_hsudc_start,
1247 .stop = s3c_hsudc_stop, 1260 .stop = s3c_hsudc_stop,
1261 .vbus_draw = s3c_hsudc_vbus_draw,
1248}; 1262};
1249 1263
1250static int s3c_hsudc_probe(struct platform_device *pdev) 1264static int s3c_hsudc_probe(struct platform_device *pdev)