urbp = acep->urbp;
urbp->transfer_flags &= ~URB_ASYNC_UNLINK;
dbg ("unlink active urb");
- usb_kill_urb (urbp);
+ usb_unlink_urb (urbp);
}
}
endpoint. This function returns 0 if successful or an error code.
NOTE: no mutex please!
*/
-static void auerswald_int_release (pauerswald_t cp)
+static int auerswald_int_release (pauerswald_t cp)
{
+ int ret = 0;
dbg ("auerswald_int_release");
/* stop the int endpoint */
- if (cp->inturbp)
- usb_kill_urb (cp->inturbp);
+ if (cp->inturbp) {
+ ret = usb_unlink_urb (cp->inturbp);
+ if (ret)
+ dbg ("nonzero int unlink result received: %d", ret);
+ }
/* deallocate memory */
auerswald_int_free (cp);
+
+ return ret;
}
/* --------------------------------------------------------------------- */