diff options
author | Christopher Pascoe <pascoe@cvs.openbsd.org> | 2005-03-07 11:12:05 +0000 |
---|---|---|
committer | Christopher Pascoe <pascoe@cvs.openbsd.org> | 2005-03-07 11:12:05 +0000 |
commit | e53a0cb5d419926b8555ed36af032df7aa3a6d6a (patch) | |
tree | 768a7b4a876baee437e105f82fd21a79e3a666eb /sys/dev/usb/ehcivar.h | |
parent | fd9399343260e05d83411f4cc5afd7a8fc405a8c (diff) |
Add a workaround for VIA EHCI controllers which, under load, signal qTD
completion before they have performed writeback from the overlay qTD.
This condition would exhibit itself as a umass stall that never recovers.
ok dlg@
Diffstat (limited to 'sys/dev/usb/ehcivar.h')
-rw-r--r-- | sys/dev/usb/ehcivar.h | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/sys/dev/usb/ehcivar.h b/sys/dev/usb/ehcivar.h index bdfde1445b0..8e79b5fd3e4 100644 --- a/sys/dev/usb/ehcivar.h +++ b/sys/dev/usb/ehcivar.h @@ -1,4 +1,4 @@ -/* $OpenBSD: ehcivar.h,v 1.7 2004/12/29 01:52:27 dlg Exp $ */ +/* $OpenBSD: ehcivar.h,v 1.8 2005/03/07 11:12:04 pascoe Exp $ */ /* $NetBSD: ehcivar.h,v 1.12 2001/12/31 12:16:57 augustss Exp $ */ /* @@ -92,6 +92,8 @@ typedef struct ehci_softc { bus_space_handle_t ioh; bus_size_t sc_size; u_int sc_offs; /* offset to operational regs */ + int sc_flags; /* misc flags */ +#define EHCIF_DROPPED_INTR_WORKAROUND 0x01 char sc_vendor[16]; /* vendor string for root hub */ int sc_id_vendor; /* vendor ID for root hub */ @@ -131,6 +133,7 @@ typedef struct ehci_softc { struct lock sc_doorbell_lock; usb_callout_t sc_tmo_pcd; + usb_callout_t sc_tmo_intrlist; device_ptr_t sc_child; /* /dev/usb# device */ |