Thanks, Peter, please find below the first results from the “speed issue” analysis:
1.) I contrasted the URB chunks received in “simtrace host” with the usbmon output. =>
There is a 100% match. No data is lost in the “simtrace host program”.
2.) I increased and decreased the buffer size (rctx) of the firmware. => If there were
bytes lost, than always between URB chunks. Decreasing the buffer size improved the
situation a lot! Reducing the buffer size from 128B (default) to 32B almost eliminated the
lost byte problem (1 of 5 failed). With a buffer size of 16B I never had a lost byte.
=> Conclusion: The send_rctx with a “large” buffer is so expensive, that we are loosing
bytes while sending the chunk.
It solved the problem for me, by setting the buffer to 16B. However any idea how we could
lighten the send data process? Any other conclusions?
Regards,
Ben
On Feb 17, 2012, at 12:11 AM, Peter Stuge wrote:
Myonium wrote:
I printed out the URB from simtrace.
You could have a look using usbmon as well. mount debugfs, then build
and run
http://people.redhat.com/zaitcev/linux/usbmon-6.tar.gz on
the bus.
//Peter