[PATCH] reset: imx7: Check return value of regmap_attach_dev() in imx7_reset_probe()

Chen Ni posted 1 patch 2 days, 2 hours ago
There is a newer version of this series
drivers/reset/reset-imx7.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
[PATCH] reset: imx7: Check return value of regmap_attach_dev() in imx7_reset_probe()
Posted by Chen Ni 2 days, 2 hours ago
Add error checking for regmap_attach_dev() call in imx7_reset_probe()
function to ensure proper error propagation.

Return the value of regmap_attach_dev() if it fails to prevent
proceeding with an incomplete regmap setup.

Signed-off-by: Chen Ni <nichen@iscas.ac.cn>
---
 drivers/reset/reset-imx7.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/drivers/reset/reset-imx7.c b/drivers/reset/reset-imx7.c
index dd01fe11c5cb..59d0435302bb 100644
--- a/drivers/reset/reset-imx7.c
+++ b/drivers/reset/reset-imx7.c
@@ -364,6 +364,7 @@ static int imx7_reset_probe(struct platform_device *pdev)
 	struct device *dev = &pdev->dev;
 	struct regmap_config config = { .name = "src" };
 	const struct imx7_src_variant *variant = of_device_get_match_data(dev);
+	int ret;
 
 	imx7src = devm_kzalloc(dev, sizeof(*imx7src), GFP_KERNEL);
 	if (!imx7src)
@@ -375,7 +376,9 @@ static int imx7_reset_probe(struct platform_device *pdev)
 		dev_err(dev, "Unable to get imx7-src regmap");
 		return PTR_ERR(imx7src->regmap);
 	}
-	regmap_attach_dev(dev, imx7src->regmap, &config);
+	ret = regmap_attach_dev(dev, imx7src->regmap, &config);
+	if (ret)
+		return dev_err_probe(dev, ret, "regmap attach failed\n");
 
 	imx7src->rcdev.owner     = THIS_MODULE;
 	imx7src->rcdev.nr_resets = variant->signals_num;
-- 
2.25.1
Re: [PATCH] reset: imx7: Check return value of regmap_attach_dev() in imx7_reset_probe()
Posted by Markus Elfring 1 day, 18 hours ago
> Add error checking for regmap_attach_dev() call in imx7_reset_probe()
> function to ensure proper error propagation.
…

* Were any source code analysis tools involved here?

* Did anything hinder to add any tags (like “Fixes” and “Cc”) accordingly?


Regards,
Markus
Re: [PATCH] reset: imx7: Check return value of regmap_attach_dev() in imx7_reset_probe()
Posted by Philipp Zabel 1 day, 22 hours ago
On Do, 2026-02-05 at 11:42 +0800, Chen Ni wrote:
> Add error checking for regmap_attach_dev() call in imx7_reset_probe()
> function to ensure proper error propagation.
> 
> Return the value of regmap_attach_dev() if it fails to prevent
> proceeding with an incomplete regmap setup.
> 
> Signed-off-by: Chen Ni <nichen@iscas.ac.cn>
> ---
>  drivers/reset/reset-imx7.c | 5 ++++-
>  1 file changed, 4 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/reset/reset-imx7.c b/drivers/reset/reset-imx7.c
> index dd01fe11c5cb..59d0435302bb 100644
> --- a/drivers/reset/reset-imx7.c
> +++ b/drivers/reset/reset-imx7.c
> @@ -364,6 +364,7 @@ static int imx7_reset_probe(struct platform_device *pdev)
>  	struct device *dev = &pdev->dev;
>  	struct regmap_config config = { .name = "src" };
>  	const struct imx7_src_variant *variant = of_device_get_match_data(dev);
> +	int ret;
>  
>  	imx7src = devm_kzalloc(dev, sizeof(*imx7src), GFP_KERNEL);
>  	if (!imx7src)
> @@ -375,7 +376,9 @@ static int imx7_reset_probe(struct platform_device *pdev)
>  		dev_err(dev, "Unable to get imx7-src regmap");
>  		return PTR_ERR(imx7src->regmap);
>  	}
> -	regmap_attach_dev(dev, imx7src->regmap, &config);
> +	ret = regmap_attach_dev(dev, imx7src->regmap, &config);
> +	if (ret)
> +		return dev_err_probe(dev, ret, "regmap attach failed\n");

regmap_attach_dev() only returns -ENOMEM errors. The dev_err_probe() is
unnecessary here, as it does not print anything [1].

[1] 2f3cfd2f4b7c ("driver core: Make dev_err_probe() silent for -ENOMEM")

regards
Philipp