]> git.dujemihanovic.xyz Git - u-boot.git/commitdiff
am33xx: Provide a function to set up the debug UART
authorSimon Glass <sjg@chromium.org>
Sun, 23 Jun 2024 20:30:23 +0000 (14:30 -0600)
committerTom Rini <trini@konsulko.com>
Thu, 4 Jul 2024 15:25:20 +0000 (09:25 -0600)
Since commit 0dba45864b2a ("arm: Init the debug UART") the debug UART is
set up in _main() before early_system_init() is called.

Add a suitable board_debug_uart_init() function to set up the UART in
SPL.

Signed-off-by: Simon Glass <sjg@chromium.org>
arch/arm/mach-omap2/am33xx/board.c

index 78c1e965c9f54f789cb75c5ff07a04abcc342184..84a60dedd729b15b1a86158a7d56a3e370444463 100644 (file)
@@ -490,9 +490,6 @@ void early_system_init(void)
         */
        save_omap_boot_params();
 #endif
-#ifdef CONFIG_DEBUG_UART_OMAP
-       debug_uart_init();
-#endif
 
 #ifdef CONFIG_SPL_BUILD
        spl_early_init();
@@ -533,3 +530,18 @@ static int am33xx_dm_post_init(void)
        return 0;
 }
 EVENT_SPY_SIMPLE(EVT_DM_POST_INIT_F, am33xx_dm_post_init);
+
+#ifdef CONFIG_DEBUG_UART_BOARD_INIT
+void board_debug_uart_init(void)
+{
+       if (u_boot_first_phase()) {
+               hw_data_init();
+               set_uart_mux_conf();
+               setup_early_clocks();
+               uart_soft_reset();
+
+               /* avoid uart gibberish by allowing the clocks to settle */
+               mdelay(50);
+       }
+}
+#endif