It seems to happen quite often that trying to make one change ends up requiring changes to a whole bunch of other things first. That's my situation now.
Ultimately I want to remove references to urb->status from the HCDs and usbcore. This turned out to be complicated by the need to unlink URBs reliably. That will be taken care of by moving responsibility for adding and removing URBs from endpoint queues out of usbcore, into the HCDs. This in turn makes it necessary to add an endpoint pointer into the URB structure. But as long as the ep pointer is available, we don't really need the pipe and there's no good reason to keep it. Hence this first collection of patches is aimed at removing urb->pipe. To remove it completely would require a far-reaching API change, one that would affect every USB driver. I haven't gone that far; the pipe is still present. Instead these patches reduce the core's dependence on the pipe; references to it have been changed into references to the endpoint. Of course there's still a need for making similar changes to the HCDs and then all the other drivers. That can be done in time; it will be a large and error-prone job. This merely represents the first step. Until then urb->pipe and urb->ep can coexist peacefully. After this series will come some more patches for endpoint queue management and eventually the patches for urb->status. Some of those are written already but they aren't all finished yet. In the meantime, these patches are relatively small and self-contained. Alan Stern ------------------------------------------------------------------------- This SF.net email is sponsored by: Splunk Inc. Still grepping through log files to find problems? Stop. Now Search log events and configuration files using AJAX and a browser. Download your FREE copy of Splunk now >> http://get.splunk.com/ _______________________________________________ linux-usb-devel@lists.sourceforge.net To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-devel