All of lore.kernel.org
 help / color / mirror / Atom feed
From: Simon Horman <horms@verge.net.au>
To: Geert Uytterhoeven <geert+renesas@glider.be>
Cc: Linus Walleij <linus.walleij@linaro.org>,
	linux-gpio@vger.kernel.org, linux-renesas-soc@vger.kernel.org,
	linux-sh@vger.kernel.org
Subject: Re: [PATCH v3 02/10] pinctrl: sh-pfc: Introduce PINCTRL_SH_FUNC_GPIO helper symbol
Date: Wed, 27 Mar 2019 11:50:29 +0000	[thread overview]
Message-ID: <20190327115029.ppu4myurn3p6m3kq@verge.net.au> (raw)
In-Reply-To: <20190320102141.19316-3-geert+renesas@glider.be>

On Wed, Mar 20, 2019 at 11:21:33AM +0100, Geert Uytterhoeven wrote:
> Pinctrl drivers for SuperH platforms use legacy function GPIOs.
> Currently this support is compiled in based on the SUPERH platform
> dependency, which hinders the introduction of compile-testing support
> for the affected pinctrl drivers.
> 
> Introduce a new Kconfig symbol PINCTRL_SH_FUNC_GPIO, which is
> auto-selected when needed.  This symbol in turn selects
> PINCTRL_SH_PFC_GPIO, to reduce the number of per-driver selects.
> 
> Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>

Reviewed-by: Simon Horman <horms+renesas@verge.net.au>

