aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichal Simek2020-01-07 09:02:52 +0100
committerMichal Simek2020-04-06 12:52:45 +0200
commitc0adba572108677c23d6aa58173f9869ea3a5819 (patch)
treeb0b746a78efd63d62d6742fdc1d677267b6a61b9
parent0486497e2b5f4d36fa968a1a60fea358cbf70b65 (diff)
arm64: zynqmp: Add support for debug uart also for U-Boot proper
board_early_init_f() is the right location where debug uart can be configurated (after MIO initialization). The patch is taking this call from SPL to also make it available for U-Boot proper. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
-rw-r--r--arch/arm/mach-zynqmp/spl.c6
-rw-r--r--board/xilinx/zynqmp/zynqmp.c15
2 files changed, 12 insertions, 9 deletions
diff --git a/arch/arm/mach-zynqmp/spl.c b/arch/arm/mach-zynqmp/spl.c
index b3830182e25..c53945e57f3 100644
--- a/arch/arm/mach-zynqmp/spl.c
+++ b/arch/arm/mach-zynqmp/spl.c
@@ -6,7 +6,6 @@
*/
#include <common.h>
-#include <debug_uart.h>
#include <init.h>
#include <spl.h>
@@ -21,11 +20,6 @@ void board_init_f(ulong dummy)
board_early_init_f();
board_early_init_r();
-#ifdef CONFIG_DEBUG_UART
- /* Uart debug for sure */
- debug_uart_init();
- puts("Debug uart enabled\n"); /* or printch() */
-#endif
/* Delay is required for clocks to be propagated */
udelay(1000000);
}
diff --git a/board/xilinx/zynqmp/zynqmp.c b/board/xilinx/zynqmp/zynqmp.c
index c6c55caa1ce..04fd3bd0a44 100644
--- a/board/xilinx/zynqmp/zynqmp.c
+++ b/board/xilinx/zynqmp/zynqmp.c
@@ -6,6 +6,7 @@
#include <common.h>
#include <cpu_func.h>
+#include <debug_uart.h>
#include <env.h>
#include <init.h>
#include <sata.h>
@@ -319,13 +320,21 @@ static char *zynqmp_get_silicon_idcode_name(void)
int board_early_init_f(void)
{
- int ret = 0;
-
#if defined(CONFIG_ZYNQMP_PSU_INIT_ENABLED)
+ int ret;
+
ret = psu_init();
+ if (ret)
+ return ret;
#endif
- return ret;
+#ifdef CONFIG_DEBUG_UART
+ /* Uart debug for sure */
+ debug_uart_init();
+ puts("Debug uart enabled\n"); /* or printch() */
+#endif
+
+ return 0;
}
static int multi_boot(void)