On Thu, 2005-03-31 at 09:15 +1000, Benjamin Herrenschmidt wrote: Apple can't "ignore" that, it's simply not possible, > unless they actually send two packets and the USB stack itself is > coalescing them... I wouldn't be too sure about that, quoting the specs: (page 44) The bus frequency and frame timing limit the maximum number of successful interrupt transactions within a frame for any USB system to less than 108 full-speed one-byte data payloads or 14 low-speed one-byte data payloads. A Host Controller, for various implementation reasons, may not be able to provide the above maximum number of interrupt transactions per frame. (so 81 bytes fit since I think the kb/trackpad is connected via it's own controller -- which is really necessary even at 64 bytes/msec) Also: (page 43) All Host Controllers are required to have support for up to 64-byte maximum data payload sizes for full-speed interrupt endpoints and eight bytes or less maximum data payload sizes for low-speed interrupt endpoints. No Host Controller is required to support larger maximum data payload sizes. I'd read that as: "if the host controller does it it doesn't hurt to try" Maybe I'll try compiling/installing his kernel version and testing my driver with it. I'll be collecting some data and moving this to linux-usb-devel. johannes
Attachment:
signature.asc
Description: This is a digitally signed message part