Date: Tue, 27 Oct 2020 04:31:56 -0700 From: Mark Millard <marklmi@yahoo.com> To: Hans Petter Selasky <hps@selasky.org> Cc: freebsd-arm <freebsd-arm@freebsd.org> Subject: Re: A RPi4 xHCI VL805 problem that needs to be avoided: "xhci: quirks: add link TRB quirk for VL805" Message-ID: <1FE53A64-DD67-41FA-8EF1-CD8D222947DB@yahoo.com> In-Reply-To: <0b70dbc4-f118-29bc-d814-8fc0a5669382@selasky.org> References: <FD9CBF82-36D5-4650-8F8C-FAE0688E6F68.ref@yahoo.com> <FD9CBF82-36D5-4650-8F8C-FAE0688E6F68@yahoo.com> <0b70dbc4-f118-29bc-d814-8fc0a5669382@selasky.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On 2020-Oct-27, at 01:02, Hans Petter Selasky <hps at selasky.org> = wrote: > On 2020-10-27 00:58, Mark Millard via freebsd-arm wrote: >> https://github.com/raspberrypi/linux/pull/3929 reports: >> QUOTE >> The VL805 controller can't cope with the TR Dequeue Pointer for an = endpoint >> being set to a Link TRB. The hardware-maintained endpoint context = ends up >> stuck at the address of the Link TRB, leading to erroneous ring = expansion >> events whenever the enqueue pointer wraps to the dequeue position. >> If the search for the end of the current TD and ring cycle state = lands on >> a Link TRB, move to the next segment. >> END QUOTE >> Also: Dealing with the link trb also toggling the ring cycle state >> is something to watch for according to the later notes. >=20 > Is this an issue under FreeBSD too? Can it be reproduced? >=20 I've no clue how to set up a test to see if FreeBSD can set the TR = Dequeue Pointer for an end point to a Link TRB vs. showing that it somehow = avoids doing that. I reported it on just the basis of the claim that the controller = mishandles the condition if it occurs. =3D=3D=3D Mark Millard marklmi at yahoo.com ( dsl-only.net went away in early 2018-Mar)
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1FE53A64-DD67-41FA-8EF1-CD8D222947DB>