On Tue, Apr 12, 2022 at 6:31 PM Peng Fan (OSS) <peng....@oss.nxp.com> wrote: > > From: Peng Fan <peng....@nxp.com> > > Enable CONFIG_DM_SERIAL. uart2 and its pinmux was already > marked with u-boot,dm-spl. > > Signed-off-by: Peng Fan <peng....@nxp.com> > --- > board/freescale/imx8mn_evk/spl.c | 12 ++---------- > configs/imx8mn_ddr4_evk_defconfig | 1 + > configs/imx8mn_evk_defconfig | 1 + > 3 files changed, 4 insertions(+), 10 deletions(-) > > diff --git a/board/freescale/imx8mn_evk/spl.c > b/board/freescale/imx8mn_evk/spl.c > index 03f2a56e805..8708c93fa34 100644 > --- a/board/freescale/imx8mn_evk/spl.c > +++ b/board/freescale/imx8mn_evk/spl.c > @@ -110,14 +110,8 @@ int board_fit_config_name_match(const char *name) > } > #endif > > -#define UART_PAD_CTRL (PAD_CTL_DSE6 | PAD_CTL_FSEL1) > #define WDOG_PAD_CTRL (PAD_CTL_DSE6 | PAD_CTL_ODE | PAD_CTL_PUE | > PAD_CTL_PE) > > -static iomux_v3_cfg_t const uart_pads[] = { > - IMX8MN_PAD_UART2_RXD__UART2_DCE_RX | MUX_PAD_CTRL(UART_PAD_CTRL), > - IMX8MN_PAD_UART2_TXD__UART2_DCE_TX | MUX_PAD_CTRL(UART_PAD_CTRL), > -}; > - > static iomux_v3_cfg_t const wdog_pads[] = { > IMX8MN_PAD_GPIO1_IO02__WDOG1_WDOG_B | MUX_PAD_CTRL(WDOG_PAD_CTRL), > }; > @@ -130,8 +124,6 @@ int board_early_init_f(void) > > set_wdog_reset(wdog); > > - imx_iomux_v3_setup_multiple_pads(uart_pads, ARRAY_SIZE(uart_pads)); > - > return 0; > } > > @@ -147,8 +139,6 @@ void board_init_f(ulong dummy) > > timer_init(); > > - preloader_console_init(); > - > /* Clear the BSS. */ > memset(__bss_start, 0, __bss_end - __bss_start); > > @@ -158,6 +148,8 @@ void board_init_f(ulong dummy) > hang(); > } > > + preloader_console_init(); > + > enable_tzc380(); > > /* DDR initialization */ > diff --git a/configs/imx8mn_ddr4_evk_defconfig > b/configs/imx8mn_ddr4_evk_defconfig > index 917cdb5aa9d..474d9cfa4d2 100644 > --- a/configs/imx8mn_ddr4_evk_defconfig > +++ b/configs/imx8mn_ddr4_evk_defconfig > @@ -76,6 +76,7 @@ CONFIG_PINCTRL_IMX8M=y > CONFIG_DM_REGULATOR=y > CONFIG_DM_REGULATOR_FIXED=y > CONFIG_DM_REGULATOR_GPIO=y > +CONFIG_DM_SERIAL=y > CONFIG_MXC_UART=y > CONFIG_SYSRESET=y > CONFIG_SPL_SYSRESET=y > diff --git a/configs/imx8mn_evk_defconfig b/configs/imx8mn_evk_defconfig > index 7749ebe537e..5bc175154ba 100644 > --- a/configs/imx8mn_evk_defconfig > +++ b/configs/imx8mn_evk_defconfig > @@ -83,6 +83,7 @@ CONFIG_DM_REGULATOR=y > CONFIG_SPL_DM_REGULATOR=y > CONFIG_DM_REGULATOR_FIXED=y > CONFIG_DM_REGULATOR_GPIO=y > +CONFIG_DM_SERIAL=y > CONFIG_MXC_UART=y > CONFIG_SYSRESET=y > CONFIG_SPL_SYSRESET=y > -- > 2.35.1 >
Peng, I see you've been able to get SPL DM_SERIAL to work on IMX8M. This patch won't apply by the way due to commit ff1c7961d813 ("ARM: imx: imx8mn-evk: enable DM_SERIAL") so I think you need to rebase. I have not been able to get SPL DM_SERIAL to work on IMX8MM/IMX8MN... it hangs my board. Is this due to moving preloader_console_init() perhaps? Moving it didn't work for me. Please explain the move of preloader_console_init() and please let me know if you have tested this on imx/master. Fabio, perhaps you can test? Best Regards, Tim