summaryrefslogtreecommitdiff
path: root/plat/freescale/imx8qxp/imx8qxp_bl31_setup.c
diff options
context:
space:
mode:
Diffstat (limited to 'plat/freescale/imx8qxp/imx8qxp_bl31_setup.c')
-rw-r--r--plat/freescale/imx8qxp/imx8qxp_bl31_setup.c18
1 files changed, 6 insertions, 12 deletions
diff --git a/plat/freescale/imx8qxp/imx8qxp_bl31_setup.c b/plat/freescale/imx8qxp/imx8qxp_bl31_setup.c
index bf894977..4dff9dca 100644
--- a/plat/freescale/imx8qxp/imx8qxp_bl31_setup.c
+++ b/plat/freescale/imx8qxp/imx8qxp_bl31_setup.c
@@ -45,6 +45,8 @@
#include <xlat_tables.h>
#include <lpuart.h>
#include <sec_rsrc.h>
+#include <imx8-pins.h>
+#include <iomux.h>
/* linker defined symbols */
extern unsigned long __RO_START__;
@@ -235,12 +237,6 @@ void bl31_early_platform_setup(bl31_params_t *from_bl2,
while (1);
}
#if DEBUG_CONSOLE_A35
- /* This maybe updated, need to check SCFW */
- #define SC_P_UART0_RX 30
- #define SC_P_UART0_TX 31
- #define SC_P_UART0_RTS_B 32
- #define SC_P_UART0_CTS_B 33
-
/* Power up UART0 */
sc_pm_set_resource_power_mode(ipc_handle, SC_R_UART_0, SC_PM_PW_MODE_ON);
@@ -251,14 +247,12 @@ void bl31_early_platform_setup(bl31_params_t *from_bl2,
/* Enable UART0 clock root */
sc_pm_clock_enable(ipc_handle, SC_R_UART_0, 2, true, false);
+#define UART_PAD_CTRL ((SC_PAD_CONFIG_OUT_IN << PADRING_CONFIG_SHIFT) | (SC_PAD_ISO_OFF << PADRING_LPCONFIG_SHIFT) \
+ | (SC_PAD_28FDSOI_DSE_DV_LOW << PADRING_DSE_SHIFT) | (SC_PAD_28FDSOI_PS_PD << PADRING_PULL_SHIFT))
/* Configure UART pads */
- sc_pad_set(ipc_handle, SC_P_UART0_RX, 0xc600004c);
-
- sc_pad_set(ipc_handle, SC_P_UART0_TX, 0xc600004c);
-
- sc_pad_set(ipc_handle, SC_P_UART0_RTS_B, 0xc600004c);
+ sc_pad_set(ipc_handle, SC_P_UART0_RX, UART_PAD_CTRL);
- sc_pad_set(ipc_handle, SC_P_UART0_CTS_B, 0xc600004c);
+ sc_pad_set(ipc_handle, SC_P_UART0_TX, UART_PAD_CTRL);
lpuart32_serial_init(IMX_BOOT_UART_BASE);
#endif