mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-11 12:28:41 +08:00
iio: adc: stm32-dfsdm: missing error case during probe
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@st.com> Acked-by: Fabrice Gasnier <fabrice.gasnier@st.com> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
This commit is contained in:
parent
3e53ef91f8
commit
d2fc015696
@ -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");
|
||||
|
Loading…
Reference in New Issue
Block a user