[PATCH v6 00/11] board: toradex: verdin-imx8mm: target refresh

From: Marcel Ziswiler marcel.ziswiler@toradex.com
An assortment of fixes and improvements like an Ethernet PHY configuration fix, DEK blob encapsulation preparation, migration to using binman to pack images, SLEEP_MOCI# enablement, dropping of V1.0 hardware support [1], renaming kernel image variable, using preboot for fdtfile evaluation and watchdog pinctrl fix.
Note that this series is applied on top of Peng's Makefile fix [2] as otherwise, it may not quite generate all binman artefacts in the right order as discussed here [3].
[1] https://developer.toradex.com/verdin-sample-phase-over [2] https://marc.info/?l=u-boot&m=162908373904742 [3] https://marc.info/?l=u-boot&m=162945614207220
Changes in v6: - New patch re-ordering fdt nodes and properties. - Update commit message as requested by Wolfgang.
Changes in v5: - Drop device tree part already done by Marek's patch. - Add another fixes tag as his patch forgot the board code part. - Re-based on top of u-boot-imx, master yet again.
Changes in v4: - Add Heiko Schocher's reviewed-by tag. - Fix copyright periods. - Re-based.
Changes in v3: - Case fold hex string. - Revert binman part of imx8mm-verdin-u-boot.dtsi to a plain copy from imx8mm-evk and postpone further improvements to after migrating to a common binman config as agreed with Frieder and Simon. - New patch cleaning up include order. - Add Fabio's reviewed-by tag. - Fix patch. - Add missing apalis-imx8 part. - While at it update copyright year resp. period. - Fix closing endif comment.
Changes in v2: - Explicitly pass filename to binman when generating binaries as suggested by Heiko. - Use proper intermediate binary u-boot-spl-ddr.bin for imximage as pointed out by Heiko. - Drop first patch ("imx: mkimage_fit_atf: fix legacy image generation") as a similar fix was already refused earlier. - New patch allows booting recent embedded Linux BSPs. - New patch addressing dynamic fdtfile definition. - New patch fixing watchdog pinctrl issue.
Igor Opaniuk (1): verdin-imx8mm: use preboot for fdtfile evaluation
Marcel Ziswiler (7): imx8m: clean-up kconfig indentation verdin-imx8mm: fix ethernet ARM: dts: imx8mm-verdin: prepare for dek blob encapsulation arm64: dts: imx8mm-verdin-u-boot.dtsi: alphabetically re-order verdin-imx8mm: switch to use binman to pack images verdin-imx8mm: clean-up include order verdin-imx8mm: fix watchdog pinctrl issue
Max Krummenacher (2): verdin-imx8mm: enable sleep_moci output verdin-imx8mm: drop support for v1.0 hardware
Oleksandr Suvorov (1): include/configs: apalis-imx8/verdin-imx8mm: rename kernel image variable
arch/arm/dts/imx8mm-verdin-u-boot.dtsi | 147 +++++++++++++++++++- arch/arm/dts/imx8mm-verdin.dts | 18 +++ arch/arm/mach-imx/imx8m/Kconfig | 21 +-- board/toradex/verdin-imx8mm/imximage.cfg | 11 +- board/toradex/verdin-imx8mm/verdin-imx8mm.c | 81 +---------- configs/verdin-imx8mm_defconfig | 6 +- doc/board/toradex/verdin-imx8mm.rst | 53 ++++--- include/configs/apalis-imx8.h | 6 +- include/configs/verdin-imx8mm.h | 10 +- 9 files changed, 220 insertions(+), 133 deletions(-)

From: Marcel Ziswiler marcel.ziswiler@toradex.com
Replace spurious spaces with proper tabs.
Signed-off-by: Marcel Ziswiler marcel.ziswiler@toradex.com Reviewed-by: Fabio Estevam festevam@gmail.com ---
(no changes since v1)
arch/arm/mach-imx/imx8m/Kconfig | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-)
diff --git a/arch/arm/mach-imx/imx8m/Kconfig b/arch/arm/mach-imx/imx8m/Kconfig index d6b9571b373..60a29cddda1 100644 --- a/arch/arm/mach-imx/imx8m/Kconfig +++ b/arch/arm/mach-imx/imx8m/Kconfig @@ -25,14 +25,14 @@ config SYS_SOC default "imx8m"
choice - prompt "NXP i.MX8M board select" + prompt "NXP i.MX8M board select" optional
config TARGET_IMX8MQ_CM - bool "Ronetix iMX8MQ-CM SoM" + bool "Ronetix iMX8MQ-CM SoM" select BINMAN - select IMX8MQ - select IMX8M_LPDDR4 + select IMX8MQ + select IMX8M_LPDDR4
config TARGET_IMX8MQ_EVK bool "imx8mq_evk" @@ -105,10 +105,10 @@ config TARGET_PICO_IMX8MQ select IMX8M_LPDDR4
config TARGET_VERDIN_IMX8MM - bool "Support Toradex Verdin iMX8M Mini module" - select IMX8MM - select SUPPORT_SPL - select IMX8M_LPDDR4 + bool "Support Toradex Verdin iMX8M Mini module" + select IMX8MM + select SUPPORT_SPL + select IMX8M_LPDDR4
config TARGET_IMX8MM_BEACON bool "imx8mm Beacon Embedded devkit" @@ -125,14 +125,14 @@ config TARGET_IMX8MN_BEACON config TARGET_PHYCORE_IMX8MM bool "PHYTEC PHYCORE i.MX8MM" select IMX8MM - select SUPPORT_SPL + select SUPPORT_SPL select IMX8M_LPDDR4
config TARGET_PHYCORE_IMX8MP bool "PHYTEC PHYCORE i.MX8MP" select BINMAN select IMX8MP - select SUPPORT_SPL + select SUPPORT_SPL select IMX8M_LPDDR4
config TARGET_IMX8MM_CL_IOT_GATE

From: Marcel Ziswiler marcel.ziswiler@toradex.com Replace spurious spaces with proper tabs. Signed-off-by: Marcel Ziswiler marcel.ziswiler@toradex.com Reviewed-by: Fabio Estevam festevam@gmail.com
Applied to u-boot-imx, master, thanks !
Best regards, Stefano Babic

