All of lore.kernel.org
 help / color / mirror / Atom feed
* [patch] pinctrl: mediatek: signedness bug in mtk_pmx_gpio_request_enable()
@ 2016-02-16 20:06 ` Dan Carpenter
  0 siblings, 0 replies; 6+ messages in thread
From: Dan Carpenter @ 2016-02-16 20:06 UTC (permalink / raw)
  To: Linus Walleij, Biao Huang
  Cc: Maoguang Meng, Axel Lin, linux-gpio-u79uwXL29TY76Z2rM5mHXA,
	Hongzhou Yang, kernel-janitors-u79uwXL29TY76Z2rM5mHXA,
	Javier Martinez Canillas, Jonas Gorski,
	linux-mediatek-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, Matthias Brugger,
	Yingjoe Chen

"muxval" stores a value from 0-255 or a negative error code.  It has to
be signed for the error handling to work.

Fixes: 59ee9c96dd5d ('pinctrl: mediatek: Add gpio_request_enable support')
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>

diff --git a/drivers/pinctrl/mediatek/pinctrl-mtk-common.c b/drivers/pinctrl/mediatek/pinctrl-mtk-common.c
index cbc2204..1fbaf28 100644
--- a/drivers/pinctrl/mediatek/pinctrl-mtk-common.c
+++ b/drivers/pinctrl/mediatek/pinctrl-mtk-common.c
@@ -755,14 +755,14 @@ static int mtk_pmx_gpio_request_enable(struct pinctrl_dev *pctldev,
 				    struct pinctrl_gpio_range *range,
 				    unsigned offset)
 {
-	unsigned long muxval;
+	int muxval;
 	struct mtk_pinctrl *pctl = pinctrl_dev_get_drvdata(pctldev);
 
 	muxval = mtk_pmx_find_gpio_mode(pctl, offset);
 
 	if (muxval < 0) {
 		dev_err(pctl->dev, "invalid gpio pin %d.\n", offset);
-		return -EINVAL;
+		return muxval;
 	}
 
 	mtk_pmx_set_mode(pctldev, offset, muxval);

^ permalink raw reply related	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2016-02-18 23:27 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-02-16 20:06 [patch] pinctrl: mediatek: signedness bug in mtk_pmx_gpio_request_enable() Dan Carpenter
2016-02-16 20:06 ` Dan Carpenter
2016-02-17  1:44 ` Axel Lin
2016-02-17  1:44   ` Axel Lin
2016-02-18 23:27 ` Linus Walleij
2016-02-18 23:27   ` Linus Walleij

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.