ASoC: tegra: Simplify code around clk_get_rate() handling
authorChristophe JAILLET <christophe.jaillet@wanadoo.fr>
Thu, 8 Jun 2023 05:27:22 +0000 (07:27 +0200)
committerMark Brown <broonie@kernel.org>
Thu, 8 Jun 2023 10:36:27 +0000 (11:36 +0100)
clk_get_rate() returns an unsigned long, so there is no point in storing it
in a long, and test for negative values.

So, turn 'parent_rate' into an unsigned long, simplify the sanity check,
the error message and the return value, in case of error (i.e. 0).

Doing so also turns 'i' and 'valid_rates' into unsigned long, but it is
fine and harmless.

Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
Link: https://lore.kernel.org/r/53f928290f08f50ff43031e17fe1d88443c2c441.1686202022.git.christophe.jaillet@wanadoo.fr
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/tegra/tegra20_i2s.c
sound/soc/tegra/tegra20_spdif.c

index e1a0f50..d38b583 100644 (file)
@@ -273,13 +273,12 @@ static int tegra20_i2s_filter_rates(struct snd_pcm_hw_params *params,
        struct snd_soc_dai *dai = rule->private;
        struct tegra20_i2s *i2s = dev_get_drvdata(dai->dev);
        struct clk *parent = clk_get_parent(i2s->clk_i2s);
-       long i, parent_rate, valid_rates = 0;
+       unsigned long i, parent_rate, valid_rates = 0;
 
        parent_rate = clk_get_rate(parent);
-       if (parent_rate <= 0) {
-               dev_err(dai->dev, "Can't get parent clock rate: %ld\n",
-                       parent_rate);
-               return parent_rate ?: -EINVAL;
+       if (!parent_rate) {
+               dev_err(dai->dev, "Can't get parent clock rate\n");
+               return -EINVAL;
        }
 
        for (i = 0; i < ARRAY_SIZE(tegra20_i2s_rates); i++) {
index 86bef54..d034803 100644 (file)
@@ -187,13 +187,12 @@ static int tegra20_spdif_filter_rates(struct snd_pcm_hw_params *params,
        struct tegra20_spdif *spdif = dev_get_drvdata(dai->dev);
        struct clk *parent = clk_get_parent(spdif->clk_spdif_out);
        static const unsigned int rates[] = { 32000, 44100, 48000 };
-       long i, parent_rate, valid_rates = 0;
+       unsigned long i, parent_rate, valid_rates = 0;
 
        parent_rate = clk_get_rate(parent);
-       if (parent_rate <= 0) {
-               dev_err(dai->dev, "Can't get parent clock rate: %ld\n",
-                       parent_rate);
-               return parent_rate ?: -EINVAL;
+       if (!parent_rate) {
+               dev_err(dai->dev, "Can't get parent clock rate\n");
+               return -EINVAL;
        }
 
        for (i = 0; i < ARRAY_SIZE(rates); i++) {