Date: Thu, 1 Oct 2009 18:37:16 +0000 (UTC) From: Andrew Thompson <thompsa@FreeBSD.org> To: cvs-src-old@freebsd.org Subject: cvs commit: src/sys/dev/usb/controller ehci.c Message-ID: <200910011837.n91IbZ85052800@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
thompsa 2009-10-01 18:37:16 UTC FreeBSD src repository Modified files: sys/dev/usb/controller ehci.c Log: SVN rev 197682 on 2009-10-01 18:37:16Z by thompsa EHCI Hardware BUG workaround The EHCI HW can use the qtd_next field instead of qtd_altnext when a short packet is received. This contradicts what is stated in the EHCI datasheet. Also the total-bytes field in the status field of the following TD gets corrupted upon reception of a short packet! We work this around in software by not queueing more than one job/TD at a time of up to 16Kbytes! The bug has been seen on multiple INTEL based EHCI chips. Other vendors have not been tested yet. - Applications using /dev/usb/X.Y.Z, where Z is non-zero are affected, but not applications using LibUSB v0.1, v1.2 and v2.0. - Mass Storage (umass) is affected. Submitted by: Hans Petter Selasky MFC after: 3 days Revision Changes Path 1.28 +57 -21 src/sys/dev/usb/controller/ehci.c
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200910011837.n91IbZ85052800>