]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
net: dsa: vsc73xx: use new GPIO line value setter callbacks
authorBartosz Golaszewski <bartosz.golaszewski@linaro.org>
Mon, 16 Jun 2025 07:24:04 +0000 (09:24 +0200)
committerJakub Kicinski <kuba@kernel.org>
Wed, 18 Jun 2025 01:04:10 +0000 (18:04 -0700)
struct gpio_chip now has callbacks for setting line values that return
an integer, allowing to indicate failures. Convert the driver to using
them.

Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
Link: https://patch.msgid.link/20250616-gpiochip-set-rv-net-v2-1-cae0b182a552@linaro.org
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/dsa/vitesse-vsc73xx-core.c

index f18aa321053d75f34544267528d68ade37264e89..4f9687ab3b2bc1cc61946eef33b7d08f779db8c6 100644 (file)
@@ -2258,14 +2258,14 @@ static int vsc73xx_gpio_get(struct gpio_chip *chip, unsigned int offset)
        return !!(val & BIT(offset));
 }
 
-static void vsc73xx_gpio_set(struct gpio_chip *chip, unsigned int offset,
-                            int val)
+static int vsc73xx_gpio_set(struct gpio_chip *chip, unsigned int offset,
+                           int val)
 {
        struct vsc73xx *vsc = gpiochip_get_data(chip);
        u32 tmp = val ? BIT(offset) : 0;
 
-       vsc73xx_update_bits(vsc, VSC73XX_BLOCK_SYSTEM, 0,
-                           VSC73XX_GPIO, BIT(offset), tmp);
+       return vsc73xx_update_bits(vsc, VSC73XX_BLOCK_SYSTEM, 0,
+                                  VSC73XX_GPIO, BIT(offset), tmp);
 }
 
 static int vsc73xx_gpio_direction_output(struct gpio_chip *chip,
@@ -2317,7 +2317,7 @@ static int vsc73xx_gpio_probe(struct vsc73xx *vsc)
        vsc->gc.parent = vsc->dev;
        vsc->gc.base = -1;
        vsc->gc.get = vsc73xx_gpio_get;
-       vsc->gc.set = vsc73xx_gpio_set;
+       vsc->gc.set_rv = vsc73xx_gpio_set;
        vsc->gc.direction_input = vsc73xx_gpio_direction_input;
        vsc->gc.direction_output = vsc73xx_gpio_direction_output;
        vsc->gc.get_direction = vsc73xx_gpio_get_direction;