diff options
author | Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> | 2016-10-26 04:29:21 +0000 |
---|---|---|
committer | Mark Brown <broonie@kernel.org> | 2016-10-26 17:46:17 +0100 |
commit | 814efe3ed72d1cad926e21b8d0869a1ea74bb9dd (patch) | |
tree | d346715748401a4ced274583ec06b8afaf9aade7 /sound/soc/sh/rcar/gen.c | |
parent | 42b197e794dbe961cbcebd9e4963252c96cc77f9 (diff) | |
download | linux-stable-814efe3ed72d1cad926e21b8d0869a1ea74bb9dd.tar.gz linux-stable-814efe3ed72d1cad926e21b8d0869a1ea74bb9dd.tar.bz2 linux-stable-814efe3ed72d1cad926e21b8d0869a1ea74bb9dd.zip |
ASoC: rsnd: clear SSI_SYS_STATUSx every time
Renesas sound SSIU has SSI_SYS_STATUS register whick will
be changed if over/under run was occurred.
Current rsnd driver is handling over/under run error on SSI/SRC,
but doesn't on SSIU.
HW guys can't guarantee correct behavior if it already had error bit
on status register when it start.
Thus, it should be cleared every start timing. This patch do it.
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'sound/soc/sh/rcar/gen.c')
-rw-r--r-- | sound/soc/sh/rcar/gen.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/sound/soc/sh/rcar/gen.c b/sound/soc/sh/rcar/gen.c index 7d2fdf8dd188..d653cf488f73 100644 --- a/sound/soc/sh/rcar/gen.c +++ b/sound/soc/sh/rcar/gen.c @@ -211,6 +211,14 @@ static int rsnd_gen2_probe(struct rsnd_priv *priv) RSND_GEN_S_REG(SSI_MODE1, 0x804), RSND_GEN_S_REG(SSI_MODE2, 0x808), RSND_GEN_S_REG(SSI_CONTROL, 0x810), + RSND_GEN_S_REG(SSI_SYS_STATUS0, 0x840), + RSND_GEN_S_REG(SSI_SYS_STATUS1, 0x844), + RSND_GEN_S_REG(SSI_SYS_STATUS2, 0x848), + RSND_GEN_S_REG(SSI_SYS_STATUS3, 0x84c), + RSND_GEN_S_REG(SSI_SYS_STATUS4, 0x880), + RSND_GEN_S_REG(SSI_SYS_STATUS5, 0x884), + RSND_GEN_S_REG(SSI_SYS_STATUS6, 0x888), + RSND_GEN_S_REG(SSI_SYS_STATUS7, 0x88c), /* FIXME: it needs SSI_MODE2/3 in the future */ RSND_GEN_M_REG(SSI_BUSIF_MODE, 0x0, 0x80), |