[alsa-devel] [PATCH 1/3] ASoC: Add WM8510 driver
Geoffrey Wossum
geoffrey at pager.net
Thu Jun 5 16:17:23 CEST 2008
On Thursday 05 June 2008 07:49:32 am Mark Brown wrote:
> + /* bit size */
> + switch (params_format(params)) {
> + case SNDRV_PCM_FORMAT_S16_LE:
> + break;
> + case SNDRV_PCM_FORMAT_S20_3LE:
> + iface |= 0x0020;
> + break;
> + case SNDRV_PCM_FORMAT_S24_LE:
> + iface |= 0x0040;
> + break;
> + case SNDRV_PCM_FORMAT_S32_LE:
> + iface |= 0x0060;
> + break;
> + }
This should either be changed to use SNDRV_PCM_FORMAT_S16 and friends, which I
think will automagically use the correct endian for the selected
architecture, or explicitly list both _LE and _BE formats. Not an issue,
unless you're using a correct endian, I mean big endian, processor like I
am :) I would think this would need to be propagated to other CODEC drivers.
> +#define WM8510_FORMATS (SNDRV_PCM_FMTBIT_S16_LE | SNDRV_PCM_FMTBIT_S20_3LE
> |\ + SNDRV_PCM_FMTBIT_S24_LE | SNDRV_PCM_FMTBIT_S32_LE)
Same thing with big endian here.
Mark, were able to verify that the default value SPKMIX differs from the
datasheet? Is this a datasheet mistake, or an issue in the WM8510 part I
have? The full markings on the part are "WM8510G / 63AETV9", and the
datasheet is "February 2008, Rev 4.4".
---
Geoffrey
More information about the Alsa-devel
mailing list