ASoC: sh: fsi: use same format for IN/OUT
authorKuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Fri, 18 May 2012 00:34:53 +0000 (17:34 -0700)
committerMark Brown <broonie@opensource.wolfsonmicro.com>
Sat, 19 May 2012 18:41:08 +0000 (19:41 +0100)
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
sound/soc/sh/fsi.c

index 6efe6c9a41f6956001da45303aabb9d7238e47ce..bddc353254ac82a927b8addd3df62974278281da 100644 (file)
@@ -211,8 +211,7 @@ struct fsi_priv {
        struct fsi_stream playback;
        struct fsi_stream capture;
 
-       u32 do_fmt;
-       u32 di_fmt;
+       u32 fmt;
 
        int chan_num:16;
        int clk_master:1;
@@ -1191,8 +1190,8 @@ static int fsi_hw_startup(struct fsi_priv *fsi,
        fsi_reg_write(fsi, CKG2, data);
 
        /* set format */
-       fsi_reg_write(fsi, DO_FMT, fsi->do_fmt);
-       fsi_reg_write(fsi, DI_FMT, fsi->di_fmt);
+       fsi_reg_write(fsi, DO_FMT, fsi->fmt);
+       fsi_reg_write(fsi, DI_FMT, fsi->fmt);
 
        /* spdif ? */
        if (fsi_is_spdif(fsi)) {
@@ -1270,42 +1269,33 @@ static int fsi_dai_trigger(struct snd_pcm_substream *substream, int cmd,
 
 static int fsi_set_fmt_dai(struct fsi_priv *fsi, unsigned int fmt)
 {
-       u32 data = 0;
-
        switch (fmt & SND_SOC_DAIFMT_FORMAT_MASK) {
        case SND_SOC_DAIFMT_I2S:
-               data = CR_I2S;
+               fsi->fmt = CR_I2S;
                fsi->chan_num = 2;
                break;
        case SND_SOC_DAIFMT_LEFT_J:
-               data = CR_PCM;
+               fsi->fmt = CR_PCM;
                fsi->chan_num = 2;
                break;
        default:
                return -EINVAL;
        }
 
-       fsi->do_fmt = data;
-       fsi->di_fmt = data;
-
        return 0;
 }
 
 static int fsi_set_fmt_spdif(struct fsi_priv *fsi)
 {
        struct fsi_master *master = fsi_get_master(fsi);
-       u32 data = 0;
 
        if (fsi_version(master) < 2)
                return -EINVAL;
 
-       data = CR_BWS_16 | CR_DTMD_SPDIF_PCM | CR_PCM;
+       fsi->fmt = CR_BWS_16 | CR_DTMD_SPDIF_PCM | CR_PCM;
        fsi->chan_num = 2;
        fsi->spdif = 1;
 
-       fsi->do_fmt = data;
-       fsi->di_fmt = data;
-
        return 0;
 }