All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH V3 0/4] imx: imx8m: enable DM SERIAL
@ 2022-04-13  2:11 Peng Fan (OSS)
  2022-04-13  2:11 ` [PATCH V3 1/4] imx: imx8mp_evk: enable CONFIG_DM_SERIAL Peng Fan (OSS)
                   ` (3 more replies)
  0 siblings, 4 replies; 7+ messages in thread
From: Peng Fan (OSS) @ 2022-04-13  2:11 UTC (permalink / raw)
  To: sbabic, festevam; +Cc: uboot-imx, peng.fan, u-boot

From: Peng Fan <peng.fan@nxp.com>

V3:
 Add missed Signed-off-by
 Rebased to only add CONFIG_DM_SERIAL, not touch other config change in defconfig

V2:
 Include imx8mq-evk in this patchset.
 For i.MX8MN/M/P, drop board level uart pinmux settings,
 move preloader_console_init after driver probe.

 Tested on all four boards. Note i.MX8MQ-EVK not have SPL_DM, so pinmux for
 uart still there for spl usage.


Peng Fan (4):
  imx: imx8mp_evk: enable CONFIG_DM_SERIAL
  imx: imx8mm_evk: enable CONFIG_DM_SERIAL
  imx: imx8mn_evk: enable CONFIG_DM_SERIAL
  imx: imx8mq-evk: enable CONFIG_DM_SERIAL

 arch/arm/dts/imx8mq-evk-u-boot.dtsi     | 32 +++++++++++++++++++++++++
 board/freescale/imx8mm_evk/spl.c        | 12 ++--------
 board/freescale/imx8mn_evk/spl.c        | 12 ++--------
 board/freescale/imx8mp_evk/imx8mp_evk.c |  8 -------
 configs/imx8mm_evk_defconfig            |  1 +
 configs/imx8mn_ddr4_evk_defconfig       |  1 +
 configs/imx8mn_evk_defconfig            |  1 +
 configs/imx8mp_evk_defconfig            |  1 +
 configs/imx8mq_evk_defconfig            |  1 +
 9 files changed, 41 insertions(+), 28 deletions(-)

-- 
2.35.1


^ permalink raw reply	[flat|nested] 7+ messages in thread

* [PATCH V3 1/4] imx: imx8mp_evk: enable CONFIG_DM_SERIAL
  2022-04-13  2:11 [PATCH V3 0/4] imx: imx8m: enable DM SERIAL Peng Fan (OSS)
@ 2022-04-13  2:11 ` Peng Fan (OSS)
  2022-04-13  2:11 ` [PATCH V3 2/4] imx: imx8mm_evk: " Peng Fan (OSS)
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 7+ messages in thread
From: Peng Fan (OSS) @ 2022-04-13  2:11 UTC (permalink / raw)
  To: sbabic, festevam, NXP i.MX U-Boot Team, Peng Fan; +Cc: u-boot

From: Peng Fan <peng.fan@nxp.com>

Enable CONFIG_DM_SERIAL. uart2 and its pinmux was already
marked with u-boot,dm-spl.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
---
 board/freescale/imx8mp_evk/imx8mp_evk.c | 8 --------
 configs/imx8mp_evk_defconfig            | 1 +
 2 files changed, 1 insertion(+), 8 deletions(-)

diff --git a/board/freescale/imx8mp_evk/imx8mp_evk.c b/board/freescale/imx8mp_evk/imx8mp_evk.c
index 62096c24fb7..fb6c61c39e7 100644
--- a/board/freescale/imx8mp_evk/imx8mp_evk.c
+++ b/board/freescale/imx8mp_evk/imx8mp_evk.c
@@ -20,14 +20,8 @@
 
 DECLARE_GLOBAL_DATA_PTR;
 
