diff mbox series

spl: Always define preloader_console_init

Message ID 20200507230810.21476-1-samuel@sholland.org
State Accepted
Commit 3988be5fd4369402c410336553bc0ca1920dbe6f
Headers show
Series spl: Always define preloader_console_init | expand

Commit Message

Samuel Holland May 7, 2020, 11:08 p.m. UTC
A large number of boards call preloader_console_init unconditionally.
Currently, they fail to build with CONFIG_SPL_SERIAL=n, because the
function is undefined in that case. To fix the build, always define
preloader_console_init, but make it no-op when CONFIG_SPL_SERIAL=n.

For the few boards that did check for CONFIG_SPL_SERIAL before calling
preloader_console_init, remove the checks, since the function can now
be called unconditionally.

Signed-off-by: Samuel Holland <samuel at sholland.org>
---
 arch/arm/mach-omap2/boot-common.c       | 3 +--
 arch/arm/mach-uniphier/spl_board_init.c | 2 --
 common/spl/spl.c                        | 7 +++----
 3 files changed, 4 insertions(+), 8 deletions(-)

Comments

Stefan Roese May 8, 2020, 8:44 a.m. UTC | #1
On 08.05.20 01:08, Samuel Holland wrote:
> A large number of boards call preloader_console_init unconditionally.
> Currently, they fail to build with CONFIG_SPL_SERIAL=n, because the
> function is undefined in that case. To fix the build, always define
> preloader_console_init, but make it no-op when CONFIG_SPL_SERIAL=n.
> 
> For the few boards that did check for CONFIG_SPL_SERIAL before calling
> preloader_console_init, remove the checks, since the function can now
> be called unconditionally.
> 
> Signed-off-by: Samuel Holland <samuel at sholland.org>
> ---
>   arch/arm/mach-omap2/boot-common.c       | 3 +--
>   arch/arm/mach-uniphier/spl_board_init.c | 2 --
>   common/spl/spl.c                        | 7 +++----
>   3 files changed, 4 insertions(+), 8 deletions(-)

Reviewed-by: Stefan Roese <sr at denx.de>

Thanks,
Stefan

> diff --git a/arch/arm/mach-omap2/boot-common.c b/arch/arm/mach-omap2/boot-common.c
> index 7538523724..d57382aabe 100644
> --- a/arch/arm/mach-omap2/boot-common.c
> +++ b/arch/arm/mach-omap2/boot-common.c
> @@ -194,10 +194,9 @@ u32 spl_mmc_boot_mode(const u32 boot_device)
>   
>   void spl_board_init(void)
>   {
> -#ifdef CONFIG_SPL_SERIAL_SUPPORT
>   	/* Prepare console output */
>   	preloader_console_init();
> -#endif
> +
>   #if defined(CONFIG_SPL_NAND_SUPPORT) || defined(CONFIG_SPL_ONENAND_SUPPORT)
>   	gpmc_init();
>   #endif
> diff --git a/arch/arm/mach-uniphier/spl_board_init.c b/arch/arm/mach-uniphier/spl_board_init.c
> index c7262d70a5..48764a1870 100644
> --- a/arch/arm/mach-uniphier/spl_board_init.c
> +++ b/arch/arm/mach-uniphier/spl_board_init.c
> @@ -112,9 +112,7 @@ void spl_board_init(void)
>   
>   	initdata->early_clk_init();
>   
> -#ifdef CONFIG_SPL_SERIAL_SUPPORT
>   	preloader_console_init();
> -#endif
>   
>   	ret = initdata->dpll_init(bd);
>   	if (ret) {
> diff --git a/common/spl/spl.c b/common/spl/spl.c
> index b0f0e1557b..fc5cbbbeba 100644
> --- a/common/spl/spl.c
> +++ b/common/spl/spl.c
> @@ -574,8 +574,7 @@ void board_init_f(ulong dummy)
>   		}
>   	}
>   
> -	if (CONFIG_IS_ENABLED(SERIAL_SUPPORT))
> -		preloader_console_init();
> +	preloader_console_init();
>   }
>   #endif
>   
> @@ -724,13 +723,13 @@ void board_init_r(gd_t *dummy1, ulong dummy2)
>   	jump_to_image_no_args(&spl_image);
>   }
>   
> -#ifdef CONFIG_SPL_SERIAL_SUPPORT
>   /*
>    * This requires UART clocks to be enabled.  In order for this to work the
>    * caller must ensure that the gd pointer is valid.
>    */
>   void preloader_console_init(void)
>   {
> +#ifdef CONFIG_SPL_SERIAL_SUPPORT
>   	gd->baudrate = CONFIG_BAUDRATE;
>   
>   	serial_init();		/* serial communications setup */
> @@ -744,8 +743,8 @@ void preloader_console_init(void)
>   #ifdef CONFIG_SPL_DISPLAY_PRINT
>   	spl_display_print();
>   #endif
> -}
>   #endif
> +}
>   
>   /**
>    * This function is called before the stack is changed from initial stack to
> 


Viele Gr??e,
Stefan
Lokesh Vutla May 8, 2020, 2:50 p.m. UTC | #2
On 08/05/20 4:38 AM, Samuel Holland wrote:
> A large number of boards call preloader_console_init unconditionally.
> Currently, they fail to build with CONFIG_SPL_SERIAL=n, because the
> function is undefined in that case. To fix the build, always define
> preloader_console_init, but make it no-op when CONFIG_SPL_SERIAL=n.
> 
> For the few boards that did check for CONFIG_SPL_SERIAL before calling
> preloader_console_init, remove the checks, since the function can now
> be called unconditionally.
> 
> Signed-off-by: Samuel Holland <samuel at sholland.org>

Reviewed-by: Lokesh Vutla <lokeshvutla at ti.com>

Thanks and regards,
Lokesh
Tom Rini May 15, 2020, 8:53 p.m. UTC | #3
On Thu, May 07, 2020 at 06:08:10PM -0500, Samuel Holland wrote:

> A large number of boards call preloader_console_init unconditionally.
> Currently, they fail to build with CONFIG_SPL_SERIAL=n, because the
> function is undefined in that case. To fix the build, always define
> preloader_console_init, but make it no-op when CONFIG_SPL_SERIAL=n.
> 
> For the few boards that did check for CONFIG_SPL_SERIAL before calling
> preloader_console_init, remove the checks, since the function can now
> be called unconditionally.
> 
> Signed-off-by: Samuel Holland <samuel at sholland.org>
> Reviewed-by: Stefan Roese <sr at denx.de>
> Reviewed-by: Lokesh Vutla <lokeshvutla at ti.com>

Applied to u-boot/master, thanks!
diff mbox series

Patch

diff --git a/arch/arm/mach-omap2/boot-common.c b/arch/arm/mach-omap2/boot-common.c
index 7538523724..d57382aabe 100644
--- a/arch/arm/mach-omap2/boot-common.c
+++ b/arch/arm/mach-omap2/boot-common.c
@@ -194,10 +194,9 @@  u32 spl_mmc_boot_mode(const u32 boot_device)
 
 void spl_board_init(void)
 {
-#ifdef CONFIG_SPL_SERIAL_SUPPORT
 	/* Prepare console output */
 	preloader_console_init();
