On Sun, 16 Feb 2014, vichy wrote: > it makes me a little confused. > if we try to send 108 bytes to FS iso ep over HS hub. > shouldn't we use below formula to calculate what bus time need for? > NS_TO_US (think_time + usb_calc_bus_time ( > dev->speed, is_input, 1, 108)); That should have the maxpacket size, not 108. > it seems no matter we transfer 108, 118, 140, even 188 bytes to FS iso > ep over HS hub. > The full/low bus time are all the same. That's right. The driver doesn't know how many bytes are going to be sent to the isochronous endpoint. All it knows is the maxpacket size. Therefore it has to assume that all packets will be the maximum size. See section 11.18.2 in the USB 2.0 spec: The host always uses the maximum data payload size for a full-/low-speed endpoint in doing its budgeting. Alan Stern -- 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