Only clear stall if endpoint is stalled. From FreeBSD.

This commit is contained in:
augustss 2001-12-31 11:54:06 +00:00
parent e5fc1d934a
commit 0a3269865e
1 changed files with 4 additions and 3 deletions

View File

@ -1,4 +1,4 @@
/* $NetBSD: ugen.c,v 1.51 2001/11/13 07:59:32 augustss Exp $ */
/* $NetBSD: ugen.c,v 1.52 2001/12/31 11:54:06 augustss Exp $ */
/* $FreeBSD: src/sys/dev/usb/ugen.c,v 1.26 1999/11/17 22:33:41 n_hibma Exp $ */
/*
@ -40,7 +40,7 @@
#include <sys/cdefs.h>
__KERNEL_RCSID(0, "$NetBSD: ugen.c,v 1.51 2001/11/13 07:59:32 augustss Exp $");
__KERNEL_RCSID(0, "$NetBSD: ugen.c,v 1.52 2001/12/31 11:54:06 augustss Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@ -800,7 +800,8 @@ ugenintr(usbd_xfer_handle xfer, usbd_private_handle addr, usbd_status status)
if (status != USBD_NORMAL_COMPLETION) {
DPRINTF(("ugenintr: status=%d\n", status));
usbd_clear_endpoint_stall_async(sce->pipeh);
if (status == USBD_STALLED)
usbd_clear_endpoint_stall_async(sce->pipeh);
return;
}