int usb_drv_cleanup_last_transfer(int endpoint, bool send) { int pipe = endpoint * 2 + (send ? 1 : 0); int i=0; struct queue_head* qh = &qh_array[pipe]; logf("enter usb_drv_cleanup_last_transfer"); for(i=0;i>DTD_RESERVED_PIPE_OFFSET == pipe) { //td_array[i].reserved = 0; } } qh->first_td = DTD_NEXT_TERMINATE; logf("exit usb_drv_cleanup_last_transfer"); return 0; }