Date: Thu, 15 Jul 2021 10:39:32 GMT From: Hans Petter Selasky <hselasky@FreeBSD.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org Subject: git: 65788dae3117 - main - Cleanup unused USB enums. Message-ID: <202107151039.16FAdW2W081083@gitrepo.freebsd.org>
next in thread | raw e-mail | index | archive | help
The branch main has been updated by hselasky: URL: https://cgit.FreeBSD.org/src/commit/?id=65788dae3117ed307d8d507a06a43f2b32d342fa commit 65788dae3117ed307d8d507a06a43f2b32d342fa Author: Hans Petter Selasky <hselasky@FreeBSD.org> AuthorDate: 2021-07-15 10:38:16 +0000 Commit: Hans Petter Selasky <hselasky@FreeBSD.org> CommitDate: 2021-07-15 10:38:42 +0000 Cleanup unused USB enums. MFC after: 1 week Sponsored by: NVIDIA Networking --- sys/dev/usb/usb_transfer.h | 117 +++------------------------------------------ 1 file changed, 7 insertions(+), 110 deletions(-) diff --git a/sys/dev/usb/usb_transfer.h b/sys/dev/usb/usb_transfer.h index 91f4f6790b31..60841f473334 100644 --- a/sys/dev/usb/usb_transfer.h +++ b/sys/dev/usb/usb_transfer.h @@ -30,119 +30,16 @@ #define _USB_TRANSFER_H_ /* - * Definition of internal USB transfer states: - * =========================================== + * A few words about USB transfer states: + * ====================================== * - * The main reason there are many USB states is that we are allowed to - * cancel USB transfers, then start the USB transfer again and that - * this state transaction cannot always be done in a single atomic - * operation without blocking the calling thread. One reason for this - * is that the USB hardware sometimes needs to wait for DMA - * controllers to finish which is done asynchronously and grows the - * statemachine. - * - * When extending the following statemachine there are basically two - * things you should think about: Which states should be executed or - * modified in case of USB transfer stop and which states should be - * executed or modified in case of USB transfer start. Also respect - * the "can_cancel_immed" flag which basically tells if you can go - * directly from a wait state to the cancelling states. + * USB transfers can have multiple states, because they can be + * cancelled and started again and this cannot always be done + * atomically under a mutex. One reason for this is that the USB + * hardware sometimes needs to wait for DMA controllers to finish + * which is done asynchronously and grows the statemachine. */ -enum { - /* XFER start execute state */ - - /* USB_ST_SETUP = 0 (already defined) */ - - /* XFER transferred execute state */ - - /* USB_ST_TRANSFERRED = 1 (already defined) */ - - /* XFER error execute state */ - - /* USB_ST_ERROR = 2 (already defined) */ - - /* XFER restart after error execute state */ - - USB_ST_RESTART = 8, - - /* XFER transfer idle state */ - - USB_ST_WAIT_SETUP, - - /* Other XFER execute states */ - - USB_ST_PIPE_OPEN = 16, - USB_ST_PIPE_OPEN_ERROR, - USB_ST_PIPE_OPEN_RESTART, - - USB_ST_BDMA_LOAD, - USB_ST_BDMA_LOAD_ERROR, - USB_ST_BDMA_LOAD_RESTART, - - USB_ST_IVAL_DLY, - USB_ST_IVAL_DLY_ERROR, - USB_ST_IVAL_DLY_RESTART, - - USB_ST_PIPE_STALL, - USB_ST_PIPE_STALL_ERROR, - USB_ST_PIPE_STALL_RESTART, - - USB_ST_ENTER, - USB_ST_ENTER_ERROR, - USB_ST_ENTER_RESTART, - - USB_ST_START, - USB_ST_START_ERROR, - USB_ST_START_RESTART, - - USB_ST_PIPE_CLOSE, - USB_ST_PIPE_CLOSE_ERROR, - USB_ST_PIPE_CLOSE_RESTART, - - USB_ST_BDMA_DLY, - USB_ST_BDMA_DLY_ERROR, - USB_ST_BDMA_DLY_RESTART, - - /* XFER transfer wait states */ - - USB_ST_WAIT_PIPE_OPEN = 64, - USB_ST_WAIT_PIPE_OPEN_ERROR, - USB_ST_WAIT_PIPE_OPEN_RESTART, - - USB_ST_WAIT_BDMA_LOAD, - USB_ST_WAIT_BDMA_LOAD_ERROR, - USB_ST_WAIT_BDMA_LOAD_RESTART, - - USB_ST_WAIT_IVAL_DLY, - USB_ST_WAIT_IVAL_DLY_ERROR, - USB_ST_WAIT_IVAL_DLY_RESTART, - - USB_ST_WAIT_PIPE_STALL, - USB_ST_WAIT_PIPE_STALL_ERROR, - USB_ST_WAIT_PIPE_STALL_RESTART, - - USB_ST_WAIT_ENTER, - USB_ST_WAIT_ENTER_ERROR, - USB_ST_WAIT_ENTER_RESTART, - - USB_ST_WAIT_START, - USB_ST_WAIT_START_ERROR, - USB_ST_WAIT_START_RESTART, - - USB_ST_WAIT_PIPE_CLOSE, - USB_ST_WAIT_PIPE_CLOSE_ERROR, - USB_ST_WAIT_PIPE_CLOSE_RESTART, - - USB_ST_WAIT_BDMA_DLY, - USB_ST_WAIT_BDMA_DLY_ERROR, - USB_ST_WAIT_BDMA_DLY_RESTART, - - USB_ST_WAIT_TRANSFERRED, - USB_ST_WAIT_TRANSFERRED_ERROR, - USB_ST_WAIT_TRANSFERRED_RESTART, -}; - /* * The following structure defines the messages that is used to signal * the "done_p" USB process.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202107151039.16FAdW2W081083>