Loading drivers/usb/gadget/android.c +17 −6 Original line number Original line Diff line number Diff line Loading @@ -532,6 +532,7 @@ static void android_disable(struct android_dev *dev) struct android_configuration *conf; struct android_configuration *conf; if (dev->disable_depth++ == 0) { if (dev->disable_depth++ == 0) { if (gadget_is_dwc3(cdev->gadget)) { /* Cancel pending control requests */ /* Cancel pending control requests */ usb_ep_dequeue(cdev->gadget->ep0, cdev->req); usb_ep_dequeue(cdev->gadget->ep0, cdev->req); Loading @@ -539,6 +540,16 @@ static void android_disable(struct android_dev *dev) usb_remove_config(cdev, &conf->usb_config); usb_remove_config(cdev, &conf->usb_config); usb_gadget_disconnect(cdev->gadget); usb_gadget_disconnect(cdev->gadget); dev->last_disconnect = ktime_get(); dev->last_disconnect = ktime_get(); } else { usb_gadget_disconnect(cdev->gadget); dev->last_disconnect = ktime_get(); /* Cancel pnding control requests */ usb_ep_dequeue(cdev->gadget->ep0, cdev->req); list_for_each_entry(conf, &dev->configs, list_item) usb_remove_config(cdev, &conf->usb_config); } } } } } Loading Loading
drivers/usb/gadget/android.c +17 −6 Original line number Original line Diff line number Diff line Loading @@ -532,6 +532,7 @@ static void android_disable(struct android_dev *dev) struct android_configuration *conf; struct android_configuration *conf; if (dev->disable_depth++ == 0) { if (dev->disable_depth++ == 0) { if (gadget_is_dwc3(cdev->gadget)) { /* Cancel pending control requests */ /* Cancel pending control requests */ usb_ep_dequeue(cdev->gadget->ep0, cdev->req); usb_ep_dequeue(cdev->gadget->ep0, cdev->req); Loading @@ -539,6 +540,16 @@ static void android_disable(struct android_dev *dev) usb_remove_config(cdev, &conf->usb_config); usb_remove_config(cdev, &conf->usb_config); usb_gadget_disconnect(cdev->gadget); usb_gadget_disconnect(cdev->gadget); dev->last_disconnect = ktime_get(); dev->last_disconnect = ktime_get(); } else { usb_gadget_disconnect(cdev->gadget); dev->last_disconnect = ktime_get(); /* Cancel pnding control requests */ usb_ep_dequeue(cdev->gadget->ep0, cdev->req); list_for_each_entry(conf, &dev->configs, list_item) usb_remove_config(cdev, &conf->usb_config); } } } } } Loading