/* Frees an output endpoint. May be called when ep hasn't been initialized completely.  */
static void snd_usbmidi_out_endpoint_delete(struct snd_usb_midi_out_endpoint *ep)
/* Frees an output endpoint. May be called when ep hasn't been initialized completely.  */
static void snd_usbmidi_out_endpoint_delete(struct snd_usb_midi_out_endpoint *ep)
{
	unsigned int i;
	for (i = 0; i < OUTPUT_URBS; ++i)
		if (ep->urbs[i].urb)
			free_urb_and_buffer(ep->umidi, ep->urbs[i].urb,
					    ep->max_transfer);
	kfree(ep);
}