diff options
author | Martin Pieuchot <mpi@cvs.openbsd.org> | 2014-05-21 12:31:54 +0000 |
---|---|---|
committer | Martin Pieuchot <mpi@cvs.openbsd.org> | 2014-05-21 12:31:54 +0000 |
commit | b6fe2ce2891845c7cb5c8d1cc68ed0eb85fbd23b (patch) | |
tree | 9162898bbfa1a1edded24cd80fa943abff9cd597 | |
parent | b2d05937dc8f5504bcf8cb9294829279c79dfe05 (diff) |
Handle the stall condition just like the bable one since in both cases
the ring is halted.
Do not bother reporting USBD_STALLED to the stack like other HC drivers
do since the endpoint is automatically reseted. What is the point of
this error apart from making sure driver authors will forget to call
usbd_clear_endpoint_stall_async() correctly?
The Renesas uPD720202 xHCI, provided by Stefan Wollny, now works as
expected.
-rw-r--r-- | sys/dev/usb/xhci.c | 7 |
1 files changed, 1 insertions, 6 deletions
diff --git a/sys/dev/usb/xhci.c b/sys/dev/usb/xhci.c index b79f1964b49..04f08e9de16 100644 --- a/sys/dev/usb/xhci.c +++ b/sys/dev/usb/xhci.c @@ -1,4 +1,4 @@ -/* $OpenBSD: xhci.c,v 1.12 2014/05/20 14:46:19 mpi Exp $ */ +/* $OpenBSD: xhci.c,v 1.13 2014/05/21 12:31:53 mpi Exp $ */ /* * Copyright (c) 2014 Martin Pieuchot @@ -673,12 +673,7 @@ xhci_event_xfer(struct xhci_softc *sc, uint64_t paddr, uint32_t status, xfer->actlen = xfer->length - remain; xfer->status = USBD_NORMAL_COMPLETION; break; -#if 0 case XHCI_CODE_STALL: - xfer->status = USBD_STALLED; - xp->halted = 1; - break; -#endif case XHCI_CODE_BABBLE: /* * Since the stack might try to start a new transfer as |