diff options
Diffstat (limited to 'plat/freescale/imx8qxp/imx8qxp_bl31_setup.c')
-rw-r--r-- | plat/freescale/imx8qxp/imx8qxp_bl31_setup.c | 18 |
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 |