[PATCH 2/3] sunxi: gpio: Remove name_to_gpio macro

Andre Przywara andre.przywara at arm.com
Tue Sep 14 01:53:24 CEST 2021


On Sat, 11 Sep 2021 16:50:48 -0500
Samuel Holland <samuel at sholland.org> wrote:

> This clarifies which callers must be updated to complete the DM_GPIO
> conversion.
> 
> The only remaining caller of name_to_gpio in generic code is inside the
> !DM_GPIO block in cmd/gpio.c. DM_GPIO is always selected on sunxi, so
> that code cannot be reached. And after this commit, there are only two
> remaining implementations of name_to_gpio.
> 
> Signed-off-by: Samuel Holland <samuel at sholland.org>

Compile tested on all sunxi boards.

Acked-by: Andre Przywara <andre.przywara at arm.com>

Cheers,
Andre

> ---
> 
>  arch/arm/include/asm/arch-sunxi/gpio.h |  1 -
>  drivers/spi/spi-sunxi.c                |  2 +-
>  drivers/video/Kconfig                  | 10 +++++-----
>  drivers/video/hitachi_tx18d42vm_lcd.c  |  6 +++---
>  drivers/video/sunxi/sunxi_display.c    | 10 +++++-----
>  5 files changed, 14 insertions(+), 15 deletions(-)
> 
> diff --git a/arch/arm/include/asm/arch-sunxi/gpio.h b/arch/arm/include/asm/arch-sunxi/gpio.h
> index 2969a530ae1..c93c051a19f 100644
> --- a/arch/arm/include/asm/arch-sunxi/gpio.h
> +++ b/arch/arm/include/asm/arch-sunxi/gpio.h
> @@ -244,7 +244,6 @@ int sunxi_gpio_set_drv(u32 pin, u32 val);
>  int sunxi_gpio_set_pull(u32 pin, u32 val);
>  int sunxi_name_to_gpio_bank(const char *name);
>  int sunxi_name_to_gpio(const char *name);
> -#define name_to_gpio(name) sunxi_name_to_gpio(name)
>  
>  #if !defined CONFIG_SPL_BUILD && defined CONFIG_AXP_GPIO
>  int axp_gpio_init(void);
> diff --git a/drivers/spi/spi-sunxi.c b/drivers/spi/spi-sunxi.c
> index 4ca5d3a93ac..bc2f544e863 100644
> --- a/drivers/spi/spi-sunxi.c
> +++ b/drivers/spi/spi-sunxi.c
> @@ -245,7 +245,7 @@ static int sun4i_spi_parse_pins(struct udevice *dev)
>  					break;
>  			}
>  
> -			pin = name_to_gpio(pin_name);
> +			pin = sunxi_name_to_gpio(pin_name);
>  			if (pin < 0)
>  				break;
>  
> diff --git a/drivers/video/Kconfig b/drivers/video/Kconfig
> index b1f8a9c1e62..b0c52a500df 100644
> --- a/drivers/video/Kconfig
> +++ b/drivers/video/Kconfig
> @@ -452,7 +452,7 @@ config VIDEO_LCD_SSD2828_RESET
>  	default ""
>  	---help---
>  	The reset pin of SSD2828 chip. This takes a string in the format
> -	understood by 'name_to_gpio' function, e.g. PH1 for pin 1 of port H.
> +	understood by 'sunxi_name_to_gpio' function, e.g. PH1 for pin 1 of port H.
>  
>  config VIDEO_LCD_TDO_TL070WSH30
>  	bool "TDO TL070WSH30 DSI LCD panel support"
> @@ -477,7 +477,7 @@ config VIDEO_LCD_SPI_CS
>  	This is one of the SPI communication pins, involved in setting up a
>  	working LCD configuration. The exact role of SPI may differ for
>  	different hardware setups. The option takes a string in the format
> -	understood by 'name_to_gpio' function, e.g. PH1 for pin 1 of port H.
> +	understood by 'sunxi_name_to_gpio' function, e.g. PH1 for pin 1 of port H.
>  
>  config VIDEO_LCD_SPI_SCLK
>  	string "SPI SCLK pin for LCD related config job"
> @@ -487,7 +487,7 @@ config VIDEO_LCD_SPI_SCLK
>  	This is one of the SPI communication pins, involved in setting up a
>  	working LCD configuration. The exact role of SPI may differ for
>  	different hardware setups. The option takes a string in the format
> -	understood by 'name_to_gpio' function, e.g. PH1 for pin 1 of port H.
> +	understood by 'sunxi_name_to_gpio' function, e.g. PH1 for pin 1 of port H.
>  
>  config VIDEO_LCD_SPI_MOSI
>  	string "SPI MOSI pin for LCD related config job"
> @@ -497,7 +497,7 @@ config VIDEO_LCD_SPI_MOSI
>  	This is one of the SPI communication pins, involved in setting up a
>  	working LCD configuration. The exact role of SPI may differ for
>  	different hardware setups. The option takes a string in the format
> -	understood by 'name_to_gpio' function, e.g. PH1 for pin 1 of port H.
> +	understood by 'sunxi_name_to_gpio' function, e.g. PH1 for pin 1 of port H.
>  
>  config VIDEO_LCD_SPI_MISO
>  	string "SPI MISO pin for LCD related config job (optional)"
> @@ -509,7 +509,7 @@ config VIDEO_LCD_SPI_MISO
>  	different hardware setups. If wired up, this pin may provide additional
>  	useful functionality. Such as bi-directional communication with the
>  	hardware and LCD panel id retrieval (if the panel can report it). The
> -	option takes a string in the format understood by 'name_to_gpio'
> +	option takes a string in the format understood by 'sunxi_name_to_gpio'
>  	function, e.g. PH1 for pin 1 of port H.
>  
>  source "drivers/video/meson/Kconfig"
> diff --git a/drivers/video/hitachi_tx18d42vm_lcd.c b/drivers/video/hitachi_tx18d42vm_lcd.c
> index c6c8df6a96e..87c4d27438a 100644
> --- a/drivers/video/hitachi_tx18d42vm_lcd.c
> +++ b/drivers/video/hitachi_tx18d42vm_lcd.c
> @@ -49,9 +49,9 @@ int hitachi_tx18d42vm_init(void)
>  	};
>  	int i, cs, clk, mosi, ret = 0;
>  
> -	cs = name_to_gpio(CONFIG_VIDEO_LCD_SPI_CS);
> -	clk = name_to_gpio(CONFIG_VIDEO_LCD_SPI_SCLK);
> -	mosi = name_to_gpio(CONFIG_VIDEO_LCD_SPI_MOSI);
> +	cs = sunxi_name_to_gpio(CONFIG_VIDEO_LCD_SPI_CS);
> +	clk = sunxi_name_to_gpio(CONFIG_VIDEO_LCD_SPI_SCLK);
> +	mosi = sunxi_name_to_gpio(CONFIG_VIDEO_LCD_SPI_MOSI);
>  
>  	if (cs == -1 || clk == -1 || mosi == 1) {
>  		printf("Error tx18d42vm spi gpio config is invalid\n");
> diff --git a/drivers/video/sunxi/sunxi_display.c b/drivers/video/sunxi/sunxi_display.c
> index 128888f7af1..da3e8988296 100644
> --- a/drivers/video/sunxi/sunxi_display.c
> +++ b/drivers/video/sunxi/sunxi_display.c
> @@ -871,11 +871,11 @@ static void sunxi_vga_external_dac_enable(void)
>  static int sunxi_ssd2828_init(const struct ctfb_res_modes *mode)
>  {
>  	struct ssd2828_config cfg = {
> -		.csx_pin = name_to_gpio(CONFIG_VIDEO_LCD_SPI_CS),
> -		.sck_pin = name_to_gpio(CONFIG_VIDEO_LCD_SPI_SCLK),
> -		.sdi_pin = name_to_gpio(CONFIG_VIDEO_LCD_SPI_MOSI),
> -		.sdo_pin = name_to_gpio(CONFIG_VIDEO_LCD_SPI_MISO),
> -		.reset_pin = name_to_gpio(CONFIG_VIDEO_LCD_SSD2828_RESET),
> +		.csx_pin = sunxi_name_to_gpio(CONFIG_VIDEO_LCD_SPI_CS),
> +		.sck_pin = sunxi_name_to_gpio(CONFIG_VIDEO_LCD_SPI_SCLK),
> +		.sdi_pin = sunxi_name_to_gpio(CONFIG_VIDEO_LCD_SPI_MOSI),
> +		.sdo_pin = sunxi_name_to_gpio(CONFIG_VIDEO_LCD_SPI_MISO),
> +		.reset_pin = sunxi_name_to_gpio(CONFIG_VIDEO_LCD_SSD2828_RESET),
>  		.ssd2828_tx_clk_khz  = CONFIG_VIDEO_LCD_SSD2828_TX_CLK * 1000,
>  		.ssd2828_color_depth = 24,
>  #ifdef CONFIG_VIDEO_LCD_PANEL_MIPI_4_LANE_513_MBPS_VIA_SSD2828



More information about the U-Boot mailing list