[alsa-devel] [PATCH] ASoC: ak4613: disable asymmetric audio interface format
From: Kuninori Morimoto kuninori.morimoto.gx@renesas.com
Asymmetric audio interface formats exist in ak4613 by same register settings.
Capture Playback 24bit LEFT_J 16bit RIGHT_J 24bit LEFT_J 20bit RIGHT_J 24bit LEFT_J 24bit RIGHT_J 24bit LEFT_J 24bit LEFT_J 24bit I2S 24bit I2S
These asymmetric formats makes driver / behavior difficult. It is not HW limitation, but SW limitation. To makes code reading easy, this patch doesn't remove code, but just comment out.
Signed-off-by: Kuninori Morimoto kuninori.morimoto.gx@renesas.com --- sound/soc/codecs/ak4613.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-)
diff --git a/sound/soc/codecs/ak4613.c b/sound/soc/codecs/ak4613.c index b2dfdde..9d2be7c 100644 --- a/sound/soc/codecs/ak4613.c +++ b/sound/soc/codecs/ak4613.c @@ -139,9 +139,9 @@ struct ak4613_priv { #define AUDIO_IFACE(b, fmt) { b, SND_SOC_DAIFMT_##fmt } static const struct ak4613_interface ak4613_iface[] = { /* capture */ /* playback */ - [0] = { AUDIO_IFACE(24, LEFT_J), AUDIO_IFACE(16, RIGHT_J) }, - [1] = { AUDIO_IFACE(24, LEFT_J), AUDIO_IFACE(20, RIGHT_J) }, - [2] = { AUDIO_IFACE(24, LEFT_J), AUDIO_IFACE(24, RIGHT_J) }, +/* [0] = { AUDIO_IFACE(24, LEFT_J), AUDIO_IFACE(16, RIGHT_J) }, */ +/* [1] = { AUDIO_IFACE(24, LEFT_J), AUDIO_IFACE(20, RIGHT_J) }, */ +/* [2] = { AUDIO_IFACE(24, LEFT_J), AUDIO_IFACE(24, RIGHT_J) }, */ [3] = { AUDIO_IFACE(24, LEFT_J), AUDIO_IFACE(24, LEFT_J) }, [4] = { AUDIO_IFACE(24, I2S), AUDIO_IFACE(24, I2S) }, }; @@ -262,7 +262,7 @@ static int ak4613_dai_set_fmt(struct snd_soc_dai *dai, unsigned int fmt) fmt &= SND_SOC_DAIFMT_FORMAT_MASK;
switch (fmt) { - case SND_SOC_DAIFMT_RIGHT_J: +/* case SND_SOC_DAIFMT_RIGHT_J:*/ case SND_SOC_DAIFMT_LEFT_J: case SND_SOC_DAIFMT_I2S: priv->fmt = fmt; @@ -420,7 +420,7 @@ static int ak4613_set_bias_level(struct snd_soc_codec *codec, SNDRV_PCM_RATE_96000 |\ SNDRV_PCM_RATE_176400 |\ SNDRV_PCM_RATE_192000) -#define AK4613_PCM_FMTBIT (SNDRV_PCM_FMTBIT_S16_LE |\ +#define AK4613_PCM_FMTBIT (/*SNDRV_PCM_FMTBIT_S16_LE |*/ \ SNDRV_PCM_FMTBIT_S24_LE)
static struct snd_soc_dai_driver ak4613_dai = {
On Thu, Apr 27, 2017 at 05:22:51AM +0000, Kuninori Morimoto wrote:
From: Kuninori Morimoto kuninori.morimoto.gx@renesas.com
Asymmetric audio interface formats exist in ak4613 by same register settings.
So long as nobody is actively using this disabling things is fine but it's better to just remove the code rather than commenting it out, people can always get the old code in git if they want. Adding a comment explaining why asymmetric modes aren't supported would eb good though.
Hi Mark
Thank you for your feedback
From: Kuninori Morimoto kuninori.morimoto.gx@renesas.com
Asymmetric audio interface formats exist in ak4613 by same register settings.
So long as nobody is actively using this disabling things is fine but it's better to just remove the code rather than commenting it out, people can always get the old code in git if they want. Adding a comment explaining why asymmetric modes aren't supported would eb good though.
OK, thanks. I will just remove these in v2 patch
participants (2)
-
Kuninori Morimoto
-
Mark Brown