[alsa-devel] [PATCH 7/8] ASoC: Add SPI support for WM8731

Alan Horstmann gineera at aspect135.co.uk
Tue Sep 9 10:45:35 CEST 2008


On Monday 08 September 2008 21:51, you wrote:
> On Mon, Sep 08, 2008 at 09:27:13PM +0100, Alan Horstmann wrote:
> > Attached and here inline is the small change we applied to ensure the
> > byte order is correct in the _spi_write function.  Note we observed the
> > spi bus
>
> I take it you're happy to give this your Signed-off-by?

Yes, fine, though obviously we haven't tested this with any other soc systems.

wm8731_spi_write_byte_order.patch

Ensure wm8731_spi_write byte order is consistent regardless of endianess.

Signed-off-by: Alan Horstmann <gineera at aspect135.co.uk>


> > With just this one change we have been successful in running the codec
> > over spi.  At present we do have an issue with dapm during capture
> > -nothing is being turned on!  Any pointers would be appreciated.
>
> If you define DEBUG when building soc-dapm.c (a define at the top of the
> source file will do the trick) then it will be very verbose about the
> decisions it's making - that will normally point out the problem.
> Probably either one of the input controls is not configured to make a
> path from the input pins to the ADC or the input has been mistakenly
> marked as disabled.
>
> Otherwise if you post the machine driver and the kernel output with
> DEBUG enabled someone might be able to spot something.

Thanks, Mark, we will try this.

Alan

wm8731_spi_write_byte_order.patch

--- wm8731-orig.c       2008-09-08 17:16:52.000000000 +0100
+++ wm8731.c    2008-09-08 21:03:16.000000000 +0100
@@ -688,12 +688,13 @@
 {
        struct spi_transfer t;
        struct spi_message m;
-       u16 msg[2];
+       u8 msg[2];

        if (len <= 0)
                return 0;

-       msg[0] = (data[0] << 8) + data[1];
+       msg[0] = data[0];
+       msg[1] = data[1];

        spi_message_init(&m);
        memset(&t, 0, (sizeof t));



More information about the Alsa-devel mailing list