]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/blobdiff - drivers/pinctrl/mediatek/pinctrl-mtk-common.c
Merge branches 'for-4.11/upstream-fixes', 'for-4.12/accutouch', 'for-4.12/cp2112...
[mirror_ubuntu-bionic-kernel.git] / drivers / pinctrl / mediatek / pinctrl-mtk-common.c
index f9aef2ac03a1e8b7533b9abf0b349aba21b0dc0e..3cf384f8b122879722e1b377379ecadcb73da77b 100644 (file)
@@ -1054,6 +1054,18 @@ static int mtk_gpio_set_debounce(struct gpio_chip *chip, unsigned offset,
        return 0;
 }
 
+static int mtk_gpio_set_config(struct gpio_chip *chip, unsigned offset,
+                              unsigned long config)
+{
+       u32 debounce;
+
+       if (pinconf_to_config_param(config) != PIN_CONFIG_INPUT_DEBOUNCE)
+               return -ENOTSUPP;
+
+       debounce = pinconf_to_config_argument(config);
+       return mtk_gpio_set_debounce(chip, offset, debounce);
+}
+
 static const struct gpio_chip mtk_gpio_chip = {
        .owner                  = THIS_MODULE,
        .request                = gpiochip_generic_request,
@@ -1064,7 +1076,7 @@ static const struct gpio_chip mtk_gpio_chip = {
        .get                    = mtk_gpio_get,
        .set                    = mtk_gpio_set,
        .to_irq                 = mtk_gpio_to_irq,
-       .set_debounce           = mtk_gpio_set_debounce,
+       .set_config             = mtk_gpio_set_config,
        .of_gpio_n_cells        = 2,
 };