]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
gpio: amd-fch: use new line value setter callbacks
authorBartosz Golaszewski <bartosz.golaszewski@linaro.org>
Mon, 3 Mar 2025 13:18:35 +0000 (14:18 +0100)
committerBartosz Golaszewski <bartosz.golaszewski@linaro.org>
Mon, 10 Mar 2025 10:52:13 +0000 (11:52 +0100)
struct gpio_chip now has callbacks for setting line values that return
an integer, allowing to indicate failures. Convert the driver to using
them.

Link: https://lore.kernel.org/r/20250303-gpiochip-set-conversion-v1-10-1d5cceeebf8b@linaro.org
Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
drivers/gpio/gpio-amd-fch.c

index 2a21354ed6a030ba9b4e9904fc783689bb4ccaed..f8d0cea460499a309dd676dec0f6f33ba274a54f 100644 (file)
@@ -95,8 +95,7 @@ static int amd_fch_gpio_get_direction(struct gpio_chip *gc, unsigned int gpio)
        return ret ? GPIO_LINE_DIRECTION_OUT : GPIO_LINE_DIRECTION_IN;
 }
 
-static void amd_fch_gpio_set(struct gpio_chip *gc,
-                            unsigned int gpio, int value)
+static int amd_fch_gpio_set(struct gpio_chip *gc, unsigned int gpio, int value)
 {
        unsigned long flags;
        struct amd_fch_gpio_priv *priv = gpiochip_get_data(gc);
@@ -113,6 +112,8 @@ static void amd_fch_gpio_set(struct gpio_chip *gc,
        writel_relaxed(mask, ptr);
 
        spin_unlock_irqrestore(&priv->lock, flags);
+
+       return 0;
 }
 
 static int amd_fch_gpio_get(struct gpio_chip *gc,
@@ -164,7 +165,7 @@ static int amd_fch_gpio_probe(struct platform_device *pdev)
        priv->gc.direction_output       = amd_fch_gpio_direction_output;
        priv->gc.get_direction          = amd_fch_gpio_get_direction;
        priv->gc.get                    = amd_fch_gpio_get;
-       priv->gc.set                    = amd_fch_gpio_set;
+       priv->gc.set_rv                 = amd_fch_gpio_set;
 
        spin_lock_init(&priv->lock);