[Uboot-stm32] [PATCH v2 9/9] board: stm32mp1: move the function board_debug_uart_init in spl.c

Patrice CHOTARD patrice.chotard at st.com
Fri Jul 3 09:09:14 CEST 2020


Hi Patrick

On 5/25/20 12:19 PM, Patrick Delaunay wrote:
> Move the debug function board_debug_uart_init in spl.c
> as the debug_uart_init() function is called in arch_cpu_init()
> only for SPL and remove the board.c file.
>
> For TFABOOT, the UART TX pin configuration is done in TF-A.
>
> Signed-off-by: Patrick Delaunay <patrick.delaunay at st.com>
> ---
>
> Changes in v2:
> - NEW: merge spl.c and board.c to avoid a file with only one function
>
>  board/st/stm32mp1/Makefile |  2 --
>  board/st/stm32mp1/board.c  | 34 ----------------------------------
>  board/st/stm32mp1/spl.c    | 26 ++++++++++++++++++++++++++
>  3 files changed, 26 insertions(+), 36 deletions(-)
>  delete mode 100644 board/st/stm32mp1/board.c
>
> diff --git a/board/st/stm32mp1/Makefile b/board/st/stm32mp1/Makefile
> index 8188075b1a..65560df290 100644
> --- a/board/st/stm32mp1/Makefile
> +++ b/board/st/stm32mp1/Makefile
> @@ -8,5 +8,3 @@ obj-y += spl.o
>  else
>  obj-y += stm32mp1.o
>  endif
> -
> -obj-y += board.o
> diff --git a/board/st/stm32mp1/board.c b/board/st/stm32mp1/board.c
> deleted file mode 100644
> index 1887941e57..0000000000
> --- a/board/st/stm32mp1/board.c
> +++ /dev/null
> @@ -1,34 +0,0 @@
> -// SPDX-License-Identifier: GPL-2.0+ OR BSD-3-Clause
> -/*
> - * Copyright (C) 2018, STMicroelectronics - All Rights Reserved
> - */
> -
> -#include <common.h>
> -#include <asm/io.h>
> -
> -#ifdef CONFIG_DEBUG_UART_BOARD_INIT
> -void board_debug_uart_init(void)
> -{
> -#if (CONFIG_DEBUG_UART_BASE == STM32_UART4_BASE)
> -
> -#define RCC_MP_APB1ENSETR (STM32_RCC_BASE + 0x0A00)
> -#define RCC_MP_AHB4ENSETR (STM32_RCC_BASE + 0x0A28)
> -
> -	/* UART4 clock enable */
> -	setbits_le32(RCC_MP_APB1ENSETR, BIT(16));
> -
> -#define GPIOG_BASE 0x50008000
> -	/* GPIOG clock enable */
> -	writel(BIT(6), RCC_MP_AHB4ENSETR);
> -	/* GPIO configuration for EVAL board
> -	 * => Uart4 TX = G11
> -	 */
> -	writel(0xffbfffff, GPIOG_BASE + 0x00);
> -	writel(0x00006000, GPIOG_BASE + 0x24);
> -#else
> -
> -#error("CONFIG_DEBUG_UART_BASE: not supported value")
> -
> -#endif
> -}
> -#endif
> diff --git a/board/st/stm32mp1/spl.c b/board/st/stm32mp1/spl.c
> index 96ab671169..977703f58a 100644
> --- a/board/st/stm32mp1/spl.c
> +++ b/board/st/stm32mp1/spl.c
> @@ -5,6 +5,7 @@
>  
>  #include <config.h>
>  #include <common.h>
> +#include <asm/io.h>
>  #include "../common/stpmic1.h"
>  
>  /* board early initialisation in board_f: need to use global variable */
> @@ -23,3 +24,28 @@ int board_early_init_f(void)
>  
>  	return 0;
>  }
> +
> +#ifdef CONFIG_DEBUG_UART_BOARD_INIT
> +void board_debug_uart_init(void)
> +{
> +#if (CONFIG_DEBUG_UART_BASE == STM32_UART4_BASE)
> +
> +#define RCC_MP_APB1ENSETR (STM32_RCC_BASE + 0x0A00)
> +#define RCC_MP_AHB4ENSETR (STM32_RCC_BASE + 0x0A28)
> +
> +	/* UART4 clock enable */
> +	setbits_le32(RCC_MP_APB1ENSETR, BIT(16));
> +
> +#define GPIOG_BASE 0x50008000
> +	/* GPIOG clock enable */
> +	writel(BIT(6), RCC_MP_AHB4ENSETR);
> +	/* GPIO configuration for ST boards: Uart4 TX = G11 */
> +	writel(0xffbfffff, GPIOG_BASE + 0x00);
> +	writel(0x00006000, GPIOG_BASE + 0x24);
> +#else
> +
> +#error("CONFIG_DEBUG_UART_BASE: not supported value")
> +
> +#endif
> +}
> +#endif

Reviewed-by: Patrice Chotard <patrice.chotard at st.com>

Thanks


More information about the U-Boot mailing list