From: Marcel Ziswiler marcel.ziswiler@toradex.com
Turns out Microship (formerly Micrel) meanwhile integrated proper support for the DLL setup on their KSZ9131. Unfortunately, this conflicts with our previous board code doing that. Fix this by getting rid of our board code and just relying on the generic implementation relying on rgmii-id being used as phy-mode.
Fixes: commit c6df0e2ffdc4 ("net: phy: micrel: add support for DLL setup on ksz9131") Fixes: commit af2d3c91d877 ("ARM: dts: imx8mm-verdin: Set PHY mode to RGMII-ID") Signed-off-by: Marcel Ziswiler marcel.ziswiler@toradex.com Reviewed-by: Fabio Estevam festevam@gmail.com
---
(no changes since v5)
Changes in v5: - Drop device tree part already done by Marek's patch. - Add another fixes tag as his patch forgot the board code part.
board/toradex/verdin-imx8mm/verdin-imx8mm.c | 64 --------------------- 1 file changed, 64 deletions(-)
diff --git a/board/toradex/verdin-imx8mm/verdin-imx8mm.c b/board/toradex/verdin-imx8mm/verdin-imx8mm.c index 76f4a1e209a..1644f4b3081 100644 --- a/board/toradex/verdin-imx8mm/verdin-imx8mm.c +++ b/board/toradex/verdin-imx8mm/verdin-imx8mm.c @@ -36,70 +36,6 @@ static int setup_fec(void)
return 0; } - -int board_phy_config(struct phy_device *phydev) -{ - int tmp; - - switch (ksz9xx1_phy_get_id(phydev) & MII_KSZ9x31_SILICON_REV_MASK) { - case PHY_ID_KSZ9031: - /* - * The PHY adds 1.2ns for the RXC and 0ns for TXC clock by - * default. The MAC and the layout don't add a skew between - * clock and data. - * Add 0.3ns for the RXC path and 0.96 + 0.42 ns (1.38 ns) for - * the TXC path to get the required clock skews. - */ - /* control data pad skew - devaddr = 0x02, register = 0x04 */ - ksz9031_phy_extended_write(phydev, 0x02, - MII_KSZ9031_EXT_RGMII_CTRL_SIG_SKEW, - MII_KSZ9031_MOD_DATA_NO_POST_INC, - 0x0070); - /* rx data pad skew - devaddr = 0x02, register = 0x05 */ - ksz9031_phy_extended_write(phydev, 0x02, - MII_KSZ9031_EXT_RGMII_RX_DATA_SKEW, - MII_KSZ9031_MOD_DATA_NO_POST_INC, - 0x7777); - /* tx data pad skew - devaddr = 0x02, register = 0x06 */ - ksz9031_phy_extended_write(phydev, 0x02, - MII_KSZ9031_EXT_RGMII_TX_DATA_SKEW, - MII_KSZ9031_MOD_DATA_NO_POST_INC, - 0x0000); - /* gtx and rx clock pad skew - devaddr = 0x02,register = 0x08 */ - ksz9031_phy_extended_write(phydev, 0x02, - MII_KSZ9031_EXT_RGMII_CLOCK_SKEW, - MII_KSZ9031_MOD_DATA_NO_POST_INC, - 0x03f4); - break; - case PHY_ID_KSZ9131: - default: - /* read rxc dll control - devaddr = 0x2, register = 0x4c */ - tmp = ksz9031_phy_extended_read(phydev, 0x02, - MII_KSZ9131_EXT_RGMII_2NS_SKEW_RXDLL, - MII_KSZ9031_MOD_DATA_NO_POST_INC); - /* disable rxdll bypass (enable 2ns skew delay on RXC) */ - tmp &= ~MII_KSZ9131_RXTXDLL_BYPASS; - /* rxc data pad skew 2ns - devaddr = 0x02, register = 0x4c */ - tmp = ksz9031_phy_extended_write(phydev, 0x02, - MII_KSZ9131_EXT_RGMII_2NS_SKEW_RXDLL, - MII_KSZ9031_MOD_DATA_NO_POST_INC, tmp); - /* read txc dll control - devaddr = 0x02, register = 0x4d */ - tmp = ksz9031_phy_extended_read(phydev, 0x02, - MII_KSZ9131_EXT_RGMII_2NS_SKEW_TXDLL, - MII_KSZ9031_MOD_DATA_NO_POST_INC); - /* disable txdll bypass (enable 2ns skew delay on TXC) */ - tmp &= ~MII_KSZ9131_RXTXDLL_BYPASS; - /* rxc data pad skew 2ns - devaddr = 0x02, register = 0x4d */ - tmp = ksz9031_phy_extended_write(phydev, 0x02, - MII_KSZ9131_EXT_RGMII_2NS_SKEW_TXDLL, - MII_KSZ9031_MOD_DATA_NO_POST_INC, tmp); - break; - } - - if (phydev->drv->config) - phydev->drv->config(phydev); - return 0; -} #endif
int board_init(void)

From: Marcel Ziswiler marcel.ziswiler@toradex.com Turns out Microship (formerly Micrel) meanwhile integrated proper support for the DLL setup on their KSZ9131. Unfortunately, this conflicts with our previous board code doing that. Fix this by getting rid of our board code and just relying on the generic implementation relying on rgmii-id being used as phy-mode. Fixes: commit c6df0e2ffdc4 ("net: phy: micrel: add support for DLL setup on ksz9131") Fixes: commit af2d3c91d877 ("ARM: dts: imx8mm-verdin: Set PHY mode to RGMII-ID") Signed-off-by: Marcel Ziswiler marcel.ziswiler@toradex.com Reviewed-by: Fabio Estevam festevam@gmail.com
Applied to u-boot-imx, master, thanks !
Best regards, Stefano Babic

