hi Alan: > I don't understand your question. > > At full speed (12 Mb/s), the time required to transfer 188 bytes is > > (188 bytes) * (8 bits/byte) / (12 b/us) = 125.33 us, > > which is greater than 125 us. @@ -1412,7 +1412,7 @@ sitd_slot_ok ( */ uf = uframe & 7; if (!tt_available(ehci, period_uframes >> 3, - stream->udev, frame, uf, stream->tt_usecs)) + stream->udev, frame, uf, stream->usecs)) if so, shall we modify code like above? Use transfer time instead of bus budget to calculate tt_avaiable? > >> > For each packet (token, data, and handshake), the overhead includes >> > inter-packet delay, cable delay, SYNC, bit-stuffing, and End-Of-Packet >> > -- all in addition to the PID, token, and CRC bytes. >> > >> > I don't know where you got that "13" from. If you assume the >> The 13 bytes I see is from usb spec section 5.8.4. > > Then you must have noticed the sentence just above Table 5-9: > > The table does not include the overhead associated with bit > stuffing. > > The table also doesn't include the overhead associated with cable > delay and intermediate hubs. > >> > inter-packet delays always require 1 byte time and count up the >> > inter-packet delays (3), SYNCs (3), token bytes (3), PID and CRC hytes >> > (3), and handshake (1), that adds up to 13 bytes of protocol overhead. >> > But it leaves out cable delay, bit-stuffing, and End-Of-Packet signals. >> > >> > You also have to remember that the spec allows the clock rate on >> > Full-Speed devices to vary by up to 0.25% of the nominal rate. >> so you mean FS speed will be 12M bits/s +- 30000 bits/s?(30000/12M = 0.25%) > > That's right. Also, Low-Speed devices are allowed to vary by up to > 1.5%, and High-Speed devices are allowed to vary by up to 0.05%. Appreciate your help, -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html