2013-06-26 16:30:14

by Wei Yongjun

[permalink] [raw]
Subject: [PATCH -next] pinctrl: st: fix return value check

From: Wei Yongjun <[email protected]>

In case of error, the function pinctrl_register() returns
NULL not ERR_PTR(). The IS_ERR() test in the return value
check should be replaced with NULL test.
The function syscon_regmap_lookup_by_phandle() returns ERR_PTR()
and never returns NULL. The NULL test in the return value check
should be replaced with IS_ERR().

Signed-off-by: Wei Yongjun <[email protected]>
---
drivers/pinctrl/pinctrl-st.c | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/drivers/pinctrl/pinctrl-st.c b/drivers/pinctrl/pinctrl-st.c
index 7effedf..de8c626 100644
--- a/drivers/pinctrl/pinctrl-st.c
+++ b/drivers/pinctrl/pinctrl-st.c
@@ -1299,9 +1299,9 @@ static int st_pctl_probe_dt(struct platform_device *pdev,
return -ENOMEM;

info->regmap = syscon_regmap_lookup_by_phandle(np, "st,syscfg");
- if (!info->regmap) {
+ if (IS_ERR(info->regmap)) {
dev_err(info->dev, "No syscfg phandle specified\n");
- return -ENOMEM;
+ return PTR_ERR(info->regmap);
}
info->data = of_match_node(st_pctl_of_match, np)->data;

@@ -1376,9 +1376,9 @@ static int st_pctl_probe(struct platform_device *pdev)
pctl_desc->name = dev_name(&pdev->dev);

info->pctl = pinctrl_register(pctl_desc, &pdev->dev, info);
- if (IS_ERR(info->pctl)) {
+ if (!info->pctl) {
dev_err(&pdev->dev, "Failed pinctrl registration\n");
- return PTR_ERR(info->pctl);
+ return -EINVAL;
}

for (i = 0; i < info->nbanks; i++)


2013-06-27 10:29:48

by Linus Walleij

[permalink] [raw]
Subject: Re: [PATCH -next] pinctrl: st: fix return value check

On Wed, Jun 26, 2013 at 6:30 PM, Wei Yongjun <[email protected]> wrote:

> From: Wei Yongjun <[email protected]>
>
> In case of error, the function pinctrl_register() returns
> NULL not ERR_PTR(). The IS_ERR() test in the return value
> check should be replaced with NULL test.
> The function syscon_regmap_lookup_by_phandle() returns ERR_PTR()
> and never returns NULL. The NULL test in the return value check
> should be replaced with IS_ERR().
>
> Signed-off-by: Wei Yongjun <[email protected]>

This driver is merged into Mark Brown's regmap tree and need
to be applied as a fix there.

Pls resend it if Mark has not recieved it.

Include Srinivas on patches so he can ACK them.

Yours,
Linus Walleij

2013-06-28 10:54:46

by Srinivas KANDAGATLA

[permalink] [raw]
Subject: Re: [PATCH -next] pinctrl: st: fix return value check

On 26/06/13 17:30, Wei Yongjun wrote:
> From: Wei Yongjun <[email protected]>
>
> In case of error, the function pinctrl_register() returns
> NULL not ERR_PTR(). The IS_ERR() test in the return value
> check should be replaced with NULL test.
> The function syscon_regmap_lookup_by_phandle() returns ERR_PTR()
> and never returns NULL. The NULL test in the return value check
> should be replaced with IS_ERR().
>
> Signed-off-by: Wei Yongjun <[email protected]>
> ---
> drivers/pinctrl/pinctrl-st.c | 8 ++++----
> 1 file changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/pinctrl/pinctrl-st.c b/drivers/pinctrl/pinctrl-st.c
> index 7effedf..de8c626 100644
> --- a/drivers/pinctrl/pinctrl-st.c
> +++ b/drivers/pinctrl/pinctrl-st.c
> @@ -1299,9 +1299,9 @@ static int st_pctl_probe_dt(struct platform_device *pdev,
> return -ENOMEM;
>
> info->regmap = syscon_regmap_lookup_by_phandle(np, "st,syscfg");
> - if (!info->regmap) {
> + if (IS_ERR(info->regmap)) {
> dev_err(info->dev, "No syscfg phandle specified\n");
> - return -ENOMEM;
> + return PTR_ERR(info->regmap);
> }
> info->data = of_match_node(st_pctl_of_match, np)->data;
>
> @@ -1376,9 +1376,9 @@ static int st_pctl_probe(struct platform_device *pdev)
> pctl_desc->name = dev_name(&pdev->dev);
>
> info->pctl = pinctrl_register(pctl_desc, &pdev->dev, info);
> - if (IS_ERR(info->pctl)) {
> + if (!info->pctl) {
> dev_err(&pdev->dev, "Failed pinctrl registration\n");
> - return PTR_ERR(info->pctl);
> + return -EINVAL;
> }
>
> for (i = 0; i < info->nbanks; i++)
>
Thankyou for the patch, It looks OK.
Acked-by: Srinivas Kandagatla <[email protected]>

Can you resend it with cc to Mark Brown <[email protected]>

Thanks,
srini



> _______________________________________________
> devicetree-discuss mailing list
> [email protected]
> https://lists.ozlabs.org/listinfo/devicetree-discuss
>
>

2013-06-28 11:30:43

by Wei Yongjun

[permalink] [raw]
Subject: [PATCH -next RESEND] pinctrl: st: fix return value check

From: Wei Yongjun <[email protected]>

In case of error, the function pinctrl_register() returns
NULL not ERR_PTR(). The IS_ERR() test in the return value
check should be replaced with NULL test.
The function syscon_regmap_lookup_by_phandle() returns ERR_PTR()
and never returns NULL. The NULL test in the return value check
should be replaced with IS_ERR().

Signed-off-by: Wei Yongjun <[email protected]>
Acked-by: Srinivas Kandagatla <[email protected]>
---
cc to Mark Brown
---
drivers/pinctrl/pinctrl-st.c | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/drivers/pinctrl/pinctrl-st.c b/drivers/pinctrl/pinctrl-st.c
index 7effedf..de8c626 100644
--- a/drivers/pinctrl/pinctrl-st.c
+++ b/drivers/pinctrl/pinctrl-st.c
@@ -1299,9 +1299,9 @@ static int st_pctl_probe_dt(struct platform_device *pdev,
return -ENOMEM;

info->regmap = syscon_regmap_lookup_by_phandle(np, "st,syscfg");
- if (!info->regmap) {
+ if (IS_ERR(info->regmap)) {
dev_err(info->dev, "No syscfg phandle specified\n");
- return -ENOMEM;
+ return PTR_ERR(info->regmap);
}
info->data = of_match_node(st_pctl_of_match, np)->data;

@@ -1376,9 +1376,9 @@ static int st_pctl_probe(struct platform_device *pdev)
pctl_desc->name = dev_name(&pdev->dev);

info->pctl = pinctrl_register(pctl_desc, &pdev->dev, info);
- if (IS_ERR(info->pctl)) {
+ if (!info->pctl) {
dev_err(&pdev->dev, "Failed pinctrl registration\n");
- return PTR_ERR(info->pctl);
+ return -EINVAL;
}

for (i = 0; i < info->nbanks; i++)