blob: 91c2a3d37d69d80b212ce68999653024c3a67767 [file] [log] [blame]
From 9b49d8d751219bfc78c1d5b54daddaa49a7dcef7 Mon Sep 17 00:00:00 2001
From: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Date: Tue, 11 Feb 2014 21:05:26 -0800
Subject: ASoC: rsnd: print error if there is SRC settings mismatch
rsnd request clock master if SRC is used
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
(cherry picked from commit a2070feede404484296aace813b6c518582a3f8e)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
---
sound/soc/sh/rcar/scu.c | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/sound/soc/sh/rcar/scu.c b/sound/soc/sh/rcar/scu.c
index 6e5c763e1040..3984d4b4f2df 100644
--- a/sound/soc/sh/rcar/scu.c
+++ b/sound/soc/sh/rcar/scu.c
@@ -122,6 +122,14 @@ static int rsnd_scu_ssi_mode_init(struct rsnd_mod *mod,
struct rsnd_priv *priv = rsnd_mod_to_priv(mod);
struct rsnd_scu *scu = rsnd_mod_to_scu(mod);
int id = rsnd_mod_id(mod);
+ u32 convert_rate = rsnd_scu_convert_rate(scu);
+
+ if (convert_rate && !rsnd_dai_is_clk_master(rdai)) {
+ struct device *dev = rsnd_priv_to_dev(priv);
+
+ dev_err(dev, "rsnd should be clk master when you rate convert\n");
+ return -EINVAL;
+ }
/*
* SSI_MODE0
--
2.1.2