From: Marcel Ziswiler marcel.ziswiler@toradex.com
Prepare for DEK blob encapsulation support through "dek_blob" command. On ARMv8, u-boot runs in non-secure, thus cannot encapsulate a DEK blob for encrypted boot. The DEK blob is encapsulated by OP-TEE through a trusted application call. U-boot sends and receives the DEK and the DEK blob binaries through OP-TEE dynamic shared memory.
To enable the DEK blob encapsulation, add to the defconfig: CONFIG_SECURE_BOOT=y CONFIG_FAT_WRITE=y CONFIG_CMD_DEKBLOB=y
Taken from NXP's commit 56d2050f4028 ("imx8m: Add DEK blob encapsulation for imx8m").
Signed-off-by: Marcel Ziswiler marcel.ziswiler@toradex.com Reviewed-by: Fabio Estevam festevam@gmail.com ---
(no changes since v1)
arch/arm/dts/imx8mm-verdin-u-boot.dtsi | 7 +++++++ 1 file changed, 7 insertions(+)
diff --git a/arch/arm/dts/imx8mm-verdin-u-boot.dtsi b/arch/arm/dts/imx8mm-verdin-u-boot.dtsi index 67c31c49b6c..a97626fa0c1 100644 --- a/arch/arm/dts/imx8mm-verdin-u-boot.dtsi +++ b/arch/arm/dts/imx8mm-verdin-u-boot.dtsi @@ -6,6 +6,13 @@ #include "imx8mm-u-boot.dtsi"
/ { + firmware { + optee { + compatible = "linaro,optee-tz"; + method = "smc"; + }; + }; + wdt-reboot { compatible = "wdt-reboot"; wdt = <&wdog1>;

From: Marcel Ziswiler marcel.ziswiler@toradex.com Prepare for DEK blob encapsulation support through "dek_blob" command. On ARMv8, u-boot runs in non-secure, thus cannot encapsulate a DEK blob for encrypted boot. The DEK blob is encapsulated by OP-TEE through a trusted application call. U-boot sends and receives the DEK and the DEK blob binaries through OP-TEE dynamic shared memory. To enable the DEK blob encapsulation, add to the defconfig: CONFIG_SECURE_BOOT=y CONFIG_FAT_WRITE=y CONFIG_CMD_DEKBLOB=y Taken from NXP's commit 56d2050f4028 ("imx8m: Add DEK blob encapsulation for imx8m"). Signed-off-by: Marcel Ziswiler marcel.ziswiler@toradex.com Reviewed-by: Fabio Estevam festevam@gmail.com
Applied to u-boot-imx, master, thanks !
Best regards, Stefano Babic

From: Marcel Ziswiler marcel.ziswiler@toradex.com
Alphabetically re-order nodes and properties.
Signed-off-by: Marcel Ziswiler marcel.ziswiler@toradex.com
---
Changes in v6: - New patch.
arch/arm/dts/imx8mm-verdin-u-boot.dtsi | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-)
diff --git a/arch/arm/dts/imx8mm-verdin-u-boot.dtsi b/arch/arm/dts/imx8mm-verdin-u-boot.dtsi index a97626fa0c1..1fc499806db 100644 --- a/arch/arm/dts/imx8mm-verdin-u-boot.dtsi +++ b/arch/arm/dts/imx8mm-verdin-u-boot.dtsi @@ -15,11 +15,19 @@
wdt-reboot { compatible = "wdt-reboot"; - wdt = <&wdog1>; u-boot,dm-spl; + wdt = <&wdog1>; }; };
+&{/soc@0/bus@30800000/i2c@30a20000/pmic} { + u-boot,dm-spl; +}; + +&{/soc@0/bus@30800000/i2c@30a20000/pmic/regulators} { + u-boot,dm-spl; +}; + &gpio1 { u-boot,dm-spl; }; @@ -64,14 +72,6 @@ u-boot,dm-spl; };
-&{/soc@0/bus@30800000/i2c@30a20000/pmic} { - u-boot,dm-spl; -}; - -&{/soc@0/bus@30800000/i2c@30a20000/pmic/regulators} { - u-boot,dm-spl; -}; - &uart1 { u-boot,dm-spl; };

From: Marcel Ziswiler marcel.ziswiler@toradex.com Alphabetically re-order nodes and properties. Signed-off-by: Marcel Ziswiler marcel.ziswiler@toradex.com
Applied to u-boot-imx, master, thanks !
Best regards, Stefano Babic

