On Thu, Feb 14, 2002, Martin Diehl <[EMAIL PROTECTED]> wrote: > On Wed, 13 Feb 2002, Greg KH wrote: > > > > Yes, I do totally agree with David: there is absolutely _no_ debounce > > > interval (connect-detect-to-port-reset) implemented in 2.4.18-pre9 hub.c > > > > Good catch. I'll send out a patch in a bit to fix this. > > Me too - see below > > > > struct usb_port_status - which becomes the transfer_buffer for the > > > usb_control_msg) call. Mapping stack locations for PCI-DMA however is > > > > Bleah, yes this should be fixed. Patches _gladly_ accepted for this > > problem. > > Hi, > > the attached patch below addresses both problems: > > * usb_hub_port_debounce() provides the required debounce delay including > the "restart delay when spurious disconnect detected" behaviour > described in 7.1.7.1. However, I've used a minimum delay of 200ms > (instead TATTDB > 100ms) as this turned out to be needed to solve > the "not accepting new address" problem relyably for my usb-irda dongle. > I've kept the additional 400ms delay for low speed device as I wasn't > able to test whether this issue is still there. > Did some testing with both the usb-irda and the EZ-USB FX dev. board, > where the latter one turned out to be a pretty good trigger for connect/ > disconnect races on hub-port, when one starts repeatedly pressing the > reset/disconnect button - Looks good for me now! > > * usb_hub_port_status() was introduced to wrap the calls for > usb_get_port_status and uses a kmalloced temporary buffer instead > of exposing stack locations to PCI-DMA. Had it included during the > debounce tests and it work as expected for me. > > Patch created and tested with 2.4.18-pre9.
Excellent. Looks good to me. JE _______________________________________________ [EMAIL PROTECTED] To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-devel