Re: [PATCH 2/2] iio: adc: stm32-dfsdm: missing error case during probe

From: Fabrice Gasnier
Date: Wed Apr 24 2019 - 08:56:01 EST


On 4/24/19 2:51 PM, Fabien Dessenne wrote:
> During probe, check the devm_ioremap_resource() error value.
> Also return the devm_clk_get() error value instead of -EINVAL.
>
> Signed-off-by: Fabien Dessenne <fabien.dessenne@xxxxxx>
> ---


Hi Fabien,

Acked-by: Fabrice Gasnier <fabrice.gasnier@xxxxxx>

Thanks,
Fabrice

> drivers/iio/adc/stm32-dfsdm-core.c | 8 ++++++--
> 1 file changed, 6 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/iio/adc/stm32-dfsdm-core.c b/drivers/iio/adc/stm32-dfsdm-core.c
> index 0a4d374..26e2011 100644
> --- a/drivers/iio/adc/stm32-dfsdm-core.c
> +++ b/drivers/iio/adc/stm32-dfsdm-core.c
> @@ -233,6 +233,8 @@ static int stm32_dfsdm_parse_of(struct platform_device *pdev,
> }
> priv->dfsdm.phys_base = res->start;
> priv->dfsdm.base = devm_ioremap_resource(&pdev->dev, res);
> + if (IS_ERR(priv->dfsdm.base))
> + return PTR_ERR(priv->dfsdm.base);
>
> /*
> * "dfsdm" clock is mandatory for DFSDM peripheral clocking.
> @@ -242,8 +244,10 @@ static int stm32_dfsdm_parse_of(struct platform_device *pdev,
> */
> priv->clk = devm_clk_get(&pdev->dev, "dfsdm");
> if (IS_ERR(priv->clk)) {
> - dev_err(&pdev->dev, "No stm32_dfsdm_clk clock found\n");
> - return -EINVAL;
> + ret = PTR_ERR(priv->clk);
> + if (ret != -EPROBE_DEFER)
> + dev_err(&pdev->dev, "Failed to get clock (%d)\n", ret);
> + return ret;
> }
>
> priv->aclk = devm_clk_get(&pdev->dev, "audio");
>