4fe9f1b7b8628eae573d31be7c64c6b3903ff0cf
[openwrt/staging/pepe2k.git] /
1 From 57273ff8bb16f3842c2597b5bbcd49e7fa12edf7 Mon Sep 17 00:00:00 2001
2 From: Gabor Juhos <j4g8y7@gmail.com>
3 Date: Wed, 14 May 2025 21:18:35 +0200
4 Subject: [PATCH 4/7] pinctrl: armada-37xx: propagate error from
5 armada_37xx_gpio_get()
6
7 The regmap_read() function can fail, so propagate its error up to
8 the stack instead of silently ignoring that.
9
10 Signed-off-by: Imre Kaloz <kaloz@openwrt.org>
11 Reviewed-by: Andrew Lunn <andrew@lunn.ch>
12 Signed-off-by: Gabor Juhos <j4g8y7@gmail.com>
13 Link: https://lore.kernel.org/20250514-pinctrl-a37xx-fixes-v2-4-07e9ac1ab737@gmail.com
14 Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
15 ---
16 drivers/pinctrl/mvebu/pinctrl-armada-37xx.c | 5 ++++-
17 1 file changed, 4 insertions(+), 1 deletion(-)
18
19 --- a/drivers/pinctrl/mvebu/pinctrl-armada-37xx.c
20 +++ b/drivers/pinctrl/mvebu/pinctrl-armada-37xx.c
21 @@ -440,11 +440,14 @@ static int armada_37xx_gpio_get(struct g
22 struct armada_37xx_pinctrl *info = gpiochip_get_data(chip);
23 unsigned int reg = INPUT_VAL;
24 unsigned int val, mask;
25 + int ret;
26
27 armada_37xx_update_reg(&reg, &offset);
28 mask = BIT(offset);
29
30 - regmap_read(info->regmap, reg, &val);
31 + ret = regmap_read(info->regmap, reg, &val);
32 + if (ret)
33 + return ret;
34
35 return (val & mask) != 0;
36 }