]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
pinctrl: qcom: spmi-mpp: use new GPIO line value setter callbacks
authorBartosz Golaszewski <bartosz.golaszewski@linaro.org>
Thu, 10 Apr 2025 09:34:46 +0000 (11:34 +0200)
committerLinus Walleij <linus.walleij@linaro.org>
Thu, 17 Apr 2025 07:39:15 +0000 (09:39 +0200)
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>
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Link: https://lore.kernel.org/20250410-gpiochip-set-rv-pinctrl-qcom-v1-4-6a6891338aae@linaro.org
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
drivers/pinctrl/qcom/pinctrl-spmi-mpp.c

index 7b28c5fb24029126271078b1f15b598336781b68..ba9084978f90b6b32228f00a009ef173ff38c928 100644 (file)
@@ -600,14 +600,14 @@ static int pmic_mpp_get(struct gpio_chip *chip, unsigned pin)
        return !!pad->out_value;
 }
 
-static void pmic_mpp_set(struct gpio_chip *chip, unsigned pin, int value)
+static int pmic_mpp_set(struct gpio_chip *chip, unsigned int pin, int value)
 {
        struct pmic_mpp_state *state = gpiochip_get_data(chip);
        unsigned long config;
 
        config = pinconf_to_config_packed(PIN_CONFIG_OUTPUT, value);
 
-       pmic_mpp_config_set(state->ctrl, pin, &config, 1);
+       return pmic_mpp_config_set(state->ctrl, pin, &config, 1);
 }
 
 static int pmic_mpp_of_xlate(struct gpio_chip *chip,
@@ -638,7 +638,7 @@ static const struct gpio_chip pmic_mpp_gpio_template = {
        .direction_input        = pmic_mpp_direction_input,
        .direction_output       = pmic_mpp_direction_output,
        .get                    = pmic_mpp_get,
-       .set                    = pmic_mpp_set,
+       .set_rv                 = pmic_mpp_set,
        .request                = gpiochip_generic_request,
        .free                   = gpiochip_generic_free,
        .of_xlate               = pmic_mpp_of_xlate,