USB_PipeHalt (SWI&5538E)

USB_PipeHalt (SWI&5538E) — Halts specified pipe.

On Entry

R0Pointer to pipe structure.
R1Reserved. Must be set to zero.
R2Reserved. Must be set to zero.

On Exit

R0preserved
R1Error code Table A.1, “Error codes used by the USB system”
R2Preserved

Use

Only an active pipe can be halted. The pipe is blocked for further transfers until it is closed or its reactivated. All requests for the given pipe will be aborted. In details this is meaning that all pending transactions are directly getting a result that they have been aborted. Afterwards all running transactions are informed that they are cancelled. It is task of the USB host controller driver to decide whether the transactions must be aborted or can be processed to the end. Normally this call will be used by the USB Module if an heavy error occurred at the pipe which can't be repaired. Applications can use this call too but they will normally prefer USB_PipeClear (SWI&5538D) to remove transactions from a pipe.

Related SWI's

USB_PipeOpen (SWI&5538B)
USB_PipeClose (SWI&5538C)
USB_PipeClear (SWI&5538D)