[alsa-devel] [PATCH v3 7/8] ASoC: wm8998: Initial WM8998 codec driver
Mark Brown
broonie at kernel.org
Mon May 4 13:39:43 CEST 2015
On Fri, May 01, 2015 at 04:15:18PM +0100, Richard Fitzgerald wrote:
> + switch (event) {
> + case SND_SOC_DAPM_PRE_PMU:
> + val = snd_soc_read(codec, ARIZONA_ASRC_RATE1);
> + val &= ARIZONA_ASRC_RATE1_MASK;
> + val >>= ARIZONA_ASRC_RATE1_SHIFT;
> +
> + val = snd_soc_read(codec, ARIZONA_SAMPLE_RATE_1 + val);
> + if (val >= 0x11)
> + dev_warn(codec->dev, "Unsupported ASRC rate1\n");
Shouldn't we be returning an error if the rate is unsupported? It'd
also be helpful to log what the invalid value that's been set is.
> + val = snd_soc_read(codec, ARIZONA_ASRC_RATE2);
> + val &= ARIZONA_ASRC_RATE2_MASK;
> + val >>= ARIZONA_ASRC_RATE2_SHIFT;
> + val -= 0x8;
What if the value we read back is set (invalidly I guess) to less than
8? We'll just read...
> +
> + val = snd_soc_read(codec, ARIZONA_ASYNC_SAMPLE_RATE_1 + val);
> + if (val >= 0x11)
> + dev_warn(codec->dev, "Unsupported ASRC rate2\n");
...some random other register.
> +static const char * const wm8998_inmux_texts[] = {
> + "A",
> + "B",
> +};
> +
> +static const SOC_ENUM_SINGLE_DECL(wm8998_in1muxl_enum,
> + ARIZONA_ADC_DIGITAL_VOLUME_1L,
> + ARIZONA_IN1L_SRC_SHIFT,
> + wm8998_inmux_texts);
Those are some fun input names...
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 473 bytes
Desc: Digital signature
URL: <http://mailman.alsa-project.org/pipermail/alsa-devel/attachments/20150504/c21b9d03/attachment.sig>
More information about the Alsa-devel
mailing list