[alsa-devel] [uclinux-dist-devel] [PATCH 1/4] Blackfin: Use 8bit spi transfers for the ad1836

Mark Brown broonie at opensource.wolfsonmicro.com
Fri May 6 14:48:59 CEST 2011

On Fri, May 06, 2011 at 02:28:32PM +0200, Lars-Peter Clausen wrote:

> The snd_soc_cache infrastructure has several helper functions for writing spi
> on a spi bus. The one used by the ad1836 was specifically added for the ad1836
> and is special compared to the other spi helper functions in the regard that it
> swaps the upper and the lower byte of the to be transferred data.
> While this works on blackfin which is litte-endian this scheme will obviously
> fail on big-endian machines. Also this might not work for other codecs which
> want to reuse the same helper function.

So clearly the cache stuff ought to be using cpu_to_be16 for this stuff.
At present we've been lazy about this as on most CPUs the swap boils
down to a noop.  If we do end up needing both swaps then we just add
this as another parameter in the cache infrastructure.

More information about the Alsa-devel mailing list