From: Wei Yongjun Date: Mon, 21 Oct 2013 02:55:29 +0000 (+0800) Subject: pinctrl: tb10x: fix the error handling in tb10x_pinctrl_probe() X-Git-Tag: firefly_0821_release~176^2~5008^2~14 X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=86467ff2ddca94c0d8d10b92b5916e68c0cad8a9;p=firefly-linux-kernel-4.4.55.git pinctrl: tb10x: fix the error handling in tb10x_pinctrl_probe() This patch fix the error handling in tb10x_pinctrl_probe(): - devm_ioremap_resource() return ERR_PTR() and never return NULL - remove the dev_err call to avoid redundant error message - pinctrl_register() returns NULL not ERR_PTR() Signed-off-by: Wei Yongjun Signed-off-by: Linus Walleij --- diff --git a/drivers/pinctrl/pinctrl-tb10x.c b/drivers/pinctrl/pinctrl-tb10x.c index 2e1ea568c9a2..9f7fa9b6ea80 100644 --- a/drivers/pinctrl/pinctrl-tb10x.c +++ b/drivers/pinctrl/pinctrl-tb10x.c @@ -806,9 +806,8 @@ static int tb10x_pinctrl_probe(struct platform_device *pdev) mutex_init(&state->mutex); state->base = devm_ioremap_resource(dev, mem); - if (!state->base) { - dev_err(dev, "Request register region failed.\n"); - ret = -EBUSY; + if (IS_ERR(state->base)) { + ret = PTR_ERR(state->base); goto fail; } @@ -830,9 +829,9 @@ static int tb10x_pinctrl_probe(struct platform_device *pdev) } state->pctl = pinctrl_register(&tb10x_pindesc, dev, state); - if (IS_ERR(state->pctl)) { + if (!state->pctl) { dev_err(dev, "could not register TB10x pin driver\n"); - ret = PTR_ERR(state->pctl); + ret = -EINVAL; goto fail; }