diff options
author | Sean Wang <sean.wang@mediatek.com> | 2018-09-08 07:07:21 -0400 |
---|---|---|
committer | Linus Walleij <linus.walleij@linaro.org> | 2018-09-18 17:52:45 -0400 |
commit | 1dc5e53691596832991e6550fdbaeb1f9bd82383 (patch) | |
tree | 725ec3cbabc1bbfd04f6324603aadd38c399deff /drivers/pinctrl/mediatek | |
parent | fb5fa8dc151b2364c975a9070eedb28a354a995a (diff) |
pinctrl: mediatek: extend struct mtk_pin_soc to pinctrl-mtk-common-v2.c
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>
Diffstat (limited to 'drivers/pinctrl/mediatek')
-rw-r--r-- | drivers/pinctrl/mediatek/pinctrl-moore.c | 4 | ||||
-rw-r--r-- | drivers/pinctrl/mediatek/pinctrl-mt7622.c | 2 | ||||
-rw-r--r-- | drivers/pinctrl/mediatek/pinctrl-mtk-common-v2.h | 5 |
3 files changed, 8 insertions, 3 deletions
diff --git a/drivers/pinctrl/mediatek/pinctrl-moore.c b/drivers/pinctrl/mediatek/pinctrl-moore.c index ba7511d4964c..b412b65d0441 100644 --- a/drivers/pinctrl/mediatek/pinctrl-moore.c +++ b/drivers/pinctrl/mediatek/pinctrl-moore.c | |||
@@ -63,7 +63,7 @@ static int mtk_pinmux_gpio_request_enable(struct pinctrl_dev *pctldev, | |||
63 | { | 63 | { |
64 | struct mtk_pinctrl *hw = pinctrl_dev_get_drvdata(pctldev); | 64 | struct mtk_pinctrl *hw = pinctrl_dev_get_drvdata(pctldev); |
65 | 65 | ||
66 | return mtk_hw_set_value(hw, pin, PINCTRL_PIN_REG_MODE, MTK_GPIO_MODE); | 66 | return mtk_hw_set_value(hw, pin, PINCTRL_PIN_REG_MODE, hw->soc->gpio_m); |
67 | } | 67 | } |
68 | 68 | ||
69 | static int mtk_pinmux_gpio_set_direction(struct pinctrl_dev *pctldev, | 69 | 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) | |||
580 | return err; | 580 | return err; |
581 | 581 | ||
582 | err = mtk_hw_set_value(hw, gpio_n, PINCTRL_PIN_REG_MODE, | 582 | err = mtk_hw_set_value(hw, gpio_n, PINCTRL_PIN_REG_MODE, |
583 | MTK_GPIO_MODE); | 583 | hw->soc->eint_m); |
584 | if (err) | 584 | if (err) |
585 | return err; | 585 | return err; |
586 | 586 | ||
diff --git a/drivers/pinctrl/mediatek/pinctrl-mt7622.c b/drivers/pinctrl/mediatek/pinctrl-mt7622.c index a0045bb1cfe3..2fe1f27e21bc 100644 --- a/drivers/pinctrl/mediatek/pinctrl-mt7622.c +++ b/drivers/pinctrl/mediatek/pinctrl-mt7622.c | |||
@@ -765,6 +765,8 @@ static const struct mtk_pin_soc mt7622_data = { | |||
765 | .funcs = mt7622_functions, | 765 | .funcs = mt7622_functions, |
766 | .nfuncs = ARRAY_SIZE(mt7622_functions), | 766 | .nfuncs = ARRAY_SIZE(mt7622_functions), |
767 | .eint_hw = &mt7622_eint_hw, | 767 | .eint_hw = &mt7622_eint_hw, |
768 | .gpio_m = 1, | ||
769 | .eint_m = 1, | ||
768 | }; | 770 | }; |
769 | 771 | ||
770 | static const struct of_device_id mt7622_pinctrl_of_match[] = { | 772 | static const struct of_device_id mt7622_pinctrl_of_match[] = { |
diff --git a/drivers/pinctrl/mediatek/pinctrl-mtk-common-v2.h b/drivers/pinctrl/mediatek/pinctrl-mtk-common-v2.h index a8e12ac90f0b..6041024a438f 100644 --- a/drivers/pinctrl/mediatek/pinctrl-mtk-common-v2.h +++ b/drivers/pinctrl/mediatek/pinctrl-mtk-common-v2.h | |||
@@ -9,7 +9,6 @@ | |||
9 | #ifndef __PINCTRL_MTK_COMMON_V2_H | 9 | #ifndef __PINCTRL_MTK_COMMON_V2_H |
10 | #define __PINCTRL_MTK_COMMON_V2_H | 10 | #define __PINCTRL_MTK_COMMON_V2_H |
11 | 11 | ||
12 | #define MTK_GPIO_MODE 1 | ||
13 | #define MTK_INPUT 0 | 12 | #define MTK_INPUT 0 |
14 | #define MTK_OUTPUT 1 | 13 | #define MTK_OUTPUT 1 |
15 | #define MTK_DISABLE 0 | 14 | #define MTK_DISABLE 0 |
@@ -142,6 +141,10 @@ struct mtk_pin_soc { | |||
142 | unsigned int nfuncs; | 141 | unsigned int nfuncs; |
143 | const struct mtk_eint_regs *eint_regs; | 142 | const struct mtk_eint_regs *eint_regs; |
144 | const struct mtk_eint_hw *eint_hw; | 143 | const struct mtk_eint_hw *eint_hw; |
144 | |||
145 | /* Specific parameters per SoC */ | ||
146 | u8 gpio_m; | ||
147 | u8 eint_m; | ||
145 | }; | 148 | }; |
146 | 149 | ||
147 | struct mtk_pinctrl { | 150 | struct mtk_pinctrl { |