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

Reply via email to