[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