-#endif
+
 #if defined(CONFIG_SPL_NAND_SUPPORT) || defined(CONFIG_SPL_ONENAND_SUPPORT)
 	gpmc_init();
 #endif
diff --git a/arch/arm/mach-uniphier/spl_board_init.c b/arch/arm/mach-uniphier/spl_board_init.c
index c7262d70a5..48764a1870 100644
--- a/arch/arm/mach-uniphier/spl_board_init.c
+++ b/arch/arm/mach-uniphier/spl_board_init.c
@@ -112,9 +112,7 @@  void spl_board_init(void)
 
 	initdata->early_clk_init();
 
-#ifdef CONFIG_SPL_SERIAL_SUPPORT
 	preloader_console_init();
-#endif
 
 	ret = initdata->dpll_init(bd);
 	if (ret) {
diff --git a/common/spl/spl.c b/common/spl/spl.c
index b0f0e1557b..fc5cbbbeba 100644
--- a/common/spl/spl.c
+++ b/common/spl/spl.c
@@ -574,8 +574,7 @@  void board_init_f(ulong dummy)
 		}
 	}
 
-	if (CONFIG_IS_ENABLED(SERIAL_SUPPORT))
-		preloader_console_init();
+	preloader_console_init();
 }
 #endif
 
@@ -724,13 +723,13 @@  void board_init_r(gd_t *dummy1, ulong dummy2)
 	jump_to_image_no_args(&spl_image);
 }
 
-#ifdef CONFIG_SPL_SERIAL_SUPPORT
 /*
  * This requires UART clocks to be enabled.  In order for this to work the
  * caller must ensure that the gd pointer is valid.
  */
 void preloader_console_init(void)
 {
+#ifdef CONFIG_SPL_SERIAL_SUPPORT
 	gd->baudrate = CONFIG_BAUDRATE;
 
 	serial_init();		/* serial communications setup */
@@ -744,8 +743,8 @@  void preloader_console_init(void)
 #ifdef CONFIG_SPL_DISPLAY_PRINT
 	spl_display_print();
 #endif
-}
 #endif
+}
 
 /**
  * This function is called before the stack is changed from initial stack to