]> asedeno.scripts.mit.edu Git - linux.git/commitdiff
pinctrl: mediatek: extend struct mtk_pin_soc to pinctrl-mtk-common-v2.c
authorSean Wang <sean.wang@mediatek.com>
Sat, 8 Sep 2018 11:07:21 +0000 (19:07 +0800)
committerLinus Walleij <linus.walleij@linaro.org>
Tue, 18 Sep 2018 21:52:45 +0000 (14:52 -0700)
Add two parameters gpio_m and eint_m for configuring GPIO mode and EINT
mode, they might be varying depend on SoC.

Signed-off-by: Ryder.Lee <ryder.lee@mediatek.com>
Signed-off-by: Sean Wang <sean.wang@mediatek.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
drivers/pinctrl/mediatek/pinctrl-moore.c
drivers/pinctrl/mediatek/pinctrl-mt7622.c
drivers/pinctrl/mediatek/pinctrl-mtk-common-v2.h

index ba7511d4964cbd0358b2005ae2ebf9b33cbc901a..b412b65d044115f48ce087a28b74e5e67d0f681c 100644 (file)
@@ -63,7 +63,7 @@ static int mtk_pinmux_gpio_request_enable(struct pinctrl_dev *pctldev,
 {
        struct mtk_pinctrl *hw = pinctrl_dev_get_drvdata(pctldev);
 
-       return mtk_hw_set_value(hw, pin, PINCTRL_PIN_REG_MODE, MTK_GPIO_MODE);
+       return mtk_hw_set_value(hw, pin, PINCTRL_PIN_REG_MODE, hw->soc->gpio_m);
 }
 
 static int mtk_pinmux_gpio_set_direction(struct pinctrl_dev *pctldev,
@@ -580,7 +580,7 @@ static int mtk_xt_set_gpio_as_eint(void *data, unsigned long eint_n)
                return err;
 
        err = mtk_hw_set_value(hw, gpio_n, PINCTRL_PIN_REG_MODE,
-                              MTK_GPIO_MODE);
+                              hw->soc->eint_m);
        if (err)
                return err;
 
index a0045bb1cfe3b1e3eaba111e559cd225d6828b73..2fe1f27e21bc0232d1d81599e46d975f005038f4 100644 (file)
@@ -765,6 +765,8 @@ static const struct mtk_pin_soc mt7622_data = {
        .funcs = mt7622_functions,
        .nfuncs = ARRAY_SIZE(mt7622_functions),
        .eint_hw = &mt7622_eint_hw,
+       .gpio_m = 1,
+       .eint_m = 1,
 };
 
 static const struct of_device_id mt7622_pinctrl_of_match[] = {
index a8e12ac90f0b38aa8be4eb08ebbfc5e4c45727a8..6041024a438f76dc39c97ad6e01d53f2ba0c60ea 100644 (file)
@@ -9,7 +9,6 @@
 #ifndef __PINCTRL_MTK_COMMON_V2_H
 #define __PINCTRL_MTK_COMMON_V2_H
 
-#define MTK_GPIO_MODE  1
 #define MTK_INPUT      0
 #define MTK_OUTPUT     1
 #define MTK_DISABLE    0
@@ -142,6 +141,10 @@ struct mtk_pin_soc {
        unsigned int                    nfuncs;
        const struct mtk_eint_regs      *eint_regs;
        const struct mtk_eint_hw        *eint_hw;
+
+       /* Specific parameters per SoC */
+       u8                              gpio_m;
+       u8                              eint_m;
 };
 
 struct mtk_pinctrl {