pinctrl: constify pinmux_generic_get_function()
authorBartosz Golaszewski <bartosz.golaszewski@linaro.org>
Tue, 2 Sep 2025 11:59:19 +0000 (13:59 +0200)
committerLinus Walleij <linus.walleij@linaro.org>
Mon, 8 Sep 2025 12:22:33 +0000 (14:22 +0200)
With all users of struct function_desc limited to only accessing it using
the dedicated function and never modifying it, we can now constify the
return value of pinmux_generic_get_function() treewide.

Reviewed-by: Andy Shevchenko <andy@kernel.org>
Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be> # renesas
Acked-by: Geert Uytterhoeven <geert+renesas@glider.be> # renesas
Tested-by: Neil Armstrong <neil.armstrong@linaro.org>
Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
13 files changed:
drivers/pinctrl/freescale/pinctrl-imx.c
drivers/pinctrl/mediatek/pinctrl-airoha.c
drivers/pinctrl/mediatek/pinctrl-moore.c
drivers/pinctrl/pinctrl-equilibrium.c
drivers/pinctrl/pinctrl-ingenic.c
drivers/pinctrl/pinctrl-keembay.c
drivers/pinctrl/pinctrl-single.c
drivers/pinctrl/pinmux.c
drivers/pinctrl/pinmux.h
drivers/pinctrl/renesas/pinctrl-rza1.c
drivers/pinctrl/renesas/pinctrl-rza2.c
drivers/pinctrl/renesas/pinctrl-rzg2l.c
drivers/pinctrl/renesas/pinctrl-rzv2m.c

