diff options
| author | Vitor Sato Eschholz <[email protected]> | 2026-01-22 17:38:23 +0100 |
|---|---|---|
| committer | Tom Rini <[email protected]> | 2026-01-28 14:28:48 -0600 |
| commit | 15999c22f5df791364f0eb6d646c36d735c74f16 (patch) | |
| tree | 2a65a9170812fdea3b062ca6cb7d7572fd1fbd2f /drivers | |
| parent | aa6eb2a5895bb9f0f311522b7d4dd3b86629f8b2 (diff) | |
pinctrl: mediatek: add pinmux_property_set ops support
Add pinmux_property_set ops for mediatek pinctrl framework
Signed-off-by: Julien Masson <[email protected]>
Signed-off-by: Vitor Sato Eschholz <[email protected]>
Signed-off-by: Julien Stephan <[email protected]>
Reviewed-by: Macpaul Lin <[email protected]>
Tested-by: David Lechner <[email protected]>
Diffstat (limited to 'drivers')
| -rw-r--r-- | drivers/pinctrl/mediatek/pinctrl-mtk-common.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/drivers/pinctrl/mediatek/pinctrl-mtk-common.c b/drivers/pinctrl/mediatek/pinctrl-mtk-common.c index b1fdcd18027..e991e03ea41 100644 --- a/drivers/pinctrl/mediatek/pinctrl-mtk-common.c +++ b/drivers/pinctrl/mediatek/pinctrl-mtk-common.c @@ -15,6 +15,7 @@ #include <log.h> #include <regmap.h> #include <syscon.h> +#include <dt-bindings/pinctrl/mt65xx.h> #include "pinctrl-mtk-common.h" @@ -657,6 +658,16 @@ static int mtk_pinconf_group_set(struct udevice *dev, } #endif +static int mtk_pinctrl_pinmux_property_set(struct udevice *dev, u32 pinmux_group) +{ + u32 pin = MTK_GET_PIN_NO(pinmux_group); + u32 func = MTK_GET_PIN_FUNC(pinmux_group); + int ret; + + ret = mtk_hw_set_value(dev, pin, PINCTRL_PIN_REG_MODE, func); + return ret ? ret : pin; +} + const struct pinctrl_ops mtk_pinctrl_ops = { .get_pins_count = mtk_get_pins_count, .get_pin_name = mtk_get_pin_name, @@ -674,6 +685,7 @@ const struct pinctrl_ops mtk_pinctrl_ops = { .pinconf_group_set = mtk_pinconf_group_set, #endif .set_state = pinctrl_generic_set_state, + .pinmux_property_set = mtk_pinctrl_pinmux_property_set, }; #if CONFIG_IS_ENABLED(DM_GPIO) || \ |
