Browse Source

usb: gadget: udc: s3c-hsudc: do not rely on 'driver' argument

future patches will remove the extra 'driver'
argument to ->udc_stop(), in order to do that,
we must make sure that our UDC does not rely
on it first.

Signed-off-by: Felipe Balbi <balbi@ti.com>
Felipe Balbi 11 năm trước cách đây
mục cha
commit
82891b959c

+ 3 - 5
drivers/usb/gadget/udc/s3c-hsudc.c

@@ -1199,11 +1199,7 @@ static int s3c_hsudc_stop(struct usb_gadget *gadget,
 	if (!hsudc)
 	if (!hsudc)
 		return -ENODEV;
 		return -ENODEV;
 
 
-	if (!driver || driver != hsudc->driver)
-		return -EINVAL;
-
 	spin_lock_irqsave(&hsudc->lock, flags);
 	spin_lock_irqsave(&hsudc->lock, flags);
-	hsudc->driver = NULL;
 	hsudc->gadget.speed = USB_SPEED_UNKNOWN;
 	hsudc->gadget.speed = USB_SPEED_UNKNOWN;
 	s3c_hsudc_uninit_phy();
 	s3c_hsudc_uninit_phy();
 
 
@@ -1222,7 +1218,9 @@ static int s3c_hsudc_stop(struct usb_gadget *gadget,
 	regulator_bulk_disable(ARRAY_SIZE(hsudc->supplies), hsudc->supplies);
 	regulator_bulk_disable(ARRAY_SIZE(hsudc->supplies), hsudc->supplies);
 
 
 	dev_info(hsudc->dev, "unregistered gadget driver '%s'\n",
 	dev_info(hsudc->dev, "unregistered gadget driver '%s'\n",
-			driver->driver.name);
+			hsudc->driver->driver.name);
+	hsudc->driver = NULL;
+
 	return 0;
 	return 0;
 }
 }