Re: [PATCH 1/6] pinctrl: renesas: Make sh_pfc_pin_to_bias_reg() static

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Geert,

Thanks for your work.

On 2021-03-03 14:26:14 +0100, Geert Uytterhoeven wrote:
> Now all R-Car pin control drivers have been converted to the common
> R-Car bias handling, sh_pfc_pin_to_bias_reg() is only called from a
> single place.  Move it from core.c to pinctrl.c, make it static, and
> rename it to rcar_pin_to_bias_reg(), as it is specific to R-Car SoCs.
> 
> Signed-off-by: Geert Uytterhoeven <geert+renesas@xxxxxxxxx>

Reviewed-by: Niklas Söderlund <niklas.soderlund+renesas@xxxxxxxxxxxx>

> ---
>  drivers/pinctrl/renesas/core.c    | 20 --------------------
>  drivers/pinctrl/renesas/core.h    |  4 ----
>  drivers/pinctrl/renesas/pinctrl.c | 24 ++++++++++++++++++++++--
>  3 files changed, 22 insertions(+), 26 deletions(-)
> 
> diff --git a/drivers/pinctrl/renesas/core.c b/drivers/pinctrl/renesas/core.c
> index 2bfd3006f6fda445..5ccc49b387f17eb9 100644
> --- a/drivers/pinctrl/renesas/core.c
> +++ b/drivers/pinctrl/renesas/core.c
> @@ -394,26 +394,6 @@ int sh_pfc_config_mux(struct sh_pfc *pfc, unsigned mark, int pinmux_type)
>  	return 0;
>  }
>  
> -const struct pinmux_bias_reg *
> -sh_pfc_pin_to_bias_reg(const struct sh_pfc *pfc, unsigned int pin,
> -		       unsigned int *bit)
> -{
> -	unsigned int i, j;
> -
> -	for (i = 0; pfc->info->bias_regs[i].puen; i++) {
> -		for (j = 0; j < ARRAY_SIZE(pfc->info->bias_regs[i].pins); j++) {
> -			if (pfc->info->bias_regs[i].pins[j] == pin) {
> -				*bit = j;
> -				return &pfc->info->bias_regs[i];
> -			}
> -		}
> -	}
> -
> -	WARN_ONCE(1, "Pin %u is not in bias info list\n", pin);
> -
> -	return NULL;
> -}
> -
>  static int sh_pfc_init_ranges(struct sh_pfc *pfc)
>  {
>  	struct sh_pfc_pin_range *range;
> diff --git a/drivers/pinctrl/renesas/core.h b/drivers/pinctrl/renesas/core.h
> index 5ca7e0830ae9de38..19f7b4308fac7a8f 100644
> --- a/drivers/pinctrl/renesas/core.h
> +++ b/drivers/pinctrl/renesas/core.h
> @@ -29,10 +29,6 @@ void sh_pfc_write(struct sh_pfc *pfc, u32 reg, u32 data);
>  int sh_pfc_get_pin_index(struct sh_pfc *pfc, unsigned int pin);
>  int sh_pfc_config_mux(struct sh_pfc *pfc, unsigned mark, int pinmux_type);
>  
> -const struct pinmux_bias_reg *
> -sh_pfc_pin_to_bias_reg(const struct sh_pfc *pfc, unsigned int pin,
> -		       unsigned int *bit);
> -
>  unsigned int rcar_pinmux_get_bias(struct sh_pfc *pfc, unsigned int pin);
>  void rcar_pinmux_set_bias(struct sh_pfc *pfc, unsigned int pin,
>  			  unsigned int bias);
> diff --git a/drivers/pinctrl/renesas/pinctrl.c b/drivers/pinctrl/renesas/pinctrl.c
> index a49f74730272312e..963d217b940372b9 100644
> --- a/drivers/pinctrl/renesas/pinctrl.c
> +++ b/drivers/pinctrl/renesas/pinctrl.c
> @@ -840,12 +840,32 @@ int sh_pfc_register_pinctrl(struct sh_pfc *pfc)
>  	return pinctrl_enable(pmx->pctl);
>  }
>  
> +static const struct pinmux_bias_reg *
> +rcar_pin_to_bias_reg(const struct sh_pfc *pfc, unsigned int pin,
> +		     unsigned int *bit)
> +{
> +	unsigned int i, j;
> +
> +	for (i = 0; pfc->info->bias_regs[i].puen; i++) {
> +		for (j = 0; j < ARRAY_SIZE(pfc->info->bias_regs[i].pins); j++) {
> +			if (pfc->info->bias_regs[i].pins[j] == pin) {
> +				*bit = j;
> +				return &pfc->info->bias_regs[i];
> +			}
> +		}
> +	}
> +
> +	WARN_ONCE(1, "Pin %u is not in bias info list\n", pin);
> +
> +	return NULL;
> +}
> +
>  unsigned int rcar_pinmux_get_bias(struct sh_pfc *pfc, unsigned int pin)
>  {
>  	const struct pinmux_bias_reg *reg;
>  	unsigned int bit;
>  
> -	reg = sh_pfc_pin_to_bias_reg(pfc, pin, &bit);
> +	reg = rcar_pin_to_bias_reg(pfc, pin, &bit);
>  	if (!reg)
>  		return PIN_CONFIG_BIAS_DISABLE;
>  
> @@ -864,7 +884,7 @@ void rcar_pinmux_set_bias(struct sh_pfc *pfc, unsigned int pin,
>  	u32 enable, updown;
>  	unsigned int bit;
>  
> -	reg = sh_pfc_pin_to_bias_reg(pfc, pin, &bit);
> +	reg = rcar_pin_to_bias_reg(pfc, pin, &bit);
>  	if (!reg)
>  		return;
>  
> -- 
> 2.25.1
> 

-- 
Regards,
Niklas Söderlund



[Index of Archives]     [Linux Samsung SOC]     [Linux Wireless]     [Linux Kernel]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Device Mapper]

  Powered by Linux