[alsa-devel] [bisected] lx6464es fails to open a second time

Clemens Ladisch clemens at ladisch.de
Tue Nov 22 08:42:15 CET 2011


Tim Blechmann wrote:
> some time ago, i've been developing the driver for the lx6464es ethersound
> sound card, which has been included into the kernel for some time. however i
> haven't been able to use it in kernels after 2.6.33.
> 
> today, i was able to bisect the issue and the first bad commit is:
> 
> commit 6175ddf06b6172046a329e3abfd9c901a43efd2e
> Author: Brian Gerst <brgerst at gmail.com>
> Date:   Fri Feb 5 09:37:07 2010 -0500
> 
>     x86: Clean up mem*io functions.
> 
> the communication with the device is done by passing simple commands via
> memcpy_fromio and memcpy_toio (compare sound/pci/lx6464es/lx_core.c, lines 75
> to 99). any idea, what is going wrong there?

The old and new implementations of memcpy_*io do not have any differences
in the documented API, but the new ones are much more optimized, so they
might not use 8- or 32-bit accesses or a different access pattern.

Does the card's mapped I/O region behave exactly like memory, or has it
any restrictions on how it can be used?  In the latter case, you should
implement your readbuf/writebuf functions by hand to use plain 32-bit
accesses in order (or whatever is required).


Regards,
Clemens


More information about the Alsa-devel mailing list