On Wed, Dec 28, 2022 at 09:59:03AM +0100, Oliver Neukum wrote:
On 27.12.22 22:07, Wesley Cheng wrote:
Hmmm...maybe I should change the name of the API then to avoid the confusion. Yes, usb_hcd_flush_endpoint() does ensure that URBs submitted to the EP are stopped. However, with this offloading concept, we aren't actually submitting URBs from the main processor, so the ep->urb_list will be empty.
This means the usb_hcd_flush_endpoint() API won't actually do anything. What we need is to ensure that we send a XHCI stop ep command to the controller.
That is a concept specific to XHCI, yet you are adding a generic API. The namin should reflect that. usb_quiesce_endpoint() ?
Or even xhci_send_stop_ep_cmd(), which is what the routine is intended to do.
Alan Stern