|
@@ -213,6 +213,8 @@ static int stm32_dfsdm_parse_of(struct platform_device *pdev,
|
|
|
}
|
|
}
|
|
|
priv->dfsdm.phys_base = res->start;
|
|
priv->dfsdm.phys_base = res->start;
|
|
|
priv->dfsdm.base = devm_ioremap_resource(&pdev->dev, res);
|
|
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.
|
|
* "dfsdm" clock is mandatory for DFSDM peripheral clocking.
|
|
@@ -222,8 +224,10 @@ static int stm32_dfsdm_parse_of(struct platform_device *pdev,
|
|
|
*/
|
|
*/
|
|
|
priv->clk = devm_clk_get(&pdev->dev, "dfsdm");
|
|
priv->clk = devm_clk_get(&pdev->dev, "dfsdm");
|
|
|
if (IS_ERR(priv->clk)) {
|
|
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");
|
|
priv->aclk = devm_clk_get(&pdev->dev, "audio");
|