As rsnd_mod_power_on() can return negative numbers,
it should be better to check the return value and
deal with the exception.
Fixes: e7d850dd10f4 ("ASoC: rsnd: use mod base common method on SSI-parent")
Signed-off-by: Jiasheng Jiang <[email protected]>
---
sound/soc/sh/rcar/ssi.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/sound/soc/sh/rcar/ssi.c b/sound/soc/sh/rcar/ssi.c
index 43c5e27dc5c8..7ade6c5ed96f 100644
--- a/sound/soc/sh/rcar/ssi.c
+++ b/sound/soc/sh/rcar/ssi.c
@@ -480,7 +480,9 @@ static int rsnd_ssi_init(struct rsnd_mod *mod,
ssi->usrcnt++;
- rsnd_mod_power_on(mod);
+ ret = rsnd_mod_power_on(mod);
+ if (ret < 0)
+ return ret;
rsnd_ssi_config_init(mod, io);
--
2.25.1
Hi
> As rsnd_mod_power_on() can return negative numbers,
> it should be better to check the return value and
> deal with the exception.
>
> Fixes: e7d850dd10f4 ("ASoC: rsnd: use mod base common method on SSI-parent")
> Signed-off-by: Jiasheng Jiang <[email protected]>
> ---
(snip)
> --- a/sound/soc/sh/rcar/ssi.c
> +++ b/sound/soc/sh/rcar/ssi.c
> @@ -480,7 +480,9 @@ static int rsnd_ssi_init(struct rsnd_mod *mod,
>
> ssi->usrcnt++;
>
> - rsnd_mod_power_on(mod);
> + ret = rsnd_mod_power_on(mod);
> + if (ret < 0)
> + return ret;
This looks good to me, but, the code which is using rsnd_mod_power_on()
and not checking the return value is not only ssi.c.
> grep rsnd_mod_power_on ./sound/soc/sh/rcar/*.c [~/Mail/tmp]
sound/soc/sh/rcar/ctu.c: rsnd_mod_power_on(mod);
sound/soc/sh/rcar/dvc.c: rsnd_mod_power_on(mod);
sound/soc/sh/rcar/mix.c: rsnd_mod_power_on(mod);
sound/soc/sh/rcar/src.c: rsnd_mod_power_on(mod);
sound/soc/sh/rcar/ssi.c: rsnd_mod_power_on(mod);
Thank you for your help !!
Best regards
---
Kuninori Morimoto