-#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[] = {
-	MX8MP_PAD_UART2_RXD__UART2_DCE_RX | MUX_PAD_CTRL(UART_PAD_CTRL),
-	MX8MP_PAD_UART2_TXD__UART2_DCE_TX | MUX_PAD_CTRL(UART_PAD_CTRL),
-};
-
 static iomux_v3_cfg_t const wdog_pads[] = {
 	MX8MP_PAD_GPIO1_IO02__WDOG1_WDOG_B  | MUX_PAD_CTRL(WDOG_PAD_CTRL),
 };
@@ -40,8 +34,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;
 }
 
diff --git a/configs/imx8mp_evk_defconfig b/configs/imx8mp_evk_defconfig
index c64b699e105..01240e543af 100644
--- a/configs/imx8mp_evk_defconfig
+++ b/configs/imx8mp_evk_defconfig
@@ -91,6 +91,7 @@ CONFIG_DM_REGULATOR=y
 CONFIG_DM_REGULATOR_FIXED=y
 CONFIG_DM_REGULATOR_GPIO=y
 CONFIG_SPL_POWER_I2C=y
+CONFIG_DM_SERIAL=y
 CONFIG_MXC_UART=y
 CONFIG_SYSRESET=y
 CONFIG_SPL_SYSRESET=y
-- 
2.35.1


^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [PATCH V3 2/4] imx: imx8mm_evk: enable CONFIG_DM_SERIAL
  2022-04-13  2:11 [PATCH V3 0/4] imx: imx8m: enable DM SERIAL Peng Fan (OSS)
  2022-04-13  2:11 ` [PATCH V3 1/4] imx: imx8mp_evk: enable CONFIG_DM_SERIAL Peng Fan (OSS)
@ 2022-04-13  2:11 ` Peng Fan (OSS)
  2022-04-13  2:11 ` [PATCH V3 3/4] imx: imx8mn_evk: " Peng Fan (OSS)
  2022-04-13  2:11 ` [PATCH V3 4/4] imx: imx8mq-evk: " Peng Fan (OSS)
  3 siblings, 0 replies; 7+ messages in thread
From: Peng Fan (OSS) @ 2022-04-13  2:11 UTC (permalink / raw)
  To: sbabic, festevam, Peng Fan, NXP i.MX U-Boot Team; +Cc: u-boot

From: Peng Fan <peng.fan@nxp.com>

Enable CONFIG_DM_SERIAL. uart2 and its pinmux was already
marked with u-boot,dm-spl.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
---
 board/freescale/imx8mm_evk/spl.c | 12 ++----------
 configs/imx8mm_evk_defconfig     |  1 +
 2 files changed, 3 insertions(+), 10 deletions(-)

diff --git a/board/freescale/imx8mm_evk/spl.c b/board/freescale/imx8mm_evk/spl.c
index 4ef7f6f1806..e65dc2194ea 100644
--- a/board/freescale/imx8mm_evk/spl.c
+++ b/board/freescale/imx8mm_evk/spl.c
@@ -64,14 +64,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[] = {
-	IMX8MM_PAD_UART2_RXD_UART2_RX | MUX_PAD_CTRL(UART_PAD_CTRL),
-	IMX8MM_PAD_UART2_TXD_UART2_TX | MUX_PAD_CTRL(UART_PAD_CTRL),
-};
-
 static iomux_v3_cfg_t const wdog_pads[] = {
 	IMX8MM_PAD_GPIO1_IO02_WDOG1_WDOG_B  | MUX_PAD_CTRL(WDOG_PAD_CTRL),
 };
@@ -84,8 +78,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;
 }
 
@@ -139,8 +131,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();
 
 	power_init_board();
diff --git a/configs/imx8mm_evk_defconfig b/configs/imx8mm_evk_defconfig
index 81268788fa1..cc5f2801b15 100644
--- a/configs/imx8mm_evk_defconfig
+++ b/configs/imx8mm_evk_defconfig
@@ -78,6 +78,7 @@ CONFIG_SPL_DM_PMIC_PCA9450=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
-- 
2.35.1


