uboot-mediatek: add patches for MT7988 and builds for RFB
[openwrt/staging/jow.git] / package / boot / uboot-mediatek / patches / 101-14-pinctrl-mediatek-add-pinmux_set-ops-support.patch
1 From 090351b416e57e0f7b5d1a4c87d4ed9ab4f5c89b Mon Sep 17 00:00:00 2001
2 From: Weijie Gao <weijie.gao@mediatek.com>
3 Date: Wed, 19 Jul 2023 17:16:46 +0800
4 Subject: [PATCH 14/29] pinctrl: mediatek: add pinmux_set ops support
5
6 This patch adds pinmux_set ops for mediatek pinctrl framework
7
8 Signed-off-by: Sam Shih <sam.shih@mediatek.com>
9 Signed-off-by: Weijie Gao <weijie.gao@mediatek.com>
10 ---
11 drivers/pinctrl/mediatek/pinctrl-mtk-common.c | 14 ++++++++++++++
12 1 file changed, 14 insertions(+)
13
14 --- a/drivers/pinctrl/mediatek/pinctrl-mtk-common.c
15 +++ b/drivers/pinctrl/mediatek/pinctrl-mtk-common.c
16 @@ -304,6 +304,19 @@ static const char *mtk_get_function_name
17 return priv->soc->funcs[selector].name;
18 }
19
20 +static int mtk_pinmux_set(struct udevice *dev, unsigned int pin_selector,
21 + unsigned int func_selector)
22 +{
23 + int err;
24 +
25 + err = mtk_hw_set_value(dev, pin_selector, PINCTRL_PIN_REG_MODE,
26 + func_selector);
27 + if (err)
28 + return err;
29 +
30 + return 0;
31 +}
32 +
33 static int mtk_pinmux_group_set(struct udevice *dev,
34 unsigned int group_selector,
35 unsigned int func_selector)
36 @@ -647,6 +660,7 @@ const struct pinctrl_ops mtk_pinctrl_ops
37 .get_group_name = mtk_get_group_name,
38 .get_functions_count = mtk_get_functions_count,
39 .get_function_name = mtk_get_function_name,
40 + .pinmux_set = mtk_pinmux_set,
41 .pinmux_group_set = mtk_pinmux_group_set,
42 #if CONFIG_IS_ENABLED(PINCONF)
43 .pinconf_num_params = ARRAY_SIZE(mtk_conf_params),