ASoC: rsnd: INT_ENABLE is needed only Gen2
authorKuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Fri, 20 Dec 2013 03:28:19 +0000 (19:28 -0800)
committerMark Brown <broonie@linaro.org>
Tue, 31 Dec 2013 13:35:30 +0000 (13:35 +0000)
INT_ENABLE is needed only Gen2.
rsnd_mod_write() do nothing on Gen1, but it is confusable.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
sound/soc/sh/rcar/rsnd.h
sound/soc/sh/rcar/ssi.c

index a14bc92..3774dfc 100644 (file)
@@ -40,7 +40,7 @@ enum rsnd_reg {
        RSND_REG_SSI_MODE0,
        RSND_REG_SSI_MODE1,
        RSND_REG_BUSIF_MODE,
-       RSND_REG_INT_ENABLE,
+       RSND_REG_INT_ENABLE,            /* for Gen2 */
        RSND_REG_SRC_ADINR,
 
        /* ADG */
index aff5b76..01b5cf9 100644 (file)
@@ -457,8 +457,9 @@ static int rsnd_ssi_pio_start(struct rsnd_mod *mod,
        /* enable PIO IRQ */
        ssi->cr_etc = UIEN | OIEN | DIEN;
 
-       /* enable PIO interrupt */
-       rsnd_mod_write(&ssi->mod, INT_ENABLE, 0x0f000000);
+       /* enable PIO interrupt if gen2 */
+       if (rsnd_is_gen2(priv))
+               rsnd_mod_write(&ssi->mod, INT_ENABLE, 0x0f000000);
 
        rsnd_ssi_hw_start(ssi, rdai, io);