[PATCH v2 01/12] pinctrl: pinmux: open-code PINCTRL_FUNCTION_DESC()

Bjorn Andersson andersson at kernel.org
Thu Jul 10 13:37:13 PDT 2025


On Wed, Jul 09, 2025 at 04:38:57PM +0200, Bartosz Golaszewski wrote:
> From: Bartosz Golaszewski <bartosz.golaszewski at linaro.org>
> 
> This macro is only used in one place and pin function descriptors should
> only be created by pinmux core so there's no point in exposing it to
> other pinctrl users. Remove the macro and hand-code its functionality.
> 
> Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski at linaro.org>

Reviewed-by: Bjorn Andersson <andersson at kernel.org>

Regards,
Bjorn

> ---
>  drivers/pinctrl/pinmux.c | 3 ++-
>  drivers/pinctrl/pinmux.h | 7 -------
>  2 files changed, 2 insertions(+), 8 deletions(-)
> 
> diff --git a/drivers/pinctrl/pinmux.c b/drivers/pinctrl/pinmux.c
> index 0743190da59e819d1c72c1ed1ece72f206d60d65..daa7a11adabf672f802a8e9577c14e4da56b8678 100644
> --- a/drivers/pinctrl/pinmux.c
> +++ b/drivers/pinctrl/pinmux.c
> @@ -893,7 +893,8 @@ int pinmux_generic_add_function(struct pinctrl_dev *pctldev,
>  	if (!function)
>  		return -ENOMEM;
>  
> -	*function = PINCTRL_FUNCTION_DESC(name, groups, ngroups, data);
> +	function->func = PINCTRL_PINFUNCTION(name, groups, ngroups);
> +	function->data = data;
>  
>  	error = radix_tree_insert(&pctldev->pin_function_tree, selector, function);
>  	if (error)
> diff --git a/drivers/pinctrl/pinmux.h b/drivers/pinctrl/pinmux.h
> index 2965ec20b77fb360ca244800e30f1eafa988a2b1..5c039fd09f7474b4c104d3c36e0e8b8dc73a2ddd 100644
> --- a/drivers/pinctrl/pinmux.h
> +++ b/drivers/pinctrl/pinmux.h
> @@ -141,13 +141,6 @@ struct function_desc {
>  	void *data;
>  };
>  
> -/* Convenient macro to define a generic pin function descriptor */
> -#define PINCTRL_FUNCTION_DESC(_name, _grps, _num_grps, _data)	\
> -(struct function_desc) {					\
> -	.func = PINCTRL_PINFUNCTION(_name, _grps, _num_grps),	\
> -	.data = _data,						\
> -}
> -
>  int pinmux_generic_get_function_count(struct pinctrl_dev *pctldev);
>  
>  const char *
> 
> -- 
> 2.48.1
> 



More information about the Linux-mediatek mailing list