]> www.infradead.org Git - users/jedix/linux-maple.git/commitdiff
ASoC: codecs: wm8996: use new GPIO line value setter callbacks
authorBartosz Golaszewski <bartosz.golaszewski@linaro.org>
Tue, 8 Apr 2025 07:38:24 +0000 (09:38 +0200)
committerMark Brown <broonie@kernel.org>
Sun, 13 Apr 2025 19:23:19 +0000 (20:23 +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.

Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
Link: https://patch.msgid.link/20250408-gpiochip-set-rv-sound-v1-6-dd54b6ca1ef9@linaro.org
Reviewed-by: Charles Keepax <ckeepax@opensource.cirrus.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/codecs/wm8996.c

index c2af8d7ecdd88f3758f372c7d9d524aaf1340999..e364d0da9044b4cd744391cb2747535f96bff34f 100644 (file)
@@ -2136,12 +2136,14 @@ static int wm8996_set_fll(struct snd_soc_component *component, int fll_id, int s
 }
 
 #ifdef CONFIG_GPIOLIB
-static void wm8996_gpio_set(struct gpio_chip *chip, unsigned offset, int value)
+static int wm8996_gpio_set(struct gpio_chip *chip, unsigned int offset,
+                          int value)
 {
        struct wm8996_priv *wm8996 = gpiochip_get_data(chip);
 
-       regmap_update_bits(wm8996->regmap, WM8996_GPIO_1 + offset,
-                          WM8996_GP1_LVL, !!value << WM8996_GP1_LVL_SHIFT);
+       return regmap_update_bits(wm8996->regmap, WM8996_GPIO_1 + offset,
+                                 WM8996_GP1_LVL,
+                                 !!value << WM8996_GP1_LVL_SHIFT);
 }
 
 static int wm8996_gpio_direction_out(struct gpio_chip *chip,
@@ -2184,7 +2186,7 @@ static const struct gpio_chip wm8996_template_chip = {
        .label                  = "wm8996",
        .owner                  = THIS_MODULE,
        .direction_output       = wm8996_gpio_direction_out,
-       .set                    = wm8996_gpio_set,
+       .set_rv                 = wm8996_gpio_set,
        .direction_input        = wm8996_gpio_direction_in,
        .get                    = wm8996_gpio_get,
        .can_sleep              = 1,