USB_PipeHalt (SWI&5538E) — Halts specified pipe.
R0 | Pointer to pipe structure. |
R1 | Reserved. Must be set to zero. |
R2 | Reserved. Must be set to zero. |
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.