Re: spec violation of xHCI?

From: Hans Petter Selasky <hps_at_bitfrost.no>
Date: Thu, 12 Dec 2013 08:47:02 +0100
On 12/12/13 08:15, Hans Petter Selasky wrote:
> On 12/12/13 01:59, Kohji Okuno wrote:
>
> Hi Kohji,
>
> Did you check using a USB analyzer what the difference is when setting
> the CHAIN bit and not setting the chain bit?
>
> I would guess that if you set the CHAIN-bit in this case, no ZLP will be
> sent, because the TRB is associated with the previous one.
>
> What endpoint type is this? BULK/CONTROL/INTR/ISOC
>
> What direction is this? IN or OUT?
>
> --HPS

Hi Kohji,

If there is no CHAIN bit in the IN-direction, my TD chain will receive 
multiple short packets. This is of course not correct. This only happens 
if you have very large buffers above 64KByte that don't fit in a single TD.

For OUT direction:
There are no short packets received, though errors can happen and those 
will stop the endpoint. Are we sure that by setting the CHAIN bit, that 
the HC's will transfer ZLP's if the length of the second last "TD" is a 
multiple of wMaxPacketSize and the last one has a length of zero bytes?

I will do some testing to verify the corner cases.

Thank you!

--HPS
Received on Thu Dec 12 2013 - 06:46:03 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:45 UTC