index c5b17c5..39c582a 100644 (file)
@@ -245,7 +245,7 @@ static int imx_pmx_set(struct pinctrl_dev *pctldev, unsigned selector,
 {
        struct imx_pinctrl *ipctl = pinctrl_dev_get_drvdata(pctldev);
        const struct imx_pinctrl_soc_info *info = ipctl->info;
-       struct function_desc *func;
+       const struct function_desc *func;
        struct group_desc *grp;
        struct imx_pin *pin;
        unsigned int npins;
index eb6cd27..2eed83f 100644 (file)
@@ -2443,7 +2443,7 @@ static int airoha_pinmux_set_mux(struct pinctrl_dev *pctrl_dev,
 {
        struct airoha_pinctrl *pinctrl = pinctrl_dev_get_drvdata(pctrl_dev);
        const struct airoha_pinctrl_func *func;
-       struct function_desc *desc;
+       const struct function_desc *desc;
        struct group_desc *grp;
        int i;
 
index 982b988..17a08c7 100644 (file)
@@ -43,7 +43,7 @@ static int mtk_pinmux_set_mux(struct pinctrl_dev *pctldev,
                              unsigned int selector, unsigned int group)
 {
        struct mtk_pinctrl *hw = pinctrl_dev_get_drvdata(pctldev);
-       struct function_desc *func;
+       const struct function_desc *func;
        struct group_desc *grp;
        int i, err;
 
index 01731d5..7e655b0 100644 (file)
@@ -325,7 +325,7 @@ static int eqbr_pinmux_set_mux(struct pinctrl_dev *pctldev,
                               unsigned int selector, unsigned int group)
 {
        struct eqbr_pinctrl_drv_data *pctl = pinctrl_dev_get_drvdata(pctldev);
-       struct function_desc *func;
+       const struct function_desc *func;
        struct group_desc *grp;
        unsigned int *pinmux;
        int i;
index af9d2f3..e13ef07 100644 (file)
@@ -4000,7 +4000,7 @@ static int ingenic_pinmux_set_mux(struct pinctrl_dev *pctldev,
                unsigned int selector, unsigned int group)
 {
        struct ingenic_pinctrl *jzpc = pinctrl_dev_get_drvdata(pctldev);
-       struct function_desc *func;
+       const struct function_desc *func;
        struct group_desc *grp;
        unsigned int i;
        uintptr_t mode;
index e78c8b3..30122ca 100644 (file)
@@ -935,7 +935,7 @@ static int keembay_set_mux(struct pinctrl_dev *pctldev, unsigned int fun_sel,
                           unsigned int grp_sel)
 {
        struct keembay_pinctrl *kpc = pinctrl_dev_get_drvdata(pctldev);
-       struct function_desc *func;
+       const struct function_desc *func;
        struct group_desc *grp;
        unsigned int val;
        u8 pin_mode;
index 8aedee2..6d580aa 100644 (file)
@@ -336,7 +336,7 @@ static int pcs_get_function(struct pinctrl_dev *pctldev, unsigned pin,
        struct pcs_device *pcs = pinctrl_dev_get_drvdata(pctldev);
        struct pin_desc *pdesc = pin_desc_get(pctldev, pin);
        const struct pinctrl_setting_mux *setting;
-       struct function_desc *function;
+       const struct function_desc *function;
        unsigned fselector;
 
        /* If pin is not described in DTS & enabled, mux_setting is NULL. */
@@ -360,7 +360,7 @@ static int pcs_set_mux(struct pinctrl_dev *pctldev, unsigned fselector,
        unsigned group)
 {
        struct pcs_device *pcs;
-       struct function_desc *function;
+       const struct function_desc *function;
        struct pcs_function *func;
        int i;
 
index 07a478b..1529d7b 100644 (file)
@@ -847,8 +847,8 @@ EXPORT_SYMBOL_GPL(pinmux_generic_get_function_groups);
  * @pctldev: pin controller device
  * @selector: function number
  */
-struct function_desc *pinmux_generic_get_function(struct pinctrl_dev *pctldev,
-                                                 unsigned int selector)
+const struct function_desc *
+pinmux_generic_get_function(struct pinctrl_dev *pctldev, unsigned int selector)
 {
        struct function_desc *function;
 
index bdb5be1..549ab10 100644 (file)
@@ -152,8 +152,8 @@ int pinmux_generic_get_function_groups(struct pinctrl_dev *pctldev,
                                       const char * const **groups,
                                       unsigned int * const ngroups);
 
-struct function_desc *pinmux_generic_get_function(struct pinctrl_dev *pctldev,
-                                                 unsigned int selector);
+const struct function_desc *
+pinmux_generic_get_function(struct pinctrl_dev *pctldev, unsigned int selector);
 
 int pinmux_generic_add_function(struct pinctrl_dev *pctldev,
                                const char *name,
index 2381211..70f22e0 100644 (file)
@@ -1120,7 +1120,7 @@ static int rza1_set_mux(struct pinctrl_dev *pctldev, unsigned int selector,
 {
        struct rza1_pinctrl *rza1_pctl = pinctrl_dev_get_drvdata(pctldev);
        struct rza1_mux_conf *mux_confs;
-       struct function_desc *func;
+       const struct function_desc *func;
        struct group_desc *grp;
        int i;
 
index b78b5b4..29a9db1 100644 (file)
@@ -442,7 +442,7 @@ static int rza2_set_mux(struct pinctrl_dev *pctldev, unsigned int selector,
                        unsigned int group)
 {
        struct rza2_pinctrl_priv *priv = pinctrl_dev_get_drvdata(pctldev);
-       struct function_desc *func;
+       const struct function_desc *func;
        unsigned int i, *psel_val;
        struct group_desc *grp;
 
index b182b3b..6a4eac8 100644 (file)
@@ -574,7 +574,7 @@ static int rzg2l_pinctrl_set_mux(struct pinctrl_dev *pctldev,
 {
        struct rzg2l_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev);
        const struct rzg2l_hwcfg *hwcfg = pctrl->data->hwcfg;
-       struct function_desc *func;
+       const struct function_desc *func;
        unsigned int i, *psel_val;
        struct group_desc *group;
        const unsigned int *pins;
index daaa986..dce68f9 100644 (file)
@@ -162,7 +162,7 @@ static int rzv2m_pinctrl_set_mux(struct pinctrl_dev *pctldev,
                                 unsigned int group_selector)
 {
        struct rzv2m_pinctrl *pctrl = pinctrl_dev_get_drvdata(pctldev);
-       struct function_desc *func;
+       const struct function_desc *func;
        unsigned int i, *psel_val;
        struct group_desc *group;
        const unsigned int *pins;