2013-03-11 15:14:12

by Silviu-Mihai Popescu

[permalink] [raw]
Subject: [PATCH v2] kirkwood: fix coccicheck warnings

Convert all uses of devm_request_and_ioremap() to the newly introduced
devm_ioremap_resource() which provides more consistent error handling.

devm_ioremap_resource() provides its own error messages so all explicit
error messages can be removed from the failure code paths.

Signed-off-by: Silviu-Mihai Popescu <[email protected]>
---
drivers/cpufreq/kirkwood-cpufreq.c | 8 +++-----
drivers/cpuidle/cpuidle-kirkwood.c | 6 +++---
2 files changed, 6 insertions(+), 8 deletions(-)

diff --git a/drivers/cpufreq/kirkwood-cpufreq.c b/drivers/cpufreq/kirkwood-cpufreq.c
index 0e83e3c..6052476 100644
--- a/drivers/cpufreq/kirkwood-cpufreq.c
+++ b/drivers/cpufreq/kirkwood-cpufreq.c
@@ -175,11 +175,9 @@ static int kirkwood_cpufreq_probe(struct platform_device *pdev)
dev_err(&pdev->dev, "Cannot get memory resource\n");
return -ENODEV;
}
- priv.base = devm_request_and_ioremap(&pdev->dev, res);
- if (!priv.base) {
- dev_err(&pdev->dev, "Cannot ioremap\n");
- return -EADDRNOTAVAIL;
- }
+ priv.base = devm_ioremap_resource(&pdev->dev, res);
+ if (IS_ERR(priv.base))
+ return PTR_ERR(priv.base);

np = of_find_node_by_path("/cpus/cpu@0");
if (!np)
diff --git a/drivers/cpuidle/cpuidle-kirkwood.c b/drivers/cpuidle/cpuidle-kirkwood.c
index 670aa1e..53aad73 100644
--- a/drivers/cpuidle/cpuidle-kirkwood.c
+++ b/drivers/cpuidle/cpuidle-kirkwood.c
@@ -66,9 +66,9 @@ static int kirkwood_cpuidle_probe(struct platform_device *pdev)
if (res == NULL)
return -EINVAL;

- ddr_operation_base = devm_request_and_ioremap(&pdev->dev, res);
- if (!ddr_operation_base)
- return -EADDRNOTAVAIL;
+ ddr_operation_base = devm_ioremap_resource(&pdev->dev, res);
+ if (IS_ERR(ddr_operation_base))
+ return PTR_ERR(ddr_operation_base);

device = &per_cpu(kirkwood_cpuidle_device, smp_processor_id());
device->state_count = KIRKWOOD_MAX_STATES;
--
1.7.9.5


2013-03-11 15:33:49

by Daniel Lezcano

[permalink] [raw]
Subject: Re: [PATCH v2] kirkwood: fix coccicheck warnings

On 03/11/2013 04:14 PM, Silviu-Mihai Popescu wrote:
> Convert all uses of devm_request_and_ioremap() to the newly introduced
> devm_ioremap_resource() which provides more consistent error handling.
>
> devm_ioremap_resource() provides its own error messages so all explicit
> error messages can be removed from the failure code paths.
>
> Signed-off-by: Silviu-Mihai Popescu <[email protected]>
> ---

Sounds good.

Reviewed-by: Daniel Lezcano <[email protected]>


> drivers/cpufreq/kirkwood-cpufreq.c | 8 +++-----
> drivers/cpuidle/cpuidle-kirkwood.c | 6 +++---
> 2 files changed, 6 insertions(+), 8 deletions(-)
>
> diff --git a/drivers/cpufreq/kirkwood-cpufreq.c b/drivers/cpufreq/kirkwood-cpufreq.c
> index 0e83e3c..6052476 100644
> --- a/drivers/cpufreq/kirkwood-cpufreq.c
> +++ b/drivers/cpufreq/kirkwood-cpufreq.c
> @@ -175,11 +175,9 @@ static int kirkwood_cpufreq_probe(struct platform_device *pdev)
> dev_err(&pdev->dev, "Cannot get memory resource\n");
> return -ENODEV;
> }
> - priv.base = devm_request_and_ioremap(&pdev->dev, res);
> - if (!priv.base) {
> - dev_err(&pdev->dev, "Cannot ioremap\n");
> - return -EADDRNOTAVAIL;
> - }
> + priv.base = devm_ioremap_resource(&pdev->dev, res);
> + if (IS_ERR(priv.base))
> + return PTR_ERR(priv.base);
>
> np = of_find_node_by_path("/cpus/cpu@0");
> if (!np)
> diff --git a/drivers/cpuidle/cpuidle-kirkwood.c b/drivers/cpuidle/cpuidle-kirkwood.c
> index 670aa1e..53aad73 100644
> --- a/drivers/cpuidle/cpuidle-kirkwood.c
> +++ b/drivers/cpuidle/cpuidle-kirkwood.c
> @@ -66,9 +66,9 @@ static int kirkwood_cpuidle_probe(struct platform_device *pdev)
> if (res == NULL)
> return -EINVAL;
>
> - ddr_operation_base = devm_request_and_ioremap(&pdev->dev, res);
> - if (!ddr_operation_base)
> - return -EADDRNOTAVAIL;
> + ddr_operation_base = devm_ioremap_resource(&pdev->dev, res);
> + if (IS_ERR(ddr_operation_base))
> + return PTR_ERR(ddr_operation_base);
>
> device = &per_cpu(kirkwood_cpuidle_device, smp_processor_id());
> device->state_count = KIRKWOOD_MAX_STATES;
>


--
<http://www.linaro.org/> Linaro.org │ Open source software for ARM SoCs

Follow Linaro: <http://www.facebook.com/pages/Linaro> Facebook |
<http://twitter.com/#!/linaroorg> Twitter |
<http://www.linaro.org/linaro-blog/> Blog