> ---
> v3:
>   - No changes,
> 
> v2:
>   - New.
> ---
>  drivers/pinctrl/sh-pfc/Kconfig  | 30 ++++++++++++++++++------------
>  drivers/pinctrl/sh-pfc/gpio.c   |  8 ++++----
>  drivers/pinctrl/sh-pfc/sh_pfc.h |  2 +-
>  3 files changed, 23 insertions(+), 17 deletions(-)
> 
> diff --git a/drivers/pinctrl/sh-pfc/Kconfig b/drivers/pinctrl/sh-pfc/Kconfig
> index e941ba60d4b7c775..6a9e4334dbfa7ec0 100644
> --- a/drivers/pinctrl/sh-pfc/Kconfig
> +++ b/drivers/pinctrl/sh-pfc/Kconfig
> @@ -20,6 +20,12 @@ config PINCTRL_SH_PFC_GPIO
>  	help
>  	  This enables pin control and GPIO drivers for SH/SH Mobile platforms
>  
> +config PINCTRL_SH_FUNC_GPIO
> +	select PINCTRL_SH_PFC_GPIO
> +	bool
> +	help
> +	  This enables legacy function GPIOs for SH platforms
> +
>  config PINCTRL_PFC_EMEV2
>  	def_bool y
>  	depends on ARCH_EMEV2
> @@ -138,17 +144,17 @@ config PINCTRL_PFC_R8A77995
>  config PINCTRL_PFC_SH7203
>  	def_bool y
>  	depends on CPU_SUBTYPE_SH7203
> -	select PINCTRL_SH_PFC_GPIO
> +	select PINCTRL_SH_FUNC_GPIO
>  
>  config PINCTRL_PFC_SH7264
>  	def_bool y
>  	depends on CPU_SUBTYPE_SH7264
> -	select PINCTRL_SH_PFC_GPIO
> +	select PINCTRL_SH_FUNC_GPIO
>  
>  config PINCTRL_PFC_SH7269
>  	def_bool y
>  	depends on CPU_SUBTYPE_SH7269
> -	select PINCTRL_SH_PFC_GPIO
> +	select PINCTRL_SH_FUNC_GPIO
>  
>  config PINCTRL_PFC_SH73A0
>  	def_bool y
> @@ -159,45 +165,45 @@ config PINCTRL_PFC_SH73A0
>  config PINCTRL_PFC_SH7720
>  	def_bool y
>  	depends on CPU_SUBTYPE_SH7720
> -	select PINCTRL_SH_PFC_GPIO
> +	select PINCTRL_SH_FUNC_GPIO
>  
>  config PINCTRL_PFC_SH7722
>  	def_bool y
>  	depends on CPU_SUBTYPE_SH7722
> -	select PINCTRL_SH_PFC_GPIO
> +	select PINCTRL_SH_FUNC_GPIO
>  
>  config PINCTRL_PFC_SH7723
>  	def_bool y
>  	depends on CPU_SUBTYPE_SH7723
> -	select PINCTRL_SH_PFC_GPIO
> +	select PINCTRL_SH_FUNC_GPIO
>  
>  config PINCTRL_PFC_SH7724
>  	def_bool y
>  	depends on CPU_SUBTYPE_SH7724
> -	select PINCTRL_SH_PFC_GPIO
> +	select PINCTRL_SH_FUNC_GPIO
>  
>  config PINCTRL_PFC_SH7734
>  	def_bool y
>  	depends on CPU_SUBTYPE_SH7734
> -	select PINCTRL_SH_PFC_GPIO
> +	select PINCTRL_SH_FUNC_GPIO
>  
>  config PINCTRL_PFC_SH7757
>  	def_bool y
>  	depends on CPU_SUBTYPE_SH7757
> -	select PINCTRL_SH_PFC_GPIO
> +	select PINCTRL_SH_FUNC_GPIO
>  
>  config PINCTRL_PFC_SH7785
>  	def_bool y
>  	depends on CPU_SUBTYPE_SH7785
> -	select PINCTRL_SH_PFC_GPIO
> +	select PINCTRL_SH_FUNC_GPIO
>  
>  config PINCTRL_PFC_SH7786
>  	def_bool y
>  	depends on CPU_SUBTYPE_SH7786
> -	select PINCTRL_SH_PFC_GPIO
> +	select PINCTRL_SH_FUNC_GPIO
>  
>  config PINCTRL_PFC_SHX3
>  	def_bool y
>  	depends on CPU_SUBTYPE_SHX3
> -	select PINCTRL_SH_PFC_GPIO
> +	select PINCTRL_SH_FUNC_GPIO
>  endif
> diff --git a/drivers/pinctrl/sh-pfc/gpio.c b/drivers/pinctrl/sh-pfc/gpio.c
> index 4f3a34ee1cd454b8..97c1332c1045739a 100644
> --- a/drivers/pinctrl/sh-pfc/gpio.c
> +++ b/drivers/pinctrl/sh-pfc/gpio.c
> @@ -252,7 +252,7 @@ static int gpio_pin_setup(struct sh_pfc_chip *chip)
>   * Function GPIOs
>   */
>  
> -#ifdef CONFIG_SUPERH
> +#ifdef CONFIG_PINCTRL_SH_FUNC_GPIO
>  static int gpio_function_request(struct gpio_chip *gc, unsigned offset)
>  {
>  	static bool __print_once;
> @@ -292,7 +292,7 @@ static int gpio_function_setup(struct sh_pfc_chip *chip)
>  
>  	return 0;
>  }
> -#endif
> +#endif /* CONFIG_PINCTRL_SH_FUNC_GPIO */
>  
>  /* -----------------------------------------------------------------------------
>   * Register/unregister
> @@ -369,7 +369,7 @@ int sh_pfc_register_gpiochip(struct sh_pfc *pfc)
>  	if (IS_ENABLED(CONFIG_OF) && pfc->dev->of_node)
>  		return 0;
>  
> -#ifdef CONFIG_SUPERH
> +#ifdef CONFIG_PINCTRL_SH_FUNC_GPIO
>  	/*
>  	 * Register the GPIO to pin mappings. As pins with GPIO ports
>  	 * must come first in the ranges, skip the pins without GPIO
> @@ -397,7 +397,7 @@ int sh_pfc_register_gpiochip(struct sh_pfc *pfc)
>  	chip = sh_pfc_add_gpiochip(pfc, gpio_function_setup, NULL);
>  	if (IS_ERR(chip))
>  		return PTR_ERR(chip);
> -#endif /* CONFIG_SUPERH */
> +#endif /* CONFIG_PINCTRL_SH_FUNC_GPIO */
>  
>  	return 0;
>  }
> diff --git a/drivers/pinctrl/sh-pfc/sh_pfc.h b/drivers/pinctrl/sh-pfc/sh_pfc.h
> index 56016cb76769c97b..754e325d0bdbb48d 100644
> --- a/drivers/pinctrl/sh-pfc/sh_pfc.h
> +++ b/drivers/pinctrl/sh-pfc/sh_pfc.h
> @@ -261,7 +261,7 @@ struct sh_pfc_soc_info {
>  	const struct sh_pfc_function *functions;
>  	unsigned int nr_functions;
>  
> -#ifdef CONFIG_SUPERH
> +#ifdef CONFIG_PINCTRL_SH_FUNC_GPIO
>  	const struct pinmux_func *func_gpios;
>  	unsigned int nr_func_gpios;
>  #endif
> -- 
> 2.17.1
> 

WARNING: multiple messages have this Message-ID (diff)
From: Simon Horman <horms@verge.net.au>
To: Geert Uytterhoeven <geert+renesas@glider.be>
Cc: Linus Walleij <linus.walleij@linaro.org>,
	linux-gpio@vger.kernel.org, linux-renesas-soc@vger.kernel.org,
	linux-sh@vger.kernel.org
Subject: Re: [PATCH v3 02/10] pinctrl: sh-pfc: Introduce PINCTRL_SH_FUNC_GPIO helper symbol
Date: Wed, 27 Mar 2019 12:50:29 +0100	[thread overview]
Message-ID: <20190327115029.ppu4myurn3p6m3kq@verge.net.au> (raw)
In-Reply-To: <20190320102141.19316-3-geert+renesas@glider.be>

On Wed, Mar 20, 2019 at 11:21:33AM +0100, Geert Uytterhoeven wrote:
> Pinctrl drivers for SuperH platforms use legacy function GPIOs.
> Currently this support is compiled in based on the SUPERH platform
> dependency, which hinders the introduction of compile-testing support
> for the affected pinctrl drivers.
> 
> Introduce a new Kconfig symbol PINCTRL_SH_FUNC_GPIO, which is
> auto-selected when needed.  This symbol in turn selects
> PINCTRL_SH_PFC_GPIO, to reduce the number of per-driver selects.
> 
> Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>

Reviewed-by: Simon Horman <horms+renesas@verge.net.au>

> ---
> v3:
>   - No changes,
> 
> v2:
>   - New.
> ---
>  drivers/pinctrl/sh-pfc/Kconfig  | 30 ++++++++++++++++++------------
>  drivers/pinctrl/sh-pfc/gpio.c   |  8 ++++----
>  drivers/pinctrl/sh-pfc/sh_pfc.h |  2 +-
>  3 files changed, 23 insertions(+), 17 deletions(-)
> 
> diff --git a/drivers/pinctrl/sh-pfc/Kconfig b/drivers/pinctrl/sh-pfc/Kconfig
> index e941ba60d4b7c775..6a9e4334dbfa7ec0 100644
> --- a/drivers/pinctrl/sh-pfc/Kconfig
> +++ b/drivers/pinctrl/sh-pfc/Kconfig
> @@ -20,6 +20,12 @@ config PINCTRL_SH_PFC_GPIO
>  	help
>  	  This enables pin control and GPIO drivers for SH/SH Mobile platforms
>  
> +config PINCTRL_SH_FUNC_GPIO
> +	select PINCTRL_SH_PFC_GPIO
> +	bool
> +	help
> +	  This enables legacy function GPIOs for SH platforms
> +
>  config PINCTRL_PFC_EMEV2
>  	def_bool y
>  	depends on ARCH_EMEV2
> @@ -138,17 +144,17 @@ config PINCTRL_PFC_R8A77995
>  config PINCTRL_PFC_SH7203
>  	def_bool y
>  	depends on CPU_SUBTYPE_SH7203
> -	select PINCTRL_SH_PFC_GPIO
> +	select PINCTRL_SH_FUNC_GPIO
>  
>  config PINCTRL_PFC_SH7264
>  	def_bool y
>  	depends on CPU_SUBTYPE_SH7264
> -	select PINCTRL_SH_PFC_GPIO
> +	select PINCTRL_SH_FUNC_GPIO
>  
>  config PINCTRL_PFC_SH7269
>  	def_bool y
>  	depends on CPU_SUBTYPE_SH7269
> -	select PINCTRL_SH_PFC_GPIO
> +	select PINCTRL_SH_FUNC_GPIO
>  
>  config PINCTRL_PFC_SH73A0
>  	def_bool y
> @@ -159,45 +165,45 @@ config PINCTRL_PFC_SH73A0
>  config PINCTRL_PFC_SH7720
>  	def_bool y
>  	depends on CPU_SUBTYPE_SH7720
> -	select PINCTRL_SH_PFC_GPIO
> +	select PINCTRL_SH_FUNC_GPIO
>  
>  config PINCTRL_PFC_SH7722
>  	def_bool y
>  	depends on CPU_SUBTYPE_SH7722
> -	select PINCTRL_SH_PFC_GPIO
> +	select PINCTRL_SH_FUNC_GPIO
>  
>  config PINCTRL_PFC_SH7723
>  	def_bool y
>  	depends on CPU_SUBTYPE_SH7723
> -	select PINCTRL_SH_PFC_GPIO
> +	select PINCTRL_SH_FUNC_GPIO
>  
>  config PINCTRL_PFC_SH7724
>  	def_bool y
>  	depends on CPU_SUBTYPE_SH7724
> -	select PINCTRL_SH_PFC_GPIO
> +	select PINCTRL_SH_FUNC_GPIO
>  
>  config PINCTRL_PFC_SH7734
>  	def_bool y
>  	depends on CPU_SUBTYPE_SH7734
> -	select PINCTRL_SH_PFC_GPIO
> +	select PINCTRL_SH_FUNC_GPIO
>  
>  config PINCTRL_PFC_SH7757
>  	def_bool y
>  	depends on CPU_SUBTYPE_SH7757
> -	select PINCTRL_SH_PFC_GPIO
> +	select PINCTRL_SH_FUNC_GPIO
>  
>  config PINCTRL_PFC_SH7785
>  	def_bool y
>  	depends on CPU_SUBTYPE_SH7785
> -	select PINCTRL_SH_PFC_GPIO
> +	select PINCTRL_SH_FUNC_GPIO
>  
>  config PINCTRL_PFC_SH7786
>  	def_bool y
>  	depends on CPU_SUBTYPE_SH7786
> -	select PINCTRL_SH_PFC_GPIO
> +	select PINCTRL_SH_FUNC_GPIO
>  
>  config PINCTRL_PFC_SHX3
>  	def_bool y
>  	depends on CPU_SUBTYPE_SHX3
> -	select PINCTRL_SH_PFC_GPIO
> +	select PINCTRL_SH_FUNC_GPIO
>  endif
> diff --git a/drivers/pinctrl/sh-pfc/gpio.c b/drivers/pinctrl/sh-pfc/gpio.c
> index 4f3a34ee1cd454b8..97c1332c1045739a 100644
> --- a/drivers/pinctrl/sh-pfc/gpio.c
> +++ b/drivers/pinctrl/sh-pfc/gpio.c
> @@ -252,7 +252,7 @@ static int gpio_pin_setup(struct sh_pfc_chip *chip)
>   * Function GPIOs
>   */
>  
> -#ifdef CONFIG_SUPERH
> +#ifdef CONFIG_PINCTRL_SH_FUNC_GPIO
>  static int gpio_function_request(struct gpio_chip *gc, unsigned offset)
>  {
>  	static bool __print_once;
> @@ -292,7 +292,7 @@ static int gpio_function_setup(struct sh_pfc_chip *chip)
>  
>  	return 0;
>  }
> -#endif
> +#endif /* CONFIG_PINCTRL_SH_FUNC_GPIO */
>  
>  /* -----------------------------------------------------------------------------
>   * Register/unregister
> @@ -369,7 +369,7 @@ int sh_pfc_register_gpiochip(struct sh_pfc *pfc)
>  	if (IS_ENABLED(CONFIG_OF) && pfc->dev->of_node)
>  		return 0;
>  
> -#ifdef CONFIG_SUPERH
> +#ifdef CONFIG_PINCTRL_SH_FUNC_GPIO
>  	/*
>  	 * Register the GPIO to pin mappings. As pins with GPIO ports
>  	 * must come first in the ranges, skip the pins without GPIO
> @@ -397,7 +397,7 @@ int sh_pfc_register_gpiochip(struct sh_pfc *pfc)
>  	chip = sh_pfc_add_gpiochip(pfc, gpio_function_setup, NULL);
>  	if (IS_ERR(chip))
>  		return PTR_ERR(chip);
> -#endif /* CONFIG_SUPERH */
> +#endif /* CONFIG_PINCTRL_SH_FUNC_GPIO */
>  
>  	return 0;
>  }
> diff --git a/drivers/pinctrl/sh-pfc/sh_pfc.h b/drivers/pinctrl/sh-pfc/sh_pfc.h
> index 56016cb76769c97b..754e325d0bdbb48d 100644
> --- a/drivers/pinctrl/sh-pfc/sh_pfc.h
> +++ b/drivers/pinctrl/sh-pfc/sh_pfc.h
> @@ -261,7 +261,7 @@ struct sh_pfc_soc_info {
>  	const struct sh_pfc_function *functions;
>  	unsigned int nr_functions;
>  
> -#ifdef CONFIG_SUPERH
> +#ifdef CONFIG_PINCTRL_SH_FUNC_GPIO
>  	const struct pinmux_func *func_gpios;
>  	unsigned int nr_func_gpios;
>  #endif
> -- 
> 2.17.1
> 

  reply	other threads:[~2019-03-27 11:50 UTC|newest]

Thread overview: 30+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-03-20 10:21 [PATCH v3 00/10] pinctrl: sh-pfc: Validation and compile-testing Geert Uytterhoeven
2019-03-20 10:21 ` Geert Uytterhoeven
2019-03-20 10:21 ` [PATCH v3 01/10] pinctrl: sh-pfc: Validate pinmux tables at runtime when debugging Geert Uytterhoeven
2019-03-20 10:21   ` Geert Uytterhoeven
2019-03-20 10:21 ` [PATCH v3 02/10] pinctrl: sh-pfc: Introduce PINCTRL_SH_FUNC_GPIO helper symbol Geert Uytterhoeven
2019-03-20 10:21   ` Geert Uytterhoeven
2019-03-27 11:50   ` Simon Horman [this message]
2019-03-27 11:50     ` Simon Horman
2019-03-20 10:21 ` [PATCH v3 03/10] pinctrl: sh-pfc: Add missing #include <linux/errno.h> Geert Uytterhoeven
2019-03-20 10:21   ` Geert Uytterhoeven
2019-03-27 11:46   ` Simon Horman
2019-03-27 11:46     ` Simon Horman
2019-03-20 10:21 ` [PATCH v3 04/10] sh: sh7786: Add explicit I/O cast to sh7786_mm_sel() Geert Uytterhoeven
2019-03-20 10:21   ` Geert Uytterhoeven
2019-03-27 11:48   ` Simon Horman
2019-03-27 11:48     ` Simon Horman
2019-03-20 10:21 ` [PATCH v3 05/10] pinctrl: sh-pfc: Allow compile-testing of all drivers Geert Uytterhoeven
2019-03-20 10:21   ` Geert Uytterhoeven
2019-03-27 11:50   ` Simon Horman
2019-03-27 11:50     ` Simon Horman
2019-03-20 10:21 ` [PATCH v3 06/10 PARTIAL] pinctrl: sh-pfc: Absorb enum IDs in PINMUX_CFG_REG() macro Geert Uytterhoeven
2019-03-20 10:21   ` Geert Uytterhoeven
2019-03-20 10:21 ` [PATCH v3 07/10 PARTIAL] pinctrl: sh-pfc: Absorb enum IDs in PINMUX_CFG_REG_VAR() macro Geert Uytterhoeven
2019-03-20 10:21   ` Geert Uytterhoeven
2019-03-20 10:21 ` [PATCH v3 08/10 PARTIAL] pinctrl: sh-pfc: Absorb enum IDs in PINMUX_DATA_REG() macro Geert Uytterhoeven
2019-03-20 10:21   ` Geert Uytterhoeven
2019-03-20 10:21 ` [PATCH v3 09/10] pinctrl: sh-pfc: Validate enum IDs for regs with fixed-width fields Geert Uytterhoeven
2019-03-20 10:21   ` Geert Uytterhoeven
2019-03-20 10:21 ` [PATCH v3 10/10] pinctrl: sh-pfc: Validate enum IDs for regs with variable-width fields Geert Uytterhoeven
2019-03-20 10:21   ` Geert Uytterhoeven

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20190327115029.ppu4myurn3p6m3kq@verge.net.au \
    --to=horms@verge.net.au \
    --cc=geert+renesas@glider.be \
    --cc=linus.walleij@linaro.org \
    --cc=linux-gpio@vger.kernel.org \
    --cc=linux-renesas-soc@vger.kernel.org \
    --cc=linux-sh@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.