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

_______________________________________________
freebsd-usb@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-usb
To unsubscribe, send any mail to "freebsd-usb-unsubscr...@freebsd.org"

Reply via email to