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>
This commit is contained in:
parent
fb5fa8dc15
commit
1dc5e53691
@ -63,7 +63,7 @@ static int mtk_pinmux_gpio_request_enable(struct pinctrl_dev *pctldev,
|
|||||||
{
|
{
|
||||||
struct mtk_pinctrl *hw = pinctrl_dev_get_drvdata(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,
|
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;
|
return err;
|
||||||
|
|
||||||
err = mtk_hw_set_value(hw, gpio_n, PINCTRL_PIN_REG_MODE,
|
err = mtk_hw_set_value(hw, gpio_n, PINCTRL_PIN_REG_MODE,
|
||||||
MTK_GPIO_MODE);
|
hw->soc->eint_m);
|
||||||
if (err)
|
if (err)
|
||||||
return err;
|
return err;
|
||||||
|
|
||||||
|
@ -765,6 +765,8 @@ static const struct mtk_pin_soc mt7622_data = {
|
|||||||
.funcs = mt7622_functions,
|
.funcs = mt7622_functions,
|
||||||
.nfuncs = ARRAY_SIZE(mt7622_functions),
|
.nfuncs = ARRAY_SIZE(mt7622_functions),
|
||||||
.eint_hw = &mt7622_eint_hw,
|
.eint_hw = &mt7622_eint_hw,
|
||||||
|
.gpio_m = 1,
|
||||||
|
.eint_m = 1,
|
||||||
};
|
};
|
||||||
|
|
||||||
static const struct of_device_id mt7622_pinctrl_of_match[] = {
|
static const struct of_device_id mt7622_pinctrl_of_match[] = {
|
||||||
|
@ -9,7 +9,6 @@
|
|||||||
#ifndef __PINCTRL_MTK_COMMON_V2_H
|
#ifndef __PINCTRL_MTK_COMMON_V2_H
|
||||||
#define __PINCTRL_MTK_COMMON_V2_H
|
#define __PINCTRL_MTK_COMMON_V2_H
|
||||||
|
|
||||||
#define MTK_GPIO_MODE 1
|
|
||||||
#define MTK_INPUT 0
|
#define MTK_INPUT 0
|
||||||
#define MTK_OUTPUT 1
|
#define MTK_OUTPUT 1
|
||||||
#define MTK_DISABLE 0
|
#define MTK_DISABLE 0
|
||||||
@ -142,6 +141,10 @@ struct mtk_pin_soc {
|
|||||||
unsigned int nfuncs;
|
unsigned int nfuncs;
|
||||||
const struct mtk_eint_regs *eint_regs;
|
const struct mtk_eint_regs *eint_regs;
|
||||||
const struct mtk_eint_hw *eint_hw;
|
const struct mtk_eint_hw *eint_hw;
|
||||||
|
|
||||||
|
/* Specific parameters per SoC */
|
||||||
|
u8 gpio_m;
|
||||||
|
u8 eint_m;
|
||||||
};
|
};
|
||||||
|
|
||||||
struct mtk_pinctrl {
|
struct mtk_pinctrl {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user