ASoC: rsnd: indicate necessary error when clock start failed

rsnd_ssi_master_clk_start() indicates error message if it couldn't
handle requested clock/rate, but it is not caring all cases.
This patch cares it.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Link: https://lore.kernel.org/r/874js66t7g.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Mark Brown <broonie@kernel.org>
This commit is contained in:
Kuninori Morimoto 2023-02-01 02:00:03 +00:00 committed by Mark Brown
parent e5a3c491e1
commit c12dc0f665
No known key found for this signature in database
GPG key ID: 24D68B725D5487D0

View file

@ -303,15 +303,14 @@ static int rsnd_ssi_master_clk_start(struct rsnd_mod *mod,
return 0; return 0;
} }
ret = -EIO;
main_rate = rsnd_ssi_clk_query(rdai, rate, chan, &idx); main_rate = rsnd_ssi_clk_query(rdai, rate, chan, &idx);
if (!main_rate) { if (!main_rate)
dev_err(dev, "unsupported clock rate\n"); goto rate_err;
return -EIO;
}
ret = rsnd_adg_ssi_clk_try_start(mod, main_rate); ret = rsnd_adg_ssi_clk_try_start(mod, main_rate);
if (ret < 0) if (ret < 0)
return ret; goto rate_err;
/* /*
* SSI clock will be output contiguously * SSI clock will be output contiguously
@ -333,6 +332,10 @@ static int rsnd_ssi_master_clk_start(struct rsnd_mod *mod,
rsnd_mod_name(mod), chan, rate); rsnd_mod_name(mod), chan, rate);
return 0; return 0;
rate_err:
dev_err(dev, "unsupported clock rate\n");
return ret;
} }
static void rsnd_ssi_master_clk_stop(struct rsnd_mod *mod, static void rsnd_ssi_master_clk_stop(struct rsnd_mod *mod,