Thanks for your help Davor.
My setup is very similar to yours. I'm using SDK v2.5.2 and firmware images obtained by building the i.MX Linux Yocto Project BSP 4.19.35_1.0.0 Release. The file:
mx8qxpmek-poky-linux/imx-sc-firmware/1.2.2-r0/imx-sc-firmware-1.2.2/.scmversion
Says:
imx_4.14.98_2.0.0_ga+gcb6f758b
Where do you get your BSP files from?
I'm pretty sure I've seen device revision B0 mentioned somewhere (A sticker on the board says "Si B0 SECO", but not sure about board version. How to I confirm my MEK board version?
To rule out issues with the serial download process, I just tried running the dpu_signature example using the SD card.
Here are the steps I'm taking:
** BUILD dpu_signature:
cd sdk/boards/mekmimx8qx/driver_examples/dpu/signature/armgcc
export ARMGCC_DIR=/opt/gcc-arm-embedded/gcc-arm-none-eabi-8-2019-q3-update/
In dpu_example.h:
#define APP_DISPLAY_EXTERNAL_CONVERTOR 1
#define DPU_EXAMPLE_DI DPU_DI_LVDS
./build_release.sh
** BUILD "flash.bin" using mkimage_imx8 and images from iMX Yocto Thud:
cd thud/build-xwayland/tmp/work/imx8qxpmek-poky-linux/imx-boot/0.2-r0/git/iMX8QX
cat ../src/build_info.h
#define MKIMAGE_COMMIT 0x2a3ec5e2
ln -sf ../../../../../../../../../sdk/boards/mekmimx8qx/driver_examples/dpu/signature/armgcc/release/dpu_signature.bin m4_image.bin
../mkimage_imx8 -soc QX -rev B0 -append mx8qx-ahab-container.img -c -flags 0x00200000 -scfw scfw_tcm.bin -ap u-boot-atf.bin a35 0x80000000 -p3 -m4 m4_image.bin 0 0x34FE0000 -out flash.bin
** Copy flash.bin onto SD card in laptop card reader:
sudo dd if=flash.bin of=/dev/mmcblk0 bs=1k seek=32 && sync
** Insert SD in MEK SD card reader and boot in SD1 mode.
Like before, this procedure results in a binary that starts up and is able to send debug logging via the M4 UART. However, it still fails in the BOARD_PrepareDisplay() function. Some printf debugging reveals that all the sc_pm_* calls in this function are failing, and that it finally locks up permanently at the end when calling SOC_InitDpuInterrupt();
Hope that gives some clues as to why we're getting different results...