Hi, 2010/11/2 Anatolij Gustschin <ag...@denx.de>: > Checking the status field of the qTD token in the current code > do not take into acount cases where endpoint stall (halted) bit > is set together with XactErr status bit. As a result clearing > stall on an endpoint won't be done if this status bit was also > set. Check for halted bit and report USB_ST_STALLED status > if the host controller also indicates endpoit stall condition. > > Signed-off-by: Anatolij Gustschin <ag...@denx.de> > --- > drivers/usb/host/ehci-hcd.c | 2 ++ > 1 files changed, 2 insertions(+), 0 deletions(-) > > diff --git a/drivers/usb/host/ehci-hcd.c b/drivers/usb/host/ehci-hcd.c > index 982f96e..c7fba10 100644 > --- a/drivers/usb/host/ehci-hcd.c > +++ b/drivers/usb/host/ehci-hcd.c > @@ -491,6 +491,8 @@ ehci_submit_async(struct usb_device *dev, unsigned long > pipe, void *buffer, > break; > default: > dev->status = USB_ST_CRC_ERR; > + if ((token & 0x40) == 0x40) > + dev->status |= USB_ST_STALLED; > break; > } > dev->act_len = length - ((token >> 16) & 0x7fff);
Applied to u-boot-usb Thanks. Remy _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot