/* This is the main path for handing urbs back to drivers. The only other normal path is finish_unlinks(), which unlinks URBs using ed_rm_list, instead of scanning the (re-reversed) donelist as this does. There's an abnormal path too, handling a quirk in some Compaq silicon: URBs with TDs that appear to be orphaned are directly reclaimed.  */
static void dl_done_list(struct ohci_hcd *ohci)
/* This is the main path for handing urbs back to drivers. The only other normal path is finish_unlinks(), which unlinks URBs using ed_rm_list, instead of scanning the (re-reversed) donelist as this does. There's an abnormal path too, handling a quirk in some Compaq silicon: URBs with TDs that appear to be orphaned are directly reclaimed.  */
static void dl_done_list(struct ohci_hcd *ohci)
{
	struct td	*td = dl_reverse_done_list (ohci);
	while (td) {
		struct td	*td_next = td->next_dl_td;
		takeback_td(ohci, td);
		td = td_next;
	}
}