Messages in this thread | | | Date | Tue, 24 Nov 2009 10:27:55 +0100 | From | Clemens Ladisch <> | Subject | Re: PATCH: fix multiple eMagic 6|2m regressions introduced in 2.6.27 |
| |
Monty Montgomery wrote: > The eMagic driver code cleanup from 2.6.26->2.6.27 introduces three > new bugs that prevent the emi62 usb audio device from working. 2.6.31 > continues to be identically broken. Note that this is the 6|2, not the > 2|6; the 2|6 works properly. The 6|2 does not function at all and will > oops the kernel when plugged in.
This has been discussed in this thread: http://lists.linuxaudio.org/pipermail/linux-audio-user/2009-November/064931.html
> Bug 1: a mirror of the loop termination bug that was fixed in the 2|6 > driver last January, causing a similar oops as the 2|6 did in 2.6.27.
My patch for this has already been picked up by akpm.
> Bug 2: the firmware load loop that is supposed to load the firmware > section that sits in the device's RAM mistakenly uses > ANCHOR_LOAD_EXTERNAL instead of ANCHOR_LOAD_INTERNAL, a bug from > copy/pasting out of the preceeding loop. This is clearly a regression > from the 2.6.26 source which uses the proper target. > > Bug 3: Fixing the first two problems prevents the oops and allows the > USB stack to successfully allocate an endpoint without crashing the > eMagic. However, the eMagic crashes and lights its red INTERNAL ERROR > led later as it tries to start up. This problem can be traced to the > linux/firmware/emi62/bistream.HEX file, which is loading different > FPGA firmware as compared to the driver pre-2.6.27. > [...] > Due to the size of the patch (the replacement firmware file is 250kB), > I've not attached it but rather stashed it at: > > http://web.mit.edu/xiphmont/Public/emi/emi62.patch
I don't have much time; David, please handle this.
Clemens
| |