From: Marcel Ziswiler marcel.ziswiler@toradex.com
Use binman to pack images.
Signed-off-by: Marcel Ziswiler marcel.ziswiler@toradex.com Reviewed-by: Heiko Thiery heiko.thiery@gmail.com Reviewed-by: Fabio Estevam festevam@gmail.com Reviewed-by: Heiko Schocher hs@denx.de
---
(no changes since v4)
Changes in v4: - Add Heiko Schocher's reviewed-by tag. - Fix copyright periods.
Changes in v3: - Case fold hex string. - Revert binman part of imx8mm-verdin-u-boot.dtsi to a plain copy from imx8mm-evk and postpone further improvements to after migrating to a common binman config as agreed with Frieder and Simon.
Changes in v2: - Explicitly pass filename to binman when generating binaries as suggested by Heiko. - Use proper intermediate binary u-boot-spl-ddr.bin for imximage as pointed out by Heiko.
arch/arm/dts/imx8mm-verdin-u-boot.dtsi | 124 ++++++++++++++++++++++- arch/arm/mach-imx/imx8m/Kconfig | 1 + board/toradex/verdin-imx8mm/imximage.cfg | 11 +- configs/verdin-imx8mm_defconfig | 2 +- doc/board/toradex/verdin-imx8mm.rst | 53 +++++----- 5 files changed, 157 insertions(+), 34 deletions(-)
diff --git a/arch/arm/dts/imx8mm-verdin-u-boot.dtsi b/arch/arm/dts/imx8mm-verdin-u-boot.dtsi index 1fc499806db..6a7e9d776c8 100644 --- a/arch/arm/dts/imx8mm-verdin-u-boot.dtsi +++ b/arch/arm/dts/imx8mm-verdin-u-boot.dtsi @@ -1,11 +1,15 @@ // SPDX-License-Identifier: GPL-2.0+ OR MIT /* - * Copyright 2020 Toradex + * Copyright 2020-2021 Toradex */
#include "imx8mm-u-boot.dtsi"
/ { + binman: binman { + multiple-images; + }; + firmware { optee { compatible = "linaro,optee-tz"; @@ -91,3 +95,121 @@ &wdog1 { u-boot,dm-spl; }; + +&binman { + u-boot-spl-ddr { + filename = "u-boot-spl-ddr.bin"; + pad-byte = <0xff>; + align-size = <4>; + align = <4>; + + u-boot-spl { + align-end = <4>; + }; + + blob_1: blob-ext@1 { + filename = "lpddr4_pmu_train_1d_imem.bin"; + size = <0x8000>; + }; + + blob_2: blob-ext@2 { + filename = "lpddr4_pmu_train_1d_dmem.bin"; + size = <0x4000>; + }; + + blob_3: blob-ext@3 { + filename = "lpddr4_pmu_train_2d_imem.bin"; + size = <0x8000>; + }; + + blob_4: blob-ext@4 { + filename = "lpddr4_pmu_train_2d_dmem.bin"; + size = <0x4000>; + }; + }; + + spl { + filename = "spl.bin"; + + mkimage { + args = "-n spl/u-boot-spl.cfgout -T imx8mimage -e 0x7e1000"; + + blob { + filename = "u-boot-spl-ddr.bin"; + }; + }; + }; + + itb { + filename = "u-boot.itb"; + + fit { + description = "Configuration to load ATF before U-Boot"; + #address-cells = <1>; + fit,external-offset = <CONFIG_FIT_EXTERNAL_OFFSET>; + + images { + uboot { + description = "U-Boot (64-bit)"; + type = "standalone"; + arch = "arm64"; + compression = "none"; + load = <CONFIG_SYS_TEXT_BASE>; + + uboot_blob: blob-ext { + filename = "u-boot-nodtb.bin"; + }; + }; + + atf { + description = "ARM Trusted Firmware"; + type = "firmware"; + arch = "arm64"; + compression = "none"; + load = <0x920000>; + entry = <0x920000>; + + atf_blob: blob-ext { + filename = "bl31.bin"; + }; + }; + + fdt { + description = "NAME"; + type = "flat_dt"; + compression = "none"; + + uboot_fdt_blob: blob-ext { + filename = "u-boot.dtb"; + }; + }; + }; + + configurations { + default = "conf"; + + conf { + description = "NAME"; + firmware = "uboot"; + loadables = "atf"; + fdt = "fdt"; + }; + }; + }; + }; + + imx-boot { + filename = "flash.bin"; + pad-byte = <0x00>; + + spl: blob-ext@1 { + offset = <0x0>; + filename = "spl.bin"; + }; + + uboot: blob-ext@2 { + offset = <0x5fc00>; + filename = "u-boot.itb"; + }; + }; +}; diff --git a/arch/arm/mach-imx/imx8m/Kconfig b/arch/arm/mach-imx/imx8m/Kconfig index 60a29cddda1..73976fa8177 100644 --- a/arch/arm/mach-imx/imx8m/Kconfig +++ b/arch/arm/mach-imx/imx8m/Kconfig @@ -106,6 +106,7 @@ config TARGET_PICO_IMX8MQ
config TARGET_VERDIN_IMX8MM bool "Support Toradex Verdin iMX8M Mini module" + select BINMAN select IMX8MM select SUPPORT_SPL select IMX8M_LPDDR4 diff --git a/board/toradex/verdin-imx8mm/imximage.cfg b/board/toradex/verdin-imx8mm/imximage.cfg index b8b25ff4201..fcc92009f3b 100644 --- a/board/toradex/verdin-imx8mm/imximage.cfg +++ b/board/toradex/verdin-imx8mm/imximage.cfg @@ -1,16 +1,9 @@ /* SPDX-License-Identifier: GPL-2.0+ */ /* - * Copyright 2020 Toradex + * Copyright 2020-2021 Toradex */
#define __ASSEMBLY__
-FIT BOOT_FROM emmc_fastboot -LOADER spl/u-boot-spl-ddr.bin 0x7E1000 -SECOND_LOADER u-boot.itb 0x40200000 0x60000 - -DDR_FW lpddr4_pmu_train_1d_imem.bin -DDR_FW lpddr4_pmu_train_1d_dmem.bin -DDR_FW lpddr4_pmu_train_2d_imem.bin -DDR_FW lpddr4_pmu_train_2d_dmem.bin +LOADER u-boot-spl-ddr.bin 0x7e1000 diff --git a/configs/verdin-imx8mm_defconfig b/configs/verdin-imx8mm_defconfig index 98799994cea..1c8b505656a 100644 --- a/configs/verdin-imx8mm_defconfig +++ b/configs/verdin-imx8mm_defconfig @@ -23,7 +23,7 @@ CONFIG_SYS_LOAD_ADDR=0x40480000 CONFIG_FIT=y CONFIG_FIT_EXTERNAL_OFFSET=0x3000 CONFIG_SPL_LOAD_FIT=y -CONFIG_SPL_FIT_GENERATOR="arch/arm/mach-imx/mkimage_fit_atf.sh" +# CONFIG_USE_SPL_FIT_GENERATOR is not set CONFIG_OF_SYSTEM_SETUP=y # CONFIG_USE_BOOTCOMMAND is not set CONFIG_DEFAULT_FDT_FILE="fsl-imx8mm-verdin-dev.dtb" diff --git a/doc/board/toradex/verdin-imx8mm.rst b/doc/board/toradex/verdin-imx8mm.rst index b9f7dc39c96..a11c82da2f5 100644 --- a/doc/board/toradex/verdin-imx8mm.rst +++ b/doc/board/toradex/verdin-imx8mm.rst @@ -34,10 +34,10 @@ Get the DDR Firmware .. code-block:: bash
$ cd .. - $ wget https://www.nxp.com/lgfiles/NMG/MAD/YOCTO/firmware-imx-8.4.1.bin - $ chmod +x firmware-imx-8.4.1.bin - $ ./firmware-imx-8.4.1.bin - $ cp firmware-imx-8.4.1/firmware/ddr/synopsys/lpddr4*.bin ./ + $ wget https://www.nxp.com/lgfiles/NMG/MAD/YOCTO/firmware-imx-8.10.1.bin + $ chmod +x firmware-imx-8.10.1.bin + $ ./firmware-imx-8.10.1.bin + $ cp firmware-imx-8.10.1/firmware/ddr/synopsys/lpddr4*.bin ./
Build U-Boot ------------ @@ -46,7 +46,7 @@ Build U-Boot $ export CROSS_COMPILE=aarch64-linux-gnu- $ export ATF_LOAD_ADDR=0x920000 $ make verdin-imx8mm_defconfig - $ make flash.bin + $ make
Flash to eMMC ------------- @@ -78,21 +78,28 @@ Output:
.. code-block:: bash
- U-Boot SPL 2020.01-00187-gd411d164e5 (Jan 26 2020 - 04:47:26 +0100) - Normal Boot - Trying to boot from MMC1 - - U-Boot 2020.01-00187-gd411d164e5 (Jan 26 2020 - 04:47:26 +0100) - - CPU: Freescale i.MX8MMQ rev1.0 at 0 MHz - Reset cause: POR - DRAM: 2 GiB - MMC: FSL_SDHC: 0, FSL_SDHC: 1, FSL_SDHC: 2 - Loading Environment from MMC... OK - In: serial - Out: serial - Err: serial - Model: Toradex Verdin iMX8M Mini Quad 2GB Wi-Fi / BT IT V1.0A, Serial: - Net: eth0: ethernet@30be0000 - Hit any key to stop autoboot: 0 - Verdin iMX8MM # +U-Boot SPL 2021.10-rc2-00028-gee010ba1129 (Aug 23 2021 - 16:56:02 +0200) +Normal Boot +WDT: Started with servicing (60s timeout) +Trying to boot from MMC1 +NOTICE: BL31: v2.2(release):rel_imx_5.4.70_2.3.2_rc1-5-g835a8f67b +NOTICE: BL31: Built : 18:02:12, Aug 16 2021 + + +U-Boot 2021.10-rc2-00028-gee010ba1129 (Aug 23 2021 - 16:56:02 +0200) + +CPU: Freescale i.MX8MMQ rev1.0 at 1200 MHz +Reset cause: POR +DRAM: 2 GiB +WDT: Started with servicing (60s timeout) +MMC: FSL_SDHC: 0, FSL_SDHC: 1, FSL_SDHC: 2 +Loading Environment from MMC... OK +In: serial +Out: serial +Err: serial +Model: Toradex Verdin iMX8M Mini Quad 2GB Wi-Fi / BT IT V1.1A, Serial# 06760554 +Carrier: Toradex Verdin Development Board V1.1A, Serial# 10754333 +Setting variant to wifi +Net: eth0: ethernet@30be0000 +Hit any key to stop autoboot: 0 +Verdin iMX8MM #

From: Marcel Ziswiler marcel.ziswiler@toradex.com Use binman to pack images. Signed-off-by: Marcel Ziswiler marcel.ziswiler@toradex.com Reviewed-by: Heiko Thiery heiko.thiery@gmail.com Reviewed-by: Fabio Estevam festevam@gmail.com Reviewed-by: Heiko Schocher hs@denx.de
Applied to u-boot-imx, master, thanks !
Best regards, Stefano Babic

From: Max Krummenacher max.krummenacher@toradex.com
This powers some peripherals on the carrier board e.g. the USB hub.
Related-to: ELB-3206 Signed-off-by: Max Krummenacher max.krummenacher@toradex.com Signed-off-by: Marcel Ziswiler marcel.ziswiler@toradex.com Reviewed-by: Fabio Estevam festevam@gmail.com ---
(no changes since v1)
arch/arm/dts/imx8mm-verdin.dts | 18 ++++++++++++++++++ configs/verdin-imx8mm_defconfig | 1 + 2 files changed, 19 insertions(+)
diff --git a/arch/arm/dts/imx8mm-verdin.dts b/arch/arm/dts/imx8mm-verdin.dts index ac2a4b69d3c..a2331627d72 100644 --- a/arch/arm/dts/imx8mm-verdin.dts +++ b/arch/arm/dts/imx8mm-verdin.dts @@ -196,6 +196,18 @@ }; };
+&gpio5 { + ctrl_sleep_moci { + gpio-hog; + /* Verdin CTRL_SLEEP_MOCI# (SODIMM 256) */ + gpios = <1 GPIO_ACTIVE_HIGH>; + line-name = "CTRL_SLEEP_MOCI#"; + output-high; + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_ctrl_sleep_moci>; + }; +}; + /* On-module I2C */ &i2c1 { clock-frequency = <400000>; @@ -548,6 +560,12 @@ >; };
+ pinctrl_ctrl_sleep_moci: ctrlsleepmocigrp { + fsl,pins = < + MX8MM_IOMUXC_SAI3_TXD_GPIO5_IO1 0x1c4 /* SODIMM 256 */ + >; + }; + pinctrl_dsi_bkl_en: dsi_bkl_en { fsl,pins = < MX8MM_IOMUXC_NAND_CE2_B_GPIO3_IO3 0x1c4 /* SODIMM 21 */ diff --git a/configs/verdin-imx8mm_defconfig b/configs/verdin-imx8mm_defconfig index 1c8b505656a..ced0d0acc37 100644 --- a/configs/verdin-imx8mm_defconfig +++ b/configs/verdin-imx8mm_defconfig @@ -69,6 +69,7 @@ CONFIG_SPL_CLK_COMPOSITE_CCF=y CONFIG_CLK_COMPOSITE_CCF=y CONFIG_SPL_CLK_IMX8MM=y CONFIG_CLK_IMX8MM=y +CONFIG_GPIO_HOG=y CONFIG_MXC_GPIO=y CONFIG_DM_I2C=y CONFIG_MISC=y

From: Max Krummenacher max.krummenacher@toradex.com This powers some peripherals on the carrier board e.g. the USB hub. Related-to: ELB-3206 Signed-off-by: Max Krummenacher max.krummenacher@toradex.com Signed-off-by: Marcel Ziswiler marcel.ziswiler@toradex.com Reviewed-by: Fabio Estevam festevam@gmail.com
Applied to u-boot-imx, master, thanks !
Best regards, Stefano Babic

From: Marcel Ziswiler marcel.ziswiler@toradex.com
Alphabetically order includes. While at it also update copyright year resp. period.
Signed-off-by: Marcel Ziswiler marcel.ziswiler@toradex.com ---
(no changes since v3)
Changes in v3: - New patch cleaning up include order.
board/toradex/verdin-imx8mm/verdin-imx8mm.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/board/toradex/verdin-imx8mm/verdin-imx8mm.c b/board/toradex/verdin-imx8mm/verdin-imx8mm.c index 1644f4b3081..71ceb26e811 100644 --- a/board/toradex/verdin-imx8mm/verdin-imx8mm.c +++ b/board/toradex/verdin-imx8mm/verdin-imx8mm.c @@ -1,6 +1,6 @@ // SPDX-License-Identifier: GPL-2.0+ /* - * Copyright 2020 Toradex + * Copyright 2020-2021 Toradex */
#include <common.h> @@ -10,9 +10,9 @@ #include <asm/global_data.h> #include <asm/io.h> #include <i2c.h> +#include <micrel.h> #include <miiphy.h> #include <netdev.h> -#include <micrel.h>
#include "../common/tdx-cfg-block.h"

From: Marcel Ziswiler marcel.ziswiler@toradex.com Alphabetically order includes. While at it also update copyright year resp. period. Signed-off-by: Marcel Ziswiler marcel.ziswiler@toradex.com
Applied to u-boot-imx, master, thanks !
Best regards, Stefano Babic

From: Max Krummenacher max.krummenacher@toradex.com
We drop support for Verdin iMX8M Mini V1.0B.
Related-to: ELB-3551 Signed-off-by: Max Krummenacher max.krummenacher@toradex.com Signed-off-by: Marcel Ziswiler marcel.ziswiler@toradex.com Reviewed-by: Fabio Estevam festevam@gmail.com
---
(no changes since v5)
Changes in v5: - Re-based on top of u-boot-imx, master yet again.
Changes in v4: - Re-based.
Changes in v3: - Add Fabio's reviewed-by tag.
Changes in v2: - Drop first patch ("imx: mkimage_fit_atf: fix legacy image generation") as a similar fix was already refused earlier.
board/toradex/verdin-imx8mm/verdin-imx8mm.c | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-)
diff --git a/board/toradex/verdin-imx8mm/verdin-imx8mm.c b/board/toradex/verdin-imx8mm/verdin-imx8mm.c index 71ceb26e811..c51c99b5156 100644 --- a/board/toradex/verdin-imx8mm/verdin-imx8mm.c +++ b/board/toradex/verdin-imx8mm/verdin-imx8mm.c @@ -9,6 +9,7 @@ #include <asm/arch/sys_proto.h> #include <asm/global_data.h> #include <asm/io.h> +#include <hang.h> #include <i2c.h> #include <micrel.h> #include <miiphy.h> @@ -87,17 +88,13 @@ static void select_dt_from_module_version(void)
switch (get_pcb_revision()) { case PCB_VERSION_1_0: - printf("Detected a V1.0 module\n"); - if (is_wifi) - strncpy(&variant[0], "wifi", sizeof(variant)); - else - strncpy(&variant[0], "nonwifi", sizeof(variant)); - break; + printf("Detected a V1.0 module which is no longer supported in this BSP version\n"); + hang(); default: if (is_wifi) - strncpy(&variant[0], "wifi-v1.1", sizeof(variant)); + strlcpy(&variant[0], "wifi", sizeof(variant)); else - strncpy(&variant[0], "nonwifi-v1.1", sizeof(variant)); + strlcpy(&variant[0], "nonwifi", sizeof(variant)); break; }

From: Max Krummenacher max.krummenacher@toradex.com We drop support for Verdin iMX8M Mini V1.0B. Related-to: ELB-3551 Signed-off-by: Max Krummenacher max.krummenacher@toradex.com Signed-off-by: Marcel Ziswiler marcel.ziswiler@toradex.com Reviewed-by: Fabio Estevam festevam@gmail.com
Applied to u-boot-imx, master, thanks !
Best regards, Stefano Babic

From: Oleksandr Suvorov oleksandr.suvorov@toradex.com
Variable "kernel_image" is used in boot.scr script only, that sets its own default value to the constant string @@KERNEL_IMAGETYPE@@ in case "kernel_image" is not set. The default name of the kernel image shipped with BSP 5.x is "Image.gz". Setting kernel_image="Image" as a pre-defined u-boot variable breaks booting systems with modern versions of boot.scr, whereas renaming it fixes booting with modern scripts and does not break working of earlier versions of boot.scr.
While at it also update the copyright period, rather than hard-coding fdtfile default fdt_board to dev for the Verdin iMX8M Mini and fix its closing #endif comment.
Signed-off-by: Oleksandr Suvorov oleksandr.suvorov@toradex.com Signed-off-by: Marcel Ziswiler marcel.ziswiler@toradex.com Reviewed-by: Fabio Estevam festevam@gmail.com
---
Changes in v6: - Update commit message as requested by Wolfgang.
Changes in v3: - Fix patch. - Add missing apalis-imx8 part. - While at it update copyright year resp. period. - Fix closing endif comment.
Changes in v2: - New patch allows booting recent embedded Linux BSPs.
include/configs/apalis-imx8.h | 6 +++--- include/configs/verdin-imx8mm.h | 10 +++++----- 2 files changed, 8 insertions(+), 8 deletions(-)
diff --git a/include/configs/apalis-imx8.h b/include/configs/apalis-imx8.h index 80594548877..ce5681499c9 100644 --- a/include/configs/apalis-imx8.h +++ b/include/configs/apalis-imx8.h @@ -1,6 +1,6 @@ /* SPDX-License-Identifier: GPL-2.0+ */ /* - * Copyright 2019 Toradex + * Copyright 2019-2021 Toradex */
#ifndef __APALIS_IMX8_H @@ -42,12 +42,12 @@ #define CONFIG_EXTRA_ENV_SETTINGS \ BOOTENV \ MEM_LAYOUT_ENV_SETTINGS \ + "boot_file=Image\0" \ "console=ttyLP1 earlycon\0" \ "fdt_addr=0x83000000\0" \ "fdt_file=fsl-imx8qm-apalis-eval.dtb\0" \ "fdtfile=fsl-imx8qm-apalis-eval.dtb\0" \ "finduuid=part uuid mmc ${mmcdev}:2 uuid\0" \ - "image=Image\0" \ "initrd_addr=0x83800000\0" \ "initrd_high=0xffffffffffffffff\0" \ "mmcargs=setenv bootargs console=${console},${baudrate} " \ @@ -57,7 +57,7 @@ "netargs=setenv bootargs console=${console},${baudrate} " \ "root=/dev/nfs ip=dhcp nfsroot=${serverip}:${nfsroot},v3,tcp" \ "\0" \ - "nfsboot=run netargs; dhcp ${loadaddr} ${image}; tftp ${fdt_addr} " \ + "nfsboot=run netargs; dhcp ${loadaddr} ${boot_file}; tftp ${fdt_addr} " \ "apalis-imx8/${fdt_file}; booti ${loadaddr} - ${fdt_addr}\0" \ "panel=NULL\0" \ "script=boot.scr\0" \ diff --git a/include/configs/verdin-imx8mm.h b/include/configs/verdin-imx8mm.h index 50c808383db..693fd6907eb 100644 --- a/include/configs/verdin-imx8mm.h +++ b/include/configs/verdin-imx8mm.h @@ -1,6 +1,6 @@ /* SPDX-License-Identifier: GPL-2.0+ */ /* - * Copyright 2020 Toradex + * Copyright 2020-2021 Toradex */
#ifndef __VERDIN_IMX8MM_H @@ -54,16 +54,16 @@ BOOTENV \ MEM_LAYOUT_ENV_SETTINGS \ "bootcmd_mfg=fastboot 0\0" \ + "boot_file=Image\0" \ "console=ttymxc0\0" \ "fdt_addr=0x43000000\0" \ - "fdtfile=" CONFIG_DEFAULT_FDT_FILE "\0" \ + "fdt_board=dev\0" \ "initrd_addr=0x43800000\0" \ "initrd_high=0xffffffffffffffff\0" \ - "kernel_image=Image\0" \ "netargs=setenv bootargs console=${console},${baudrate} " \ "root=/dev/nfs ip=dhcp nfsroot=${serverip}:${nfsroot},v3,tcp" \ "\0" \ - "nfsboot=run netargs; dhcp ${loadaddr} ${kernel_image}; " \ + "nfsboot=run netargs; dhcp ${loadaddr} ${boot_file}; " \ "tftp ${fdt_addr} verdin/${fdtfile}; " \ "booti ${loadaddr} - ${fdt_addr}\0" \ "setup=setenv setupargs console=${console},${baudrate} " \ @@ -118,4 +118,4 @@ #define CONFIG_MXC_USB_PORTSC (PORT_PTS_UTMI | PORT_PTS_PTW) #define CONFIG_USB_MAX_CONTROLLER_COUNT 2
-#endif /*_VERDIN_IMX8MM_H */ +#endif /* __VERDIN_IMX8MM_H */

From: Oleksandr Suvorov oleksandr.suvorov@toradex.com Variable "kernel_image" is used in boot.scr script only, that sets its own default value to the constant string @@KERNEL_IMAGETYPE@@ in case "kernel_image" is not set. The default name of the kernel image shipped with BSP 5.x is "Image.gz". Setting kernel_image="Image" as a pre-defined u-boot variable breaks booting systems with modern versions of boot.scr, whereas renaming it fixes booting with modern scripts and does not break working of earlier versions of boot.scr. While at it also update the copyright period, rather than hard-coding fdtfile default fdt_board to dev for the Verdin iMX8M Mini and fix its closing #endif comment. Signed-off-by: Oleksandr Suvorov oleksandr.suvorov@toradex.com Signed-off-by: Marcel Ziswiler marcel.ziswiler@toradex.com Reviewed-by: Fabio Estevam festevam@gmail.com
Applied to u-boot-imx, master, thanks !
Best regards, Stefano Babic

From: Igor Opaniuk igor.opaniuk@toradex.com
Enable and set preboot var with fdtfile evaluation. It will be checked and run immediately before starting the CONFIG_BOOTDELAY countdown and/or running the auto-boot command resp. entering interactive mode.
This provides possibility to use different boot cmds in interactive mode without manual setting fdtfile value, as it it's already evaluated before entering interactive mode.
Signed-off-by: Igor Opaniuk igor.opaniuk@toradex.com Signed-off-by: Marcel Ziswiler marcel.ziswiler@toradex.com Reviewed-by: Fabio Estevam festevam@gmail.com
---
(no changes since v2)
Changes in v2: - New patch addressing dynamic fdtfile definition.
configs/verdin-imx8mm_defconfig | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/configs/verdin-imx8mm_defconfig b/configs/verdin-imx8mm_defconfig index ced0d0acc37..ed14ff3b114 100644 --- a/configs/verdin-imx8mm_defconfig +++ b/configs/verdin-imx8mm_defconfig @@ -26,7 +26,8 @@ CONFIG_SPL_LOAD_FIT=y # CONFIG_USE_SPL_FIT_GENERATOR is not set CONFIG_OF_SYSTEM_SETUP=y # CONFIG_USE_BOOTCOMMAND is not set -CONFIG_DEFAULT_FDT_FILE="fsl-imx8mm-verdin-dev.dtb" +CONFIG_USE_PREBOOT=y +CONFIG_PREBOOT="setenv fdtfile imx8mm-verdin-${variant}-${fdt_board}.dtb" CONFIG_LOG=y # CONFIG_DISPLAY_BOARDINFO is not set CONFIG_DISPLAY_BOARDINFO_LATE=y

From: Igor Opaniuk igor.opaniuk@toradex.com Enable and set preboot var with fdtfile evaluation. It will be checked and run immediately before starting the CONFIG_BOOTDELAY countdown and/or running the auto-boot command resp. entering interactive mode. This provides possibility to use different boot cmds in interactive mode without manual setting fdtfile value, as it it's already evaluated before entering interactive mode. Signed-off-by: Igor Opaniuk igor.opaniuk@toradex.com Signed-off-by: Marcel Ziswiler marcel.ziswiler@toradex.com Reviewed-by: Fabio Estevam festevam@gmail.com
Applied to u-boot-imx, master, thanks !
Best regards, Stefano Babic

From: Marcel Ziswiler marcel.ziswiler@toradex.com
Finally, found the root cause of the issue already once mentioned back here [2] which caused the following error message during boot:
imx_wdt watchdog@30280000: pinctrl_select_state_full: uclass_get_device_by_phandle_id: err=-19
Turns out while the watchdog node itself was already u-boot,dm-spl its pinctrl node was not which caused it to be unavailable at that early stage. Note that any and all other boards I checked also seem to be missing this. However, I can't judge whether or not they might indeed need a similar fix or not.
[2] https://marc.info/?l=u-boot&m=161786572422973
Fixes: commit d304e7ace3a6 ("ARM: imx8m: Fix reset in SPL on Toradex iMX8MM Verdin") Signed-off-by: Marcel Ziswiler marcel.ziswiler@toradex.com Reviewed-by: Fabio Estevam festevam@gmail.com
---
(no changes since v2)
Changes in v2: - New patch fixing watchdog pinctrl issue.
arch/arm/dts/imx8mm-verdin-u-boot.dtsi | 4 ++++ 1 file changed, 4 insertions(+)
diff --git a/arch/arm/dts/imx8mm-verdin-u-boot.dtsi b/arch/arm/dts/imx8mm-verdin-u-boot.dtsi index 6a7e9d776c8..9fb4d8aa8c2 100644 --- a/arch/arm/dts/imx8mm-verdin-u-boot.dtsi +++ b/arch/arm/dts/imx8mm-verdin-u-boot.dtsi @@ -76,6 +76,10 @@ u-boot,dm-spl; };
+&pinctrl_wdog { + u-boot,dm-spl; +}; + &uart1 { u-boot,dm-spl; };

From: Marcel Ziswiler marcel.ziswiler@toradex.com Finally, found the root cause of the issue already once mentioned back here [2] which caused the following error message during boot: imx_wdt watchdog@30280000: pinctrl_select_state_full: uclass_get_device_by_phandle_id: err=-19 Turns out while the watchdog node itself was already u-boot,dm-spl its pinctrl node was not which caused it to be unavailable at that early stage. Note that any and all other boards I checked also seem to be missing this. However, I can't judge whether or not they might indeed need a similar fix or not. [2] https://marc.info/?l=u-boot&m=161786572422973 Fixes: commit d304e7ace3a6 ("ARM: imx8m: Fix reset in SPL on Toradex iMX8MM Verdin") Signed-off-by: Marcel Ziswiler marcel.ziswiler@toradex.com Reviewed-by: Fabio Estevam festevam@gmail.com
Applied to u-boot-imx, master, thanks !
Best regards, Stefano Babic

On Sat, Oct 9, 2021 at 1:43 PM Marcel Ziswiler marcel@ziswiler.com wrote:
From: Marcel Ziswiler marcel.ziswiler@toradex.com
An assortment of fixes and improvements like an Ethernet PHY configuration fix, DEK blob encapsulation preparation, migration to using binman to pack images, SLEEP_MOCI# enablement, dropping of V1.0 hardware support [1], renaming kernel image variable, using preboot for fdtfile evaluation and watchdog pinctrl fix.
Note that this series is applied on top of Peng's Makefile fix [2] as otherwise, it may not quite generate all binman artefacts in the right order as discussed here [3].
[1] https://developer.toradex.com/verdin-sample-phase-over [2] https://marc.info/?l=u-boot&m=162908373904742 [3] https://marc.info/?l=u-boot&m=162945614207220
Changes in v6:
- New patch re-ordering fdt nodes and properties.
- Update commit message as requested by Wolfgang.
Changes in v5:
- Drop device tree part already done by Marek's patch.
- Add another fixes tag as his patch forgot the board code part.
- Re-based on top of u-boot-imx, master yet again.
Changes in v4:
- Add Heiko Schocher's reviewed-by tag.
- Fix copyright periods.
- Re-based.
Changes in v3:
- Case fold hex string.
- Revert binman part of imx8mm-verdin-u-boot.dtsi to a plain copy from imx8mm-evk and postpone further improvements to after migrating to a common binman config as agreed with Frieder and Simon.
- New patch cleaning up include order.
- Add Fabio's reviewed-by tag.
- Fix patch.
- Add missing apalis-imx8 part.
- While at it update copyright year resp. period.
- Fix closing endif comment.
Changes in v2:
- Explicitly pass filename to binman when generating binaries as suggested by Heiko.
- Use proper intermediate binary u-boot-spl-ddr.bin for imximage as pointed out by Heiko.
- Drop first patch ("imx: mkimage_fit_atf: fix legacy image generation") as a similar fix was already refused earlier.
- New patch allows booting recent embedded Linux BSPs.
- New patch addressing dynamic fdtfile definition.
- New patch fixing watchdog pinctrl issue.
Igor Opaniuk (1): verdin-imx8mm: use preboot for fdtfile evaluation
Marcel Ziswiler (7): imx8m: clean-up kconfig indentation verdin-imx8mm: fix ethernet ARM: dts: imx8mm-verdin: prepare for dek blob encapsulation arm64: dts: imx8mm-verdin-u-boot.dtsi: alphabetically re-order verdin-imx8mm: switch to use binman to pack images verdin-imx8mm: clean-up include order verdin-imx8mm: fix watchdog pinctrl issue
Max Krummenacher (2): verdin-imx8mm: enable sleep_moci output verdin-imx8mm: drop support for v1.0 hardware
Oleksandr Suvorov (1): include/configs: apalis-imx8/verdin-imx8mm: rename kernel image variable
arch/arm/dts/imx8mm-verdin-u-boot.dtsi | 147 +++++++++++++++++++- arch/arm/dts/imx8mm-verdin.dts | 18 +++ arch/arm/mach-imx/imx8m/Kconfig | 21 +-- board/toradex/verdin-imx8mm/imximage.cfg | 11 +- board/toradex/verdin-imx8mm/verdin-imx8mm.c | 81 +---------- configs/verdin-imx8mm_defconfig | 6 +- doc/board/toradex/verdin-imx8mm.rst | 53 ++++--- include/configs/apalis-imx8.h | 6 +- include/configs/verdin-imx8mm.h | 10 +- 9 files changed, 220 insertions(+), 133 deletions(-)
-- 2.26.2
Marcel,
I've tested your series with mx8mm-venice and did not see any issues.
Tested-by: Tim Harvey tharvey@gateworks.com for imx8mm-venice-* boards
Thanks, the common u-boot.dtsi is nice to see!
I have a couple of patches that have not been picked up by Stefano yet due to I believe merge conflicts becuase his imx tree is behind master with respect to some of the Kconfig patches. You are likely in the same boat.
Stefano, is it best for me to rebase my 'imx8mm_venice: switch to use binman to pack images' and 'board: gateworks: venice: add imx8mn-gw7902 support' patches on your tree or are you going to be merging in origin/master soon?
Best regards,
Tim

Hi Tim
On Tue, 2021-10-12 at 12:46 -0700, Tim Harvey wrote:
On Sat, Oct 9, 2021 at 1:43 PM Marcel Ziswiler marcel@ziswiler.com wrote:
From: Marcel Ziswiler marcel.ziswiler@toradex.com
An assortment of fixes and improvements like an Ethernet PHY configuration fix, DEK blob encapsulation preparation, migration to using binman to pack images, SLEEP_MOCI# enablement, dropping of V1.0 hardware support [1], renaming kernel image variable, using preboot for fdtfile evaluation and watchdog pinctrl fix.
Note that this series is applied on top of Peng's Makefile fix [2] as otherwise, it may not quite generate all binman artefacts in the right order as discussed here [3].
[1] https://developer.toradex.com/verdin-sample-phase-over [2] https://marc.info/?l=u-boot&m=162908373904742 [3] https://marc.info/?l=u-boot&m=162945614207220
Changes in v6:
- New patch re-ordering fdt nodes and properties.
- Update commit message as requested by Wolfgang.
Changes in v5:
- Drop device tree part already done by Marek's patch.
- Add another fixes tag as his patch forgot the board code part.
- Re-based on top of u-boot-imx, master yet again.
Changes in v4:
- Add Heiko Schocher's reviewed-by tag.
- Fix copyright periods.
- Re-based.
Changes in v3:
- Case fold hex string.
- Revert binman part of imx8mm-verdin-u-boot.dtsi to a plain copy from
imx8mm-evk and postpone further improvements to after migrating to a common binman config as agreed with Frieder and Simon.
- New patch cleaning up include order.
- Add Fabio's reviewed-by tag.
- Fix patch.
- Add missing apalis-imx8 part.
- While at it update copyright year resp. period.
- Fix closing endif comment.
Changes in v2:
- Explicitly pass filename to binman when generating binaries as
suggested by Heiko.
- Use proper intermediate binary u-boot-spl-ddr.bin for imximage as
pointed out by Heiko.
- Drop first patch ("imx: mkimage_fit_atf: fix legacy image generation")
as a similar fix was already refused earlier.
- New patch allows booting recent embedded Linux BSPs.
- New patch addressing dynamic fdtfile definition.
- New patch fixing watchdog pinctrl issue.
Igor Opaniuk (1): verdin-imx8mm: use preboot for fdtfile evaluation
Marcel Ziswiler (7): imx8m: clean-up kconfig indentation verdin-imx8mm: fix ethernet ARM: dts: imx8mm-verdin: prepare for dek blob encapsulation arm64: dts: imx8mm-verdin-u-boot.dtsi: alphabetically re-order verdin-imx8mm: switch to use binman to pack images verdin-imx8mm: clean-up include order verdin-imx8mm: fix watchdog pinctrl issue
Max Krummenacher (2): verdin-imx8mm: enable sleep_moci output verdin-imx8mm: drop support for v1.0 hardware
Oleksandr Suvorov (1): include/configs: apalis-imx8/verdin-imx8mm: rename kernel image variable
arch/arm/dts/imx8mm-verdin-u-boot.dtsi | 147 +++++++++++++++++++- arch/arm/dts/imx8mm-verdin.dts | 18 +++ arch/arm/mach-imx/imx8m/Kconfig | 21 +-- board/toradex/verdin-imx8mm/imximage.cfg | 11 +- board/toradex/verdin-imx8mm/verdin-imx8mm.c | 81 +---------- configs/verdin-imx8mm_defconfig | 6 +- doc/board/toradex/verdin-imx8mm.rst | 53 ++++--- include/configs/apalis-imx8.h | 6 +- include/configs/verdin-imx8mm.h | 10 +- 9 files changed, 220 insertions(+), 133 deletions(-)
-- 2.26.2
Marcel,
I've tested your series with mx8mm-venice and did not see any issues.
Note that I have currently several patch series in-flight. I assume you meant this to go here [1] instead, not?
Tested-by: Tim Harvey tharvey@gateworks.com for imx8mm-venice-* boards
Thanks, the common u-boot.dtsi is nice to see!
Thanks!
I have a couple of patches that have not been picked up by Stefano yet due to I believe merge conflicts becuase his imx tree is behind master with respect to some of the Kconfig patches. You are likely in the same boat.
Yeah, however, with his pulls from Thursday evening imx/master is now based on commit ea67f467a43 ("Merge branch '2021-10-06-assorted-improvements'") which is very close to todays origin/master. So I don't think there should be any more conflicts if your stuff is re-based either on top of imx/master or origin/master.
Stefano, is it best for me to rebase my 'imx8mm_venice: switch to use binman to pack images' and 'board: gateworks: venice: add imx8mn-gw7902 support' patches on your tree or are you going to be merging in origin/master soon?
Best regards,
Tim
[1] https://marc.info/?l=u-boot&m=163372696806292
Cheers
Marcel
participants (4)
-
Marcel Ziswiler
-
Marcel Ziswiler
-
sbabic@denx.de
-
Tim Harvey