^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [PATCH V3 3/4] imx: imx8mn_evk: enable CONFIG_DM_SERIAL
  2022-04-13  2:11 [PATCH V3 0/4] imx: imx8m: enable DM SERIAL Peng Fan (OSS)
  2022-04-13  2:11 ` [PATCH V3 1/4] imx: imx8mp_evk: enable CONFIG_DM_SERIAL Peng Fan (OSS)
  2022-04-13  2:11 ` [PATCH V3 2/4] imx: imx8mm_evk: " Peng Fan (OSS)
@ 2022-04-13  2:11 ` Peng Fan (OSS)
  2022-04-14 17:20   ` Tim Harvey
  2022-04-13  2:11 ` [PATCH V3 4/4] imx: imx8mq-evk: " Peng Fan (OSS)
  3 siblings, 1 reply; 7+ messages in thread
From: Peng Fan (OSS) @ 2022-04-13  2:11 UTC (permalink / raw)
  To: sbabic, festevam, NXP i.MX U-Boot Team, Peng Fan; +Cc: u-boot

From: Peng Fan <peng.fan@nxp.com>

Enable CONFIG_DM_SERIAL. uart2 and its pinmux was already
marked with u-boot,dm-spl.

Signed-off-by: Peng Fan <peng.fan@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


^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [PATCH V3 4/4] imx: imx8mq-evk: enable CONFIG_DM_SERIAL
  2022-04-13  2:11 [PATCH V3 0/4] imx: imx8m: enable DM SERIAL Peng Fan (OSS)
                   ` (2 preceding siblings ...)
  2022-04-13  2:11 ` [PATCH V3 3/4] imx: imx8mn_evk: " Peng Fan (OSS)
@ 2022-04-13  2:11 ` Peng Fan (OSS)
  3 siblings, 0 replies; 7+ messages in thread
From: Peng Fan (OSS) @ 2022-04-13  2:11 UTC (permalink / raw)
  To: sbabic, festevam, NXP i.MX U-Boot Team, Peng Fan; +Cc: u-boot

From: Peng Fan <peng.fan@nxp.com>

Marked related nodes as u-boot,dm-spl for serial driver model
Enable CONFIG_DM_SERIAL

Signed-off-by: Peng Fan <peng.fan@nxp.com>
---
 arch/arm/dts/imx8mq-evk-u-boot.dtsi | 32 +++++++++++++++++++++++++++++
 configs/imx8mq_evk_defconfig        |  1 +
 2 files changed, 33 insertions(+)

diff --git a/arch/arm/dts/imx8mq-evk-u-boot.dtsi b/arch/arm/dts/imx8mq-evk-u-boot.dtsi
index 6f9c81462ea..919c1f66d38 100644
--- a/arch/arm/dts/imx8mq-evk-u-boot.dtsi
+++ b/arch/arm/dts/imx8mq-evk-u-boot.dtsi
@@ -2,6 +2,34 @@
 
 #include "imx8mq-u-boot.dtsi"
 
+&{/soc@0} {
+	u-boot,dm-spl;
+};
+
+&{/soc@0/bus@30000000} {
+	u-boot,dm-spl;
+};
+
+&{/soc@0/bus@30400000} {
+	u-boot,dm-spl;
+};
+
+&{/soc@0/bus@30800000} {
+	u-boot,dm-spl;
+};
+
+&{/soc@0/bus@32c00000} {
+	u-boot,dm-spl;
+};
+
+&iomuxc {
+	u-boot,dm-spl;
+};
+
+&pinctrl_uart1 {
+	u-boot,dm-spl;
+};
+
 &usdhc1 {
 	mmc-hs400-1_8v;
 };
@@ -10,3 +38,7 @@
 	sd-uhs-sdr104;
 	sd-uhs-ddr50;
 };
