Only clear the endpoint on stall (from FreeBSD).
This commit is contained in:
parent
901a3da087
commit
c5a4cc1291
|
@ -1,4 +1,4 @@
|
|||
/* $NetBSD: uhub.c,v 1.49 2001/01/21 19:00:06 augustss Exp $ */
|
||||
/* $NetBSD: uhub.c,v 1.50 2001/09/28 23:42:16 augustss Exp $ */
|
||||
/* $FreeBSD: src/sys/dev/usb/uhub.c,v 1.18 1999/11/17 22:33:43 n_hibma Exp $ */
|
||||
|
||||
/*
|
||||
|
@ -565,10 +565,10 @@ uhub_intr(usbd_xfer_handle xfer, usbd_private_handle addr, usbd_status status)
|
|||
struct uhub_softc *sc = addr;
|
||||
|
||||
DPRINTFN(5,("uhub_intr: sc=%p\n", sc));
|
||||
if (status != USBD_NORMAL_COMPLETION)
|
||||
if (status == USBD_STALLED)
|
||||
usbd_clear_endpoint_stall_async(sc->sc_ipipe);
|
||||
|
||||
usb_needs_explore(sc->sc_hub);
|
||||
else if (status == USBD_NORMAL_COMPLETION)
|
||||
usb_needs_explore(sc->sc_hub);
|
||||
}
|
||||
|
||||
#if defined(__FreeBSD__)
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
/* $NetBSD: ukbd.c,v 1.66 2001/04/06 22:54:15 augustss Exp $ */
|
||||
/* $NetBSD: ukbd.c,v 1.67 2001/09/28 23:42:17 augustss Exp $ */
|
||||
|
||||
/*
|
||||
* Copyright (c) 1998 The NetBSD Foundation, Inc.
|
||||
|
@ -514,7 +514,8 @@ ukbd_intr(xfer, addr, status)
|
|||
|
||||
if (status) {
|
||||
DPRINTF(("ukbd_intr: status=%d\n", status));
|
||||
usbd_clear_endpoint_stall_async(sc->sc_intrpipe);
|
||||
if (status == USBD_STALLED)
|
||||
usbd_clear_endpoint_stall_async(sc->sc_intrpipe);
|
||||
return;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue