On 9/29/07, ST st@iss.tu-darmstadt.de wrote:
So my question is now, is the 250Mhz ARM really to slow or is there any chance that there is an error in either the usb stack or the driver exposed only on the ARM architecture? Things speaking for the latter are: *Error allways in the 65536-65540 value. *Error happens most of the times after about 50secs.
I've had usb-related error messages with the Tascam US-428 on my AMD 64x2 4600. It looks like you've got a 32-bit error code integer being forced into an unsigned 16-bit integer, or some function is returning -1 in a 16-bit integer (which would be 65535 if unsigned), and the driver is putting it in a 32-bit integer without sign extension and incrementing it as though it is the number of the usb frame. Look through the driver code to see where that value is assigned to a variable, and find out what function is doing it. Basically, since it's happening right after the limits of a 16-bit integer, I'd say it's either an overflow error, or an error code is being returned in the wrong kind of variable (signed vs. unsigned). In my case, what solved my USB error messages was disabling PowerNow CPU frequency scaling.
Mike Bourgeous