I am using Yocto with the 5.2.0 Toradex Manifest and mender layers for OTA support. I am building the tdx-reference-multimedia-image, and I get no video output. I have tried HDMI, and LVDS, but same results.
My board is an Apalis IMX8 QM V1.1C with an ixora 1.2 carrier board.
When I run the tdx-reference-multimedia-image from the Toradex JFrog repository, I get video output. The only difference I can think of is that I have added the mender layers.
Is it possible that the mender layers are causing the video to not work? I know this is a stretch, but I have been at this for a week with no progress.
I noticed one error when using mender that does not show in the working image:
1.669447] imx-drm display-subsystem: parent device of /bus@57240000/ldb@572410e0/lvds-channel@0 is not available
And weston@root.service is failing with:
root@apalis-imx8:/uboot/overlays# cat /var/log/weston.log
Date: 2018-03-09 UTC
[16:35:23.067] weston 9.0.0
https://wayland.freedesktop.org
Bug reports to: https://gitlab.freedesktop.org/wayland/weston/issues/
Build: lf-5.10.35-2.0.0-rc2+
[16:35:23.067] Command line: /usr/bin/weston --modules=xwayland.so --log=/var/log/weston.log
[16:35:23.067] OS: Linux, 5.4.115-5.3.0-devel+git.dbdbcabf0f98, #1 SMP PREEMPT Tue Jul 6 08:47:10 UTC 2021, aarch64
[16:35:23.068] Using config file '/etc/xdg/weston/weston.ini'
[16:35:23.069] Output repaint window is 7 ms maximum.
[16:35:23.070] Loading module '/usr/lib/libweston-9/drm-backend.so'
[16:35:23.081] initializing drm backend
[16:35:23.081] logind: failed to get session seat
[16:35:23.081] logind: cannot setup systemd-logind helper (-61), using legacy fallback
[16:35:23.083] no drm device found
[16:35:23.083] fatal: failed to create compositor backend
Some debugging reveals that there is no /dev/fb0 present:
root@apalis-imx8:~# fbset
fbset: can't open '/dev/fb0': No such file or directory
None of these errors is seen with the tdx-reference-multimedia image retrieved from toradexās jfrog artifactory.
Hi @pgiangrossi the first step would be to dump the kernel command line parameters in both images to make sure the Mender one has all the same bits. I tried to make sure they were identical since Mender does modify the bootcmd, but itās possible I missed something.
Drew
Hi Drew, here is the working command line:
root@apalis-imx8:~# cat /proc/cmdline
pci=nomsi root=PARTUUID=23f58d39-02 ro rootwait
The non-working one (mender) looks like:
root@apalis-imx8:~# cat /proc/cmdline
pci=nomsi root=/dev/mmcblk0p3 ro rootwait
I see some changes to boot.scr. The mender version took out some overlay support.
Paul
OK. I suspect it is the overlay stuff that is missing. You can probably re-add equivalent functionality with MENDER_UBOOT_PRE_SETUP_COMMANDS
or MENDER_UBOOT_POST_SETUP_COMMANDS
or by modifying the boot.scr based on the MACHINE
type. If you have a chance to prototype something that would be helpful.
Drew
The following patch on meta-mender-community gives me video output on the mender version of tdx-reference-minimal-image.
diff --git a/meta-mender-toradex-nxp/recipes-bsp/u-boot-distro-boot/files/apalis-imx8/boot.cmd.in b/meta-mender-toradex-nxp/recipes-bsp/u-boot-distro-boot/files/apalis-imx8/boot.cmd.in
new file mode 100644
index 0000000..10cc186
--- /dev/null
+++ b/meta-mender-toradex-nxp/recipes-bsp/u-boot-distro-boot/files/apalis-imx8/boot.cmd.in
@@ -0,0 +1,64 @@
+#
+# Copyright 2020 Toradex
+#
+# Toradex boot script.
+#
+# Only supports booting from mmc.
+
+if test ${devtype} != "mmc"; then
+ echo "This script is not meant to distro boot from anything other than mmc."
+ exit
+fi
+
+env set load_prefix 'boot/'
+
+test -n ${m4boot} || env set m4boot ';'
+test -n ${fdtfile} || env set fdtfile ${fdt_file}
+test -n ${kernel_image} || env set kernel_image @@KERNEL_IMAGETYPE@@
+test -n ${overlays_file} || env set overlays_file "overlays.txt"
+test -n ${overlays_prefix} || env set overlays_prefix "overlays/"
+
+env set load_cmd 'load ${mender_uboot_root}'
+env set load_cmd_boot 'load ${mender_uboot_boot}'
+env set root_devtype ${devtype}
+
+if test -n ${setup}; then
+ run setup
+else
+ env set setupargs 'console=${console},${baudrate} console=tty1 consoleblank=0'
+fi
+
+if test ${kernel_image} = "Image.gz"
+then
+ env set kernel_addr_load ${loadaddr}
+ env set bootcmd_unzip 'unzip ${kernel_addr_load} ${kernel_addr_r}'
+else
+ env set bootcmd_unzip ';'
+ env set kernel_addr_load ${kernel_addr_r}
+fi
+
+# Set dynamic commands
+env set set_bootcmd_kernel 'env set bootcmd_kernel "${load_cmd} \\${kernel_addr_load} \\${load_prefix}\\${kernel_image}"'
+env set set_bootcmd_dtb 'env set bootcmd_dtb "echo Loading DeviceTree: \\${fdtfile}; ${load_cmd} \\${fdt_addr_r} \\${load_prefix}\\${fdtfile}"'
+env set set_load_overlays_file 'env set load_overlays_file "${load_cmd_boot} \\${loadaddr} \\${overlays_file}; env import -t \\${loadaddr} \\${filesize}"'
+env set fdt_resize 'fdt addr ${fdt_addr_r} && fdt resize 0x20000'
+env set set_apply_overlays 'env set apply_overlays "for overlay_file in \\${fdt_overlays}; do echo Applying Overlay: \\${overlay_file} && ${load_cmd_boot} \\${loadaddr} \\${overlays_prefix}\\${overlay_file} && fdt apply \\${loadaddr}; env set overlay_file; done; true"'
+env set bootcmd_boot 'echo "Bootargs: \${bootargs}" && booti ${kernel_addr_r} - ${fdt_addr_r}'
+
+# Set static commands
+env set rootfsargs_set 'env set rootfsargs root=${mender_kernel_root} ro rootwait'
+
+env set bootcmd_args 'run rootfsargs_set && env set bootargs ${defargs} ${rootfsargs} ${setupargs} ${vidargs} ${tdxargs}'
+if test ${skip_fdt_overlays} != 1; then
+ env set bootcmd_overlays 'run load_overlays_file && run fdt_resize && run apply_overlays'
+else
+ env set bootcmd_overlays true
+fi
+env set bootcmd_prepare 'run set_bootcmd_kernel; run set_bootcmd_dtb; run set_load_overlays_file; run set_apply_overlays'
+env set bootcmd_run 'run m4boot; run bootcmd_dtb && run bootcmd_overlays && run bootcmd_args && run bootcmd_kernel && run bootcmd_unzip && run bootcmd_boot; echo "Booting from ${devtype} failed!" && false'
+
+run mender_setup
+run bootcmd_prepare
+run bootcmd_run
+run mender_try_to_recover
+
diff --git a/meta-mender-toradex-nxp/recipes-bsp/u-boot-distro-boot/files/boot.cmd.in b/meta-mender-toradex-nxp/recipes-bsp/u-boot-distro-boot/files/colibri-imx6ull/boot.cmd.in
similarity index 100%
rename from meta-mender-toradex-nxp/recipes-bsp/u-boot-distro-boot/files/boot.cmd.in
rename to meta-mender-toradex-nxp/recipes-bsp/u-boot-distro-boot/files/colibri-imx6ull/boot.cmd.in
diff --git a/meta-mender-toradex-nxp/recipes-bsp/u-boot-distro-boot/u-boot-distro-boot.bbappend b/meta-mender-toradex-nxp/recipes-bsp/u-boot-distro-boot/u-boot-distro-boot.bbappend
index 9466899..464249e 100644
--- a/meta-mender-toradex-nxp/recipes-bsp/u-boot-distro-boot/u-boot-distro-boot.bbappend
+++ b/meta-mender-toradex-nxp/recipes-bsp/u-boot-distro-boot/u-boot-distro-boot.bbappend
@@ -1,2 +1,3 @@
# Override boot.cmd.in
-FILESEXTRAPATHS_prepend_mender-uboot := "${THISDIR}/files:"
+FILESEXTRAPATHS_prepend_mender-uboot_apalis-imx8 := "${THISDIR}/files/apalis-imx8:"
+FILESEXTRAPATHS_prepend_mender-uboot_colibri-imx6ull := "${THISDIR}/files/colibri-imx6ull:"
Iāve tested the script stand-alone. Testing the yocto-generated image nowā¦
Iām surprised you need this. I thought those were added automatically.
Drew
youāre probably right, Iāll check
So the build does not appear to be correct. I am getting a file boot.scr-apalis-imx8 in the deploy/images/apalis-imx8 folder. That file is what I want. But when I deploy, /uboot/boot.scr is not correct. It looks like what was there before deploying.
Am I missing something?
You may just need to wipe the tmp/ dir and build again. But the real culprit is likely some other package providing the boot.scr file. I just donāt know which one.
Drew
You were right, I had to delete some history and re-build mostly from scratch.
I also made the change you suggested earlier. I tested this by programming the yocto-generated image in recovery mode. So I can say that this patch is tested from my side. Hereās the updated patch:
diff --git a/meta-mender-toradex-nxp/recipes-bsp/u-boot-distro-boot/files/apalis-imx8/boot.cmd.in b/meta-mender-toradex-nxp/recipes-bsp/u-boot-distro-boot/files/apalis-imx8/boot.cmd.in
new file mode 100644
index 0000000..10cc186
--- /dev/null
+++ b/meta-mender-toradex-nxp/recipes-bsp/u-boot-distro-boot/files/apalis-imx8/boot.cmd.in
@@ -0,0 +1,64 @@
+#
+# Copyright 2020 Toradex
+#
+# Toradex boot script.
+#
+# Only supports booting from mmc.
+
+if test ${devtype} != "mmc"; then
+ echo "This script is not meant to distro boot from anything other than mmc."
+ exit
+fi
+
+env set load_prefix 'boot/'
+
+test -n ${m4boot} || env set m4boot ';'
+test -n ${fdtfile} || env set fdtfile ${fdt_file}
+test -n ${kernel_image} || env set kernel_image @@KERNEL_IMAGETYPE@@
+test -n ${overlays_file} || env set overlays_file "overlays.txt"
+test -n ${overlays_prefix} || env set overlays_prefix "overlays/"
+
+env set load_cmd 'load ${mender_uboot_root}'
+env set load_cmd_boot 'load ${mender_uboot_boot}'
+env set root_devtype ${devtype}
+
+if test -n ${setup}; then
+ run setup
+else
+ env set setupargs 'console=${console},${baudrate} console=tty1 consoleblank=0'
+fi
+
+if test ${kernel_image} = "Image.gz"
+then
+ env set kernel_addr_load ${loadaddr}
+ env set bootcmd_unzip 'unzip ${kernel_addr_load} ${kernel_addr_r}'
+else
+ env set bootcmd_unzip ';'
+ env set kernel_addr_load ${kernel_addr_r}
+fi
+
+# Set dynamic commands
+env set set_bootcmd_kernel 'env set bootcmd_kernel "${load_cmd} \\${kernel_addr_load} \\${load_prefix}\\${kernel_image}"'
+env set set_bootcmd_dtb 'env set bootcmd_dtb "echo Loading DeviceTree: \\${fdtfile}; ${load_cmd} \\${fdt_addr_r} \\${load_prefix}\\${fdtfile}"'
+env set set_load_overlays_file 'env set load_overlays_file "${load_cmd_boot} \\${loadaddr} \\${overlays_file}; env import -t \\${loadaddr} \\${filesize}"'
+env set fdt_resize 'fdt addr ${fdt_addr_r} && fdt resize 0x20000'
+env set set_apply_overlays 'env set apply_overlays "for overlay_file in \\${fdt_overlays}; do echo Applying Overlay: \\${overlay_file} && ${load_cmd_boot} \\${loadaddr} \\${overlays_prefix}\\${overlay_file} && fdt apply \\${loadaddr}; env set overlay_file; done; true"'
+env set bootcmd_boot 'echo "Bootargs: \${bootargs}" && booti ${kernel_addr_r} - ${fdt_addr_r}'
+
+# Set static commands
+env set rootfsargs_set 'env set rootfsargs root=${mender_kernel_root} ro rootwait'
+
+env set bootcmd_args 'run rootfsargs_set && env set bootargs ${defargs} ${rootfsargs} ${setupargs} ${vidargs} ${tdxargs}'
+if test ${skip_fdt_overlays} != 1; then
+ env set bootcmd_overlays 'run load_overlays_file && run fdt_resize && run apply_overlays'
+else
+ env set bootcmd_overlays true
+fi
+env set bootcmd_prepare 'run set_bootcmd_kernel; run set_bootcmd_dtb; run set_load_overlays_file; run set_apply_overlays'
+env set bootcmd_run 'run m4boot; run bootcmd_dtb && run bootcmd_overlays && run bootcmd_args && run bootcmd_kernel && run bootcmd_unzip && run bootcmd_boot; echo "Booting from ${devtype} failed!" && false'
+
+run mender_setup
+run bootcmd_prepare
+run bootcmd_run
+run mender_try_to_recover
+
diff --git a/meta-mender-toradex-nxp/recipes-bsp/u-boot-distro-boot/files/colibri-imx6ull/boot.cmd.in b/meta-mender-toradex-nxp/recipes-bsp/u-boot-distro-boot/files/colibri-imx6ull/boot.cmd.in
new file mode 100644
index 0000000..6cc545c
--- /dev/null
+++ b/meta-mender-toradex-nxp/recipes-bsp/u-boot-distro-boot/files/colibri-imx6ull/boot.cmd.in
@@ -0,0 +1,56 @@
+# SPDX-License-Identifier: GPL-2.0+ OR MIT
+#
+# Copyright 2020 Toradex
+# Copyright 2020 Northern.tech AS
+#
+# Toradex boot script with Mender integration.
+#
+# Only supports booting from mmc, and overlay support is removed as this only
+# applies to Torizon OS which is not the target for this integration.
+
+if test ${devtype} = "ubi"; then
+ echo "This script is not meant to distro boot from raw NAND flash."
+ exit
+fi
+
+env set load_prefix 'boot/'
+
+test -n ${m4boot} || env set m4boot ';'
+test -n ${fdtfile} || env set fdtfile ${fdt_file}
+test -n ${kernel_image} || env set kernel_image @@KERNEL_IMAGETYPE@@
+test -n ${boot_devtype} || env set boot_devtype ${devtype}
+test -n ${root_devtype} || env set root_devtype ${devtype}
+
+env set load_cmd 'load ${mender_uboot_root}'
+
+if test -n ${setup}; then
+ run setup
+else
+ env set setupargs 'console=${console},${baudrate} console=tty1 consoleblank=0'
+fi
+
+if test ${kernel_image} = "Image.gz"
+then
+ env set kernel_addr_load ${loadaddr}
+ env set bootcmd_unzip 'unzip ${kernel_addr_load} ${kernel_addr_r}'
+else
+ env set kernel_addr_load ${kernel_addr_r}
+ env set bootcmd_unzip ';'
+fi
+
+# Set dynamic commands
+env set set_bootcmd_kernel 'env set bootcmd_kernel "${load_cmd} \\${kernel_addr_load} \\${load_prefix}\\${kernel_image}"'
+env set set_bootcmd_dtb 'env set bootcmd_dtb "${load_cmd} \\${fdt_addr_r} \\${load_prefix}\\${fdtfile}"'
+
+env set rootfsargs_set 'env set rootfsargs root=${mender_kernel_root} ro rootwait'
+
+env set bootcmd_args 'run rootfsargs_set && env set bootargs ${defargs} ${rootfsargs} ${setupargs} ${vidargs} ${tdxargs}'
+env set fdt_resize 'fdt addr ${fdt_addr_r} && fdt resize 0x20000'
+env set bootcmd_boot 'echo "Bootargs: \${bootargs}" && @@KERNEL_BOOTCMD@@ ${kernel_addr_r} - ${fdt_addr_r}'
+env set bootcmd_prepare 'run set_bootcmd_kernel; run set_bootcmd_dtb;'
+env set bootcmd_run 'run m4boot; run bootcmd_dtb && run bootcmd_args && run bootcmd_kernel && run bootcmd_unzip && run bootcmd_boot; echo "Booting from ${devtype} failed!"'
+
+run bootcmd_prepare
+run mender_setup
+run bootcmd_run
+run mender_try_to_recover
Can you submit that as a pull request here?
Drew
The pull request above works for the HDMI output. On my local build, I want to make it work for the Toradex LVDS 10.1" screen, so I add the following to local.conf:
TEZI_EXTERNAL_KERNEL_DEVICETREE_BOOT = "apalis-imx8_lvds_overlay.dtbo apalis-imx8_atmel-mxt_overlay.dtbo display-lt170410_overlay.dtbo"
But it doesnāt have the desired effect. How do I do this correctly?
Seems like I have to remove and append to get that to work.
TEZI_EXTERNAL_KERNEL_DEVICETREE_BOOT_remove = "apalis-imx8_hdmi_overlay.dtbo"
TEZI_EXTERNAL_KERNEL_DEVICETREE_BOOT_append = " apalis-imx8_lvds_overlay.dtbo apalis-imx8_atmel-mxt_overlay.dtbo display-lt170410_overlay.dtbo"
Yeah, that doesnāt surprise me. Iāll continue the discussion over in the PR.
Drew
Hi Drew, I just noticed that with the pull request, I cannot do a mender update. Any idea what these errors might indicate?
root@apalis-imx8:~# mender -install http://192.168.10.1/tmp/Reference-Minimal-Image-apalis-imx8.mender
INFO[0000] Loaded configuration file: /var/lib/mender/mender.conf
INFO[0000] Loaded configuration file: /etc/mender/mender.conf
ERRO[0000] Failed to read the current active partition: No match between boot and root partitions.: exit status 243
INFO[0000] Performing remote update from: [http://192.168.10.1/tmp/Reference-Minimal-Image-apalis-imx8.mender].
Installing Artifact of size 803610624...
INFO[0000] No public key was provided for authenticating the artifact
INFO[0000] Update Module path "/usr/share/mender/modules/v3" could not be opened (open /usr/share/mender/modules/v3: no such file or directory). Update modules will not be a
vailable
ERRO[0000] Download failed: Payload: can not install Payload: Reference-Minimal-Image-apalis-imx8.ext4: No match between boot and root partitions.: exit status 243
ERRO[0000] Payload: can not install Payload: Reference-Minimal-Image-apalis-imx8.ext4: No match between boot and root partitions.: exit status 243
That generally means that something is unhappy in the U-Boot environment. It could be that the u-boot-fw-utils config file is incorrect.
I donāt see that file on the target. Is it a build file? What should it look like?
Here is the u-boot environment:
# printenv
altbootcmd=run mender_altbootcmd; run bootcmd
arch=arm
baudrate=115200
board=apalis-imx8
board_name=Manus Apalis iMX8QM
board_rev=v1.0
boot_a_script=load ${devtype} ${devnum}:${distro_bootpart} ${scriptaddr} ${prefix}${script}; source ${scriptaddr}
boot_efi_binary=if fdt addr ${fdt_addr_r}; then bootefi bootmgr ${fdt_addr_r};else bootefi bootmgr ${fdtcontroladdr};fi;load ${devtype} ${devnum}:${distro_bootpart} ${kernel
_addr_r} efi/boot/bootaa64.efi; if fdt addr ${fdt_addr_r}; then bootefi ${kernel_addr_r} ${fdt_addr_r};else bootefi ${kernel_addr_r} ${fdtcontroladdr};fi
boot_extlinux=sysboot ${devtype} ${devnum}:${distro_bootpart} any ${scriptaddr} ${prefix}${boot_syslinux_conf}
boot_fdt=try
boot_file=Image
boot_net_usb_start=usb start
boot_pci_enum=pci enum
boot_prefixes=/ /boot/
boot_script_dhcp=boot.scr
boot_scripts=boot.scr.uimg boot.scr
boot_syslinux_conf=extlinux/extlinux.conf
boot_targets=mmc1 mmc2 mmc0 usb0 dhcp
bootcmd=run distro_bootcmd
bootcmd_dhcp=setenv devtype dhcp; run boot_net_usb_start; run boot_pci_enum; if dhcp ${scriptaddr} ${boot_script_dhcp}; then source ${scriptaddr}; fi;setenv efi_fdtfile ${fd
tfile}; setenv efi_old_vci ${bootp_vci};setenv efi_old_arch ${bootp_arch};setenv bootp_vci PXEClient:Arch:00011:UNDI:003000;setenv bootp_arch 0xb;if dhcp ${kernel_addr_r}; t
hen tftpboot ${fdt_addr_r} dtb/${efi_fdtfile};if fdt addr ${fdt_addr_r}; then bootefi ${kernel_addr_r} ${fdt_addr_r}; else bootefi ${kernel_addr_r} ${fdtcontroladdr};fi;fi;s
etenv bootp_vci ${efi_old_vci};setenv bootp_arch ${efi_old_arch};setenv efi_fdtfile;setenv efi_old_arch;setenv efi_old_vci;
bootcmd_mfg=select_dt_from_module_version && fastboot 0
bootcmd_mmc0=devnum=0; run mmc_boot
bootcmd_mmc1=devnum=1; run mmc_boot
bootcmd_mmc2=devnum=2; run mmc_boot
bootcmd_usb0=devnum=0; run usb_boot
bootcount=1
bootdelay=1
bootlimit=1
commit_atf=835a8f6
commit_mkimage=8947fea3
commit_scfw=bc122ee1
commit_secofw=d63fdb21
console=ttyLP1 earlycon
cpu=armv8
defargs=pci=nomsi
distro_bootcmd=scsi_need_init=; for target in ${boot_targets}; do run bootcmd_${target}; done
efi_dtb_prefixes=/ /dtb/ /dtb/current/
ethaddr=00:14:2d:a4:68:0d
fastboot_dev=mmc0
fdt_addr_r=0x83000000
fdtcontroladdr=fd650ba0
fdtfile=imx8qm-apalis-v1.1-eval.dtb
finduuid=part uuid mmc ${mmcdev}:2 uuid
hdp_addr=0x9c000000
hdp_file=hdmitxfw.bin
ipaddr=192.168.10.2
kernel_addr_r=0x80280000
load_efi_dtb=load ${devtype} ${devnum}:${distro_bootpart} ${fdt_addr_r} ${prefix}${efi_fdtfile}
loadaddr=0x87000000
loadhdp=${load_cmd} ${hdp_addr} ${hdp_file}
loadm4image_0=${load_cmd} ${loadaddr} ${m4_0_image}
loadm4image_1=${load_cmd} ${loadaddr} ${m4_1_image}
m4_0_image=m4_0.bin
m4_1_image=m4_1.bin
m4boot_0=run loadm4image_0; dcache flush; bootaux ${loadaddr} 0
m4boot_1=run loadm4image_1; dcache flush; bootaux ${loadaddr} 1
mender_altbootcmd=if test ${mender_boot_part} = 2; then setenv mender_boot_part 3; setenv mender_boot_part_hex 3; else setenv mender_boot_part 2; setenv mender_boot_part_hex
2; fi; setenv upgrade_available 0; saveenv; run mender_setup
mender_boot_kernel_type=booti
mender_boot_part=2
mender_boot_part_hex=2
mender_check_saveenv_canary=1
mender_dtb_name=imx8qm-apalis-v1.1-ixora-v1.1.dtb
mender_kernel_name=Image.gz
mender_setup=if test "${mender_saveenv_canary}" != "1"; then setenv mender_saveenv_canary 1; saveenv; fi; if test "${mender_pre_setup_commands}" != ""; then run mender_pre_s
etup_commands; fi; if test "${mender_systemd_machine_id}" != ""; then setenv bootargs "systemd.machine_id=${mender_systemd_machine_id} ${bootargs}"; fi; setenv mender_kernel
_root /dev/mmcblk0p${mender_boot_part}; if test ${mender_boot_part} = 2; then setenv mender_boot_part_name /dev/mmcblk0p2; else setenv mender_boot_part_name /dev/mmcblk0p3;
fi; setenv mender_kernel_root_name ${mender_boot_part_name}; setenv mender_uboot_root mmc 0:${mender_boot_part_hex}; setenv mender_uboot_root_name ${mender_boot_part_name};
setenv expand_bootargs "setenv bootargs \\"${bootargs}\\""; run expand_bootargs; setenv expand_bootargs; if test "${mender_post_setup_commands}" != ""; then run mender_post_
setup_commands; fi
mender_try_to_recover=if test ${upgrade_available} = 1; then reset; fi
mender_uboot_boot=mmc 0:1
mender_uboot_dev=0
mender_uboot_if=mmc
mmc_boot=if mmc dev ${devnum}; then devtype=mmc; run scan_dev_for_boot_part; fi
mmcargs=setenv bootargs console=${console},${baudrate} root=PARTUUID=${uuid} rootwait mmcdev=0
mmcautodetect=yes
mmcdev=0
mmcpart=1
mmcroot=/dev/mmcblk0p2 rootwait rw
netmask=255.255.255.0
panel=NULL
ramdisk_addr_r=0x8a000000
scan_dev_for_boot=echo Scanning ${devtype} ${devnum}:${distro_bootpart}...; for prefix in ${boot_prefixes}; do run scan_dev_for_extlinux; run scan_dev_for_scripts; done;run
scan_dev_for_efi;
scan_dev_for_boot_part=part list ${devtype} ${devnum} -bootable devplist; env exists devplist || setenv devplist 1; for distro_bootpart in ${devplist}; do if fstype ${devtyp
e} ${devnum}:${distro_bootpart} bootfstype; then run scan_dev_for_boot; fi; done; setenv devplist
scan_dev_for_efi=setenv efi_fdtfile ${fdtfile}; for prefix in ${efi_dtb_prefixes}; do if test -e ${devtype} ${devnum}:${distro_bootpart} ${prefix}${efi_fdtfile}; then run lo
ad_efi_dtb; fi;done;if test -e ${devtype} ${devnum}:${distro_bootpart} efi/boot/bootaa64.efi; then echo Found EFI removable media binary efi/boot/bootaa64.efi; run boot_efi_
binary; echo EFI LOAD FAILED: continuing...; fi; setenv efi_fdtfile
scan_dev_for_extlinux=if test -e ${devtype} ${devnum}:${distro_bootpart} ${prefix}${boot_syslinux_conf}; then echo Found ${prefix}${boot_syslinux_conf}; run boot_extlinux; e
cho SCRIPT FAILED: continuing...; fi
scan_dev_for_scripts=for script in ${boot_scripts}; do if test -e ${devtype} ${devnum}:${distro_bootpart} ${prefix}${script}; then echo Found U-Boot script ${prefix}${script
}; run boot_a_script; echo SCRIPT FAILED: continuing...; fi; done
script=boot.scr
scriptaddr=0x83100000
scsi_boot=run scsi_init; if scsi dev ${devnum}; then devtype=scsi; run scan_dev_for_boot_part; fi
scsi_init=if ${scsi_need_init}; then scsi_need_init=false; scsi scan; fi
sec_boot=no
serial#=0000000000000000
serverip=192.168.10.1
setup=run loadhdp; hdp load ${hdp_addr}; run mmcargs
soc=imx8
soc_type=imx8qm
update_uboot=askenv confirm Did you load u-boot-dtb.imx (y/N)?; if test "$confirm" = "y"; then setexpr blkcnt ${filesize} + 0x1ff && setexpr blkcnt ${blkcnt} / 0x200; mmc de
v 0 1; mmc write ${loadaddr} 0x0 ${blkcnt}; fi
upgrade_available=0
usb_boot=usb start; if usb dev ${devnum}; then devtype=usb; run scan_dev_for_boot_part; fi
vendor=toradex
ver=U-Boot 2020.04-5.3.0-devel+git.76fd4496a40b (Apr 07 2021 - 07:35:42 +0000)
video=imxdpufb5:off video=imxdpufb6:off video=imxdpufb7:off
Environment size: 6695/8187 bytes
But it must be something I did wrong in the boot.scr update. Could you have a quick look at that and see if there is anything obvious?