iio: adc: ad7192: use devm_clk_get_optional() for mclk
authorAlexandru Ardelean <aardelean@deviqon.com>
Thu, 13 May 2021 12:07:49 +0000 (15:07 +0300)
committerJonathan Cameron <Jonathan.Cameron@huawei.com>
Sun, 13 Jun 2021 16:00:16 +0000 (17:00 +0100)
The devm_clk_get_optional() helper returns NULL when devm_clk_get() returns
-ENOENT.
This makes things slightly cleaner. The added benefit is mostly cosmetic.

Also, a minor detail with this call, is that the reference for the parent
device is taken as `spi->dev` instead of `&st->sd.spi->dev` (which looks a
little quirky).

Signed-off-by: Alexandru Ardelean <aardelean@deviqon.com>
Link: https://lore.kernel.org/r/20210513120752.90074-10-aardelean@deviqon.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
drivers/iio/adc/ad7192.c

index 1141cc1..523cf3b 100644 (file)
@@ -326,7 +326,7 @@ static int ad7192_of_clock_select(struct ad7192_state *st)
        clock_sel = AD7192_CLK_INT;
 
        /* use internal clock */
-       if (PTR_ERR(st->mclk) == -ENOENT) {
+       if (st->mclk) {
                if (of_property_read_bool(np, "adi,int-clock-output-enable"))
                        clock_sel = AD7192_CLK_INT_CO;
        } else {
@@ -978,8 +978,8 @@ static int ad7192_probe(struct spi_device *spi)
 
        st->fclk = AD7192_INT_FREQ_MHZ;
 
-       st->mclk = devm_clk_get(&st->sd.spi->dev, "mclk");
-       if (IS_ERR(st->mclk) && PTR_ERR(st->mclk) != -ENOENT) {
+       st->mclk = devm_clk_get_optional(&spi->dev, "mclk");
+       if (IS_ERR(st->mclk)) {
                ret = PTR_ERR(st->mclk);
                goto error_remove_trigger;
        }