Dear Alexis,
The AsyncSchedSleepTime period is mentioned in the EHCI standard. It is described in the Operational Model, Asynchronous Schedule section (4.8.4), as an 'example method for restarting asynchronous schedule traversal'.
I don't know that it can be controlled by application software, as it is not mentioned in the Register Interface section (2), or the Data Structures section (3) and I cannot find any references to it, or hints of its existence, in the UM10503 User Manual.
I don't know of any other way I could slow down the IN polling and I don't really want to be stuck with a whole bunch of USB 2.10 Flash drives that our customers can't use. I've tried another of our products, which uses a different (non-NXP) micro controller to do the USB host, and that uses a 25 µs asynchronous schedule period, like the PC and it also works. The Flash drive manufacturer's technical support has suggested that the STALL is due to "a speed issue", although they were not very specific.
It would be great if there is a mechanism by which I can change the asynchronous schedule traversal timing, but I would not be surprised if there is not, as it does appear to be an internal, implementation-specific, non-mandatory detail.
Best regards,
Mike