Well, it's a regression in the r6040 driver between 2.6.33 and 3.0, and you should report it as such to the kernel bugzilla. However, it still seems to be down from the breach.
You could use git bisect to find out exactly what change broke it; there only appear to be some dozen changes between these two kernel versions, so it'd only be a handful kernel builds. Teaching how to do that is rather out of scope for here.
One easy thing you could try is to build the latest RC kernel, to see if the bug is fixed already.