} else {
INIT_LIST_HEAD(&ep->schedule);
- ep->udev = udev;
+ ep->udev = usb_get_dev(udev);
ep->epnum = epnum;
ep->maxpacket = usb_maxpacket(udev, urb->pipe, is_out);
ep->defctrl = SL11H_HCTLMASK_ARM | SL11H_HCTLMASK_ENABLE;
if (!list_empty(&hep->urb_list))
WARN("ep %p not empty?\n", ep);
+ usb_put_dev(ep->udev);
kfree(ep);
hep->hcpriv = NULL;
}