diff options
author | Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> | 2019-09-18 09:02:38 +0300 |
---|---|---|
committer | Mark Brown <broonie@kernel.org> | 2019-09-18 20:29:52 +0300 |
commit | 947ec14c7369a87625f03abaab5b3f4d33ac73ba (patch) | |
tree | e22941442db1600ee5f3026df6e755ef9e6062a2 /sound/soc | |
parent | 0dce49efc70536a8c3b4bb5354a71b727ba31b80 (diff) | |
download | linux-947ec14c7369a87625f03abaab5b3f4d33ac73ba.tar.xz |
ASoC: rsnd: do error check after rsnd_channel_normalization()
SSI need to use rsnd_channel_normalization() for TDM-split mode,
thus, channel check need to do after that.
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Link: https://lore.kernel.org/r/874l1aw39d.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'sound/soc')
-rw-r--r-- | sound/soc/sh/rcar/ssi.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/sound/soc/sh/rcar/ssi.c b/sound/soc/sh/rcar/ssi.c index f6a7466622ea..fc5d089868df 100644 --- a/sound/soc/sh/rcar/ssi.c +++ b/sound/soc/sh/rcar/ssi.c @@ -286,6 +286,11 @@ static int rsnd_ssi_master_clk_start(struct rsnd_mod *mod, if (rsnd_ssi_is_multi_slave(mod, io)) return 0; + if (rsnd_runtime_is_tdm_split(io)) + chan = rsnd_io_converted_chan(io); + + chan = rsnd_channel_normalization(chan); + if (ssi->usrcnt > 0) { if (ssi->rate != rate) { dev_err(dev, "SSI parent/child should use same rate\n"); @@ -300,11 +305,6 @@ static int rsnd_ssi_master_clk_start(struct rsnd_mod *mod, return 0; } - if (rsnd_runtime_is_tdm_split(io)) - chan = rsnd_io_converted_chan(io); - - chan = rsnd_channel_normalization(chan); - main_rate = rsnd_ssi_clk_query(rdai, rate, chan, &idx); if (!main_rate) { dev_err(dev, "unsupported clock rate\n"); |