diff options
Diffstat (limited to 'configs/platform-v8a/patches/barebox-2020.08.1/0001-ARM-nxp-imx8mm-evk-always-set-up-UART.patch')
-rw-r--r-- | configs/platform-v8a/patches/barebox-2020.08.1/0001-ARM-nxp-imx8mm-evk-always-set-up-UART.patch | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/configs/platform-v8a/patches/barebox-2020.08.1/0001-ARM-nxp-imx8mm-evk-always-set-up-UART.patch b/configs/platform-v8a/patches/barebox-2020.08.1/0001-ARM-nxp-imx8mm-evk-always-set-up-UART.patch new file mode 100644 index 0000000..377b2f6 --- /dev/null +++ b/configs/platform-v8a/patches/barebox-2020.08.1/0001-ARM-nxp-imx8mm-evk-always-set-up-UART.patch @@ -0,0 +1,46 @@ +From: Lucas Stach <l.stach@pengutronix.de> +Date: Tue, 11 Aug 2020 11:43:29 +0200 +Subject: [PATCH] ARM: nxp-imx8mm-evk: always set up UART + +When the TF-A is configured to have some output on the UART it does not +set up the UART on its own, but just expects a pre-existing configuration. +If Barebox did not set up the UART in the !DEBUG_LL case, TF-A will just +hang without any user accessible debug output, which is a very non-obvious +failure, so better be safe and always set up the UART in case TF-A wants +to use it. + +Signed-off-by: Lucas Stach <l.stach@pengutronix.de> +Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de> +--- + arch/arm/boards/nxp-imx8mm-evk/lowlevel.c | 10 ++++++---- + 1 file changed, 6 insertions(+), 4 deletions(-) + +diff --git a/arch/arm/boards/nxp-imx8mm-evk/lowlevel.c b/arch/arm/boards/nxp-imx8mm-evk/lowlevel.c +index cd1f7d168bc6..082aefb8c1c5 100644 +--- a/arch/arm/boards/nxp-imx8mm-evk/lowlevel.c ++++ b/arch/arm/boards/nxp-imx8mm-evk/lowlevel.c +@@ -32,9 +32,12 @@ static void setup_uart(void) + + imx8mm_setup_pad(IMX8MM_PAD_UART2_TXD_UART2_TX | UART_PAD_CTRL); + +- imx8m_uart_setup_ll(); ++ imx8mq_uart_setup((void *)MX8M_UART2_BASE_ADDR); + +- putc_ll('>'); ++ if (IS_ENABLED(CONFIG_DEBUG_LL)) { ++ imx8m_uart_setup_ll(); ++ putc_ll('>'); ++ } + } + + static void pmic_reg_write(void *i2c, int reg, uint8_t val) +@@ -157,8 +160,7 @@ static void start_atf(void) + */ + static __noreturn noinline void nxp_imx8mm_evk_start(void) + { +- if (IS_ENABLED(CONFIG_DEBUG_LL)) +- setup_uart(); ++ setup_uart(); + + start_atf(); + |