+
+&uart1 {
+	u-boot,dm-spl;
+};
diff --git a/configs/imx8mq_evk_defconfig b/configs/imx8mq_evk_defconfig
index df7a259f35a..780f93103c7 100644
--- a/configs/imx8mq_evk_defconfig
+++ b/configs/imx8mq_evk_defconfig
@@ -80,6 +80,7 @@ CONFIG_DM_REGULATOR_FIXED=y
 CONFIG_DM_REGULATOR_GPIO=y
 CONFIG_SPL_POWER_I2C=y
 CONFIG_DM_RESET=y
+CONFIG_DM_SERIAL=y
 CONFIG_MXC_UART=y
 CONFIG_DM_THERMAL=y
 CONFIG_USB=y
-- 
2.35.1


^ permalink raw reply related	[flat|nested] 7+ messages in thread

* Re: [PATCH V3 3/4] imx: imx8mn_evk: enable CONFIG_DM_SERIAL
  2022-04-13  2:11 ` [PATCH V3 3/4] imx: imx8mn_evk: " Peng Fan (OSS)
@ 2022-04-14 17:20   ` Tim Harvey
  2022-04-14 17:40     ` Tim Harvey
  0 siblings, 1 reply; 7+ messages in thread
From: Tim Harvey @ 2022-04-14 17:20 UTC (permalink / raw)
  To: Peng Fan (OSS)
  Cc: Stefano Babic, Fabio Estevam, NXP i.MX U-Boot Team, Peng Fan,
	u-boot, Michael Nazzareno Trimarchi

On Tue, Apr 12, 2022 at 6:31 PM Peng Fan (OSS) <peng.fan@oss.nxp.com> wrote:
>
> From: Peng Fan <peng.fan@nxp.com>
>
> Enable CONFIG_DM_SERIAL. uart2 and its pinmux was already
> marked with u-boot,dm-spl.
>
> Signed-off-by: Peng Fan <peng.fan@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

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH V3 3/4] imx: imx8mn_evk: enable CONFIG_DM_SERIAL
  2022-04-14 17:20   ` Tim Harvey
@ 2022-04-14 17:40     ` Tim Harvey
  0 siblings, 0 replies; 7+ messages in thread
From: Tim Harvey @ 2022-04-14 17:40 UTC (permalink / raw)
  To: Peng Fan (OSS)
  Cc: Stefano Babic, Fabio Estevam, NXP i.MX U-Boot Team, Peng Fan,
	u-boot, Michael Nazzareno Trimarchi

On Thu, Apr 14, 2022 at 10:20 AM Tim Harvey <tharvey@gateworks.com> wrote:
>
> On Tue, Apr 12, 2022 at 6:31 PM Peng Fan (OSS) <peng.fan@oss.nxp.com> wrote:
> >
> > From: Peng Fan <peng.fan@nxp.com>
> >
> > Enable CONFIG_DM_SERIAL. uart2 and its pinmux was already
> > marked with u-boot,dm-spl.
> >
> > Signed-off-by: Peng Fan <peng.fan@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?
>

Peng,

I see my mistake now... the preloader_console_init() must come after
spl_early_init().

You still need to rebase on imx/master and you should also add a
comment to the commit such as:
"move the preloader_console_init() call after spl_early_init() to
avoid board hang" or perhaps you can come up with a reason for why the
board hangs otherwise. Is it that spl_early_init() does the relocation
and we need to be after that?

Best Regards,

Tim

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2022-04-14 17:40 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-04-13  2:11 [PATCH V3 0/4] imx: imx8m: enable DM SERIAL Peng Fan (OSS)
2022-04-13  2:11 ` [PATCH V3 1/4] imx: imx8mp_evk: enable CONFIG_DM_SERIAL Peng Fan (OSS)
2022-04-13  2:11 ` [PATCH V3 2/4] imx: imx8mm_evk: " Peng Fan (OSS)
2022-04-13  2:11 ` [PATCH V3 3/4] imx: imx8mn_evk: " Peng Fan (OSS)
2022-04-14 17:20   ` Tim Harvey
2022-04-14 17:40     ` Tim Harvey
2022-04-13  2:11 ` [PATCH V3 4/4] imx: imx8mq-evk: " Peng Fan (OSS)

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.