ASoC: pcm3168a: cleanup hw_constraint for LEFT_J/I2S
authorKuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Tue, 30 Oct 2018 07:31:40 +0000 (07:31 +0000)
committerMark Brown <broonie@kernel.org>
Mon, 5 Nov 2018 11:27:15 +0000 (11:27 +0000)
hw constraint for LEFT_J/I2S are same, but had duplicated code.
This code cleanup these.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/codecs/pcm3168a.c

index 52cc950..5f4327f 100644 (file)
@@ -504,6 +504,10 @@ static int pcm3168a_startup(struct snd_pcm_substream *substream,
        unsigned int fmt;
        unsigned int sample_min;
        unsigned int channel_max;
+       unsigned int channel_maxs[] = {
+               6, /* rx */
+               8  /* tx */
+       };
 
        if (tx)
                fmt = pcm3168a->dac_fmt;
@@ -528,18 +532,9 @@ static int pcm3168a_startup(struct snd_pcm_substream *substream,
                channel_max =  2;
                break;
        case PCM3168A_FMT_LEFT_J:
-               sample_min  = 24;
-               if (tx)
-                       channel_max = 8;
-               else
-                       channel_max = 6;
-               break;
        case PCM3168A_FMT_I2S:
                sample_min  = 24;
-               if (tx)
-                       channel_max = 8;
-               else
-                       channel_max = 6;
+               channel_max = channel_maxs[tx];
                break;
        default:
                sample_min  = 24;