Hi,
we're using a uuu script to transfer data to an imx8mm on a custom board which is then used by u-boot (mainline u-boot v2025.01) to flash an EEPROM / program some imx8mm fuses.
However, after migrating from u-boot 2020.07 to 2025.01, the script now hangs.
The uuu script we're using is:
uuu_version 1.0.0
SDP: dcd -f "flash-sd-v2025.01+git999-r0.bin"
SDP: write -f "flash-sd-v2025.01+git999-r0.bin" -ivt 0
SDP: write -f "EEPROM.bin" -addr 0x00810000
SDP: jump -f "flash-sd-v2025.01+git999-r0.bin" -ivt 0
SDP: delay 3000
SDP: boot -f "flash-sd-v2025.01+git999-r0.bin" <= NOT EXECUTED
SDP: delay 2000
SDP: dcd -f "flash-sd-v2025.01+git999-r0.bin"
SDP: write -f "flash-sd-v2025.01+git999-r0.bin" -ivt 0 <= ERROR reported
SDP: wrmem -addr 0x00810000 -format 32 -value 0x2BADB005
SDP: wrmem -addr 0x00810004 -format 32 -value 0x4FFA8400
SDP: wrmem -addr 0x00810008 -format 32 -value 0x00000002
SDP: wrmem -addr 0x0081000C -format 32 -value 0x00000042
SDP: wrmem -addr 0x00810010 -format 32 -value 0x00001000
SDP: wrmem -addr 0x00810014 -format 32 -value 0x00000000
SDP: wrmem -addr 0x00810018 -format 32 -value 0x00000000
SDP: wrmem -addr 0x0081001C -format 32 -value 0x00000000
SDP: wrmem -addr 0x00810020 -format 32 -value 0x8457BBB7
SDP: write -f "flash-sd-v2025.01+git999-r0.bin" -offset 0 -addr 0x4FFA8400
SDP: jump -f "flash-sd-v2025.01+git999-r0.bin" -ivt 0
uuu output is as follows:
PS D:\_data> ./uuu.exe -t 10 -T 10 uuutest.txt
uuu (Universal Update Utility) for nxp imx chips -- libuuu_1.5.201-0-g727fc2b
Success 0 Failure 1
2:7- 9/20 [HID(W): LIBUSB_ERROR_IO (-1) ] SDP: write -f "flash-sd-v2025.01+git999-r0.bin" -ivt 0
While the error is reported for 'write -f "flash-sd-v2025.01+git999-r0.bin" -ivt 0', it seems it is already not executing 'boot -f "flash-sd-v2025.01+git999-r0.bin"'.
With the old u-boot version, the script fully ran through.
I tried to figure out what the boot command actually does (and what it expects), but the documentation on the SDP commands in https://community.nxp.com/pwmxy87654/attachments/pwmxy87654/imx-processors/140261/1/UUU.pdf seems to be limited...
I re-checked that I've enabled all relevant u-boot CONFIGs according to UUU.pdf, so I guess this should be an issue.
The last step that is executed in u-boot before the SDP boot command is
restore_boot_params();
So, I thought maybe it's an issue with a different definition of this function. However, this ASM function in arch/arm/mach-imx/imx8m/lowlevel_init.S seems to be exactly the same for the new u-boot version.
So, does anybody have an idea what could be missing / wrong?
Also, does anybody know of more documentation on the SDP commands?
Kind regards,
Markus