Lines Matching full:transfer
81 /* This transfer is used for generic control endpoint transfers */
93 /* This transfer is used for generic clear stall only */
108 /* This transfer is used for generic control endpoint transfers */
119 /* This transfer is used for generic clear stall only */
163 * can transfer multiple consecutive packets.
447 * usbd_transfer_setup_sub - transfer setup subroutine
451 * transfer. This function will setup correct packet sizes, buffer
604 /* check interrupt interval and transfer pre-delay */ in usbd_transfer_setup_sub()
818 * initial frame lengths when a USB transfer is complete. This in usbd_transfer_setup_sub()
1141 * transfer when such a combination is not in usbd_transfer_setup()
1190 /* set transfer endpoint pointer */ in usbd_transfer_setup()
1193 /* set transfer stream ID */ in usbd_transfer_setup()
1201 * Call the Host or Device controller transfer in usbd_transfer_setup()
1238 * Transfer is successfully setup and in usbd_transfer_setup()
1451 * HINT: when you start/stop a transfer, it might be a in usbd_transfer_unsetup()
1508 * transfer any data. In USB Host Mode we already have the SETUP
1509 * packet at the moment the USB transfer is started. This leads us to
1510 * having to setup the USB transfer at two different places in
1511 * time. This function just contains factored out control transfer
1575 /* the control transfer is no longer active */ in usbd_setup_ctrl_transfer()
1579 /* don't stall control transfer by default */ in usbd_setup_ctrl_transfer()
1586 * If you need to split a control transfer, you in usbd_setup_ctrl_transfer()
1598 * transfer in progress: in usbd_setup_ctrl_transfer()
1606 /* setup control transfer */ in usbd_setup_ctrl_transfer()
1633 DPRINTF("Misconfigured transfer\n"); in usbd_setup_ctrl_transfer()
1648 /* set transfer-header flag */ in usbd_setup_ctrl_transfer()
1670 /* check if we are doing a short transfer */ in usbd_setup_ctrl_transfer()
1678 DPRINTFN(0, "Short control transfer without " in usbd_setup_ctrl_transfer()
1713 * usbd_transfer_submit - start USB hardware for the given transfer
1744 /* Only open the USB transfer once! */ in usbd_transfer_submit()
1762 * Check if the transfer is waiting on a queue, most in usbd_transfer_submit()
1780 /* by default we cannot cancel any USB transfer immediately */ in usbd_transfer_submit()
1814 /* start the transfer */ in usbd_transfer_submit()
1830 /* compute total transfer length */ in usbd_transfer_submit()
1846 /* check if this is a control transfer */ in usbd_transfer_submit()
1857 * Setup filtered version of some transfer flags, in usbd_transfer_submit()
1867 /* check for control transfer */ in usbd_transfer_submit()
1892 /* insert the USB transfer last in the BUS-DMA queue */ in usbd_transfer_submit()
1898 * Enter the USB transfer into the Host Controller or in usbd_transfer_submit()
1920 /* the transfer can now be cancelled */ in usbd_pipe_enter()
1923 /* enter the transfer */ in usbd_pipe_enter()
1926 /* check for transfer error */ in usbd_pipe_enter()
1934 /* start the transfer */ in usbd_pipe_enter()
1940 * usbd_transfer_start - start an USB transfer
1943 * result in a single transfer start, until the USB transfer
1950 /* transfer is gone */ in usbd_transfer_start()
1955 /* mark the USB transfer started */ in usbd_transfer_start()
1963 /* check if the USB transfer callback is already transferring */ in usbd_transfer_start()
1969 /* call the USB transfer callback */ in usbd_transfer_start()
1975 * usbd_transfer_stop - stop an USB transfer
1978 * result in a single transfer stop.
1988 /* transfer is gone */ in usbd_transfer_stop()
1993 /* check if the USB transfer was ever opened */ in usbd_transfer_stop()
2005 /* try to stop the current USB transfer */ in usbd_transfer_stop()
2019 * Check if we can cancel the USB transfer immediately. in usbd_transfer_stop()
2053 * If the current USB transfer is completing we need in usbd_transfer_stop()
2068 * This function will check if an USB transfer is pending which is a
2072 * 1: Pending: The USB transfer will receive a callback in the future.
2081 /* transfer is gone */ in usbd_transfer_pending()
2112 * This function will stop the USB transfer and wait for any
2124 /* transfer is gone */ in usbd_transfer_drain()
2138 * transfer mutex. In that case checking only in usbd_transfer_drain()
2140 * the USB transfer is fully drained. We also need to in usbd_transfer_drain()
2147 * transfer is complete ! in usbd_transfer_drain()
2233 * time the transfer was submitted. This function can be used to
2235 * when an isochronous transfer has completed.
2263 * of the USB DMA buffer allocated for this USB transfer.
2405 * 6) HW completed transfer during callback in usbd_callback_wrapper()
2415 * transfer queues get a chance. in usbd_callback_wrapper()
2424 * 1) We are starting a transfer in usbd_callback_wrapper()
2425 * 2) We are prematurely calling back a transfer in usbd_callback_wrapper()
2426 * 3) We are stopping a transfer in usbd_callback_wrapper()
2430 /* get next USB transfer in the queue */ in usbd_callback_wrapper()
2510 /* "usbd_transfer_drain()" is waiting for end of transfer */ in usbd_callback_wrapper()
2525 * transfer. This code path is usually only used when there is an USB
2542 * - This function is used to remove an USB transfer from a USB
2543 * transfer queue.
2562 * - This function is used to insert an USB transfer into a USB *
2563 * transfer queue.
2571 * Insert the USB transfer into the queue, if it is not in usbd_transfer_enqueue()
2572 * already on a USB transfer queue: in usbd_transfer_enqueue()
2583 * - This function is used to remove an USB transfer from the busdma,
2586 * - This function is used to queue the USB transfer on the done
2589 * - This function is used to stop any USB transfer timeouts.
2602 * This can happen during transfer cancel. in usbd_transfer_done()
2606 /* end of control transfer, if any */ in usbd_transfer_done()
2610 /* only set transfer error, if not already set */ in usbd_transfer_done()
2618 * If we are waiting on a queue, just remove the USB transfer in usbd_transfer_done()
2652 /* call the USB transfer callback */ in usbd_transfer_done()
2659 * This function is called to start the USB transfer when
2677 /* the transfer can now be cancelled */ in usbd_transfer_start_cb()
2680 /* start USB transfer, if no error */ in usbd_transfer_start_cb()
2684 /* check for transfer error */ in usbd_transfer_start_cb()
2715 * queues a zero-length USB transfer if the flag was set.
2797 * This function is used to add an USB transfer to the pipe transfer list.
2859 * The transfer will be continued when in usbd_pipe_start()
2888 * 1) Start the first transfer queued. in usbd_pipe_start()
2890 * 2) Re-start the current USB transfer. in usbd_pipe_start()
2894 * pre transfer start delay: in usbd_pipe_start()
2911 /* the transfer can now be cancelled */ in usbd_pipe_start()
2914 /* start USB transfer, if no error */ in usbd_pipe_start()
2918 /* check for transfer error */ in usbd_pipe_start()
2929 * transfer. If the timeout has been deferred the callback given by
2946 * - This function will update variables in an USB transfer after
2947 * that the USB transfer is complete.
2949 * - This function is used to start the next USB transfer on the
2950 * ep transfer queue, if any.
2952 * NOTE: In some special cases the USB transfer will not be removed from
2953 * the pipe queue, but remain first. To enforce USB transfer removal call
3062 /* end of control transfer, if any */ in usbd_callback_wrapper_sub()
3091 /* end of control transfer, if any */ in usbd_callback_wrapper_sub()
3098 "Short Transfer on endpoint %p.\n", in usbd_callback_wrapper_sub()
3106 * control transfer: in usbd_callback_wrapper_sub()
3109 DPRINTFN(5, "xfer=%p: Control transfer " in usbd_callback_wrapper_sub()
3119 * If the current USB transfer is completing we need to start the in usbd_callback_wrapper_sub()
3128 /* there is another USB transfer waiting */ in usbd_callback_wrapper_sub()
3130 /* this is the last USB transfer */ in usbd_callback_wrapper_sub()
3144 * transfer.
3151 * If the transfer is not already processing, in usb_command_wrapper()
3212 * transfer.
3237 * starting the USB transfer must be in usbd_ctrl_transfer_setup()
3262 * Unsetup any existing USB transfer: in usbd_ctrl_transfer_setup()
3272 * Try to setup a new USB transfer for the in usbd_ctrl_transfer_setup()
3281 "USB transfer\n"); in usbd_ctrl_transfer_setup()
3329 * xfer1: Clear Stall Control Transfer
3330 * xfer2: Stalled USB Transfer
3393 /* copy in the transfer */ in usbd_clear_stall_callback()
3443 continue; /* no USB transfer */ in usbd_transfer_poll()
3475 /* make sure that the transfer mutex is not locked */ in usbd_transfer_poll()
3511 /* restore transfer mutex */ in usbd_transfer_poll()
3664 * transfer was completed by the hardware. The returned value wraps
3703 * Check if it is the first transfer or if the future frame in usbd_xfer_get_isochronous_start_frame()
3710 /* Schedule transfer 2 milliseconds into the future. */ in usbd_xfer_get_isochronous_start_frame()