Hi,
I had prepare a SD card that can boot the A55 using the source from Yocto project.
I had also compile a M33 demo project from the SDK that confirmed can run on M33 using jtag/gdb.
I wish to boot both A55 and M33 from POR through SD card, how do achieve it ?
What I did was
1) copy the m33 demo bin file to imx-mkimage/iMX9 folder and rename it to m33_image.bin
2)then generate flash.bin using SOC=iMX93 flash_singleboot_m33
3) write the flash.bin using sudo dd if=flash.bin of=/dev/mmcblk0 bs=1k seek=32 conv=fsync
4) copy the m33_image.bin into the boot partition of SD.
Result : A55 can boot up but not M33 core.
Thanks.
Are you using the demo images or the images you build yourself?
Hi,
All images used are from NXP linux BSP except the M33 firmware is re-compile from source, it is a slightly modified from freertos_hello demo project provided by SDK.
What I did is just to add some simple codes to continuously stream some debug logs to console.
If the iMX93evk is boot to M33 only, the PRINTF is working continuously
if the evk is boot to A55 and M33, the M33 PRINTF is called around 4 cycles only, then the output stop, A55 is working fine in this scenario.
Could you share the details steps in your side, then I can try in my side to reproduce it?
Hi
What I did in general.
1) Get the source from Yocto Project,
repo init -u https://github.com/nxp-imx/imx-manifest -b imx-linux-langdale -m imx-6.1.1-1.0.0.xml
Create the distro of DISTRO-fsl-imx-fb MACHINE=imx93evk
bitbake core-image-base
2) Download LF_v6.1.1_1.0.0 default imx93 images, then uuu -b emmc_all imx-image-full-imx93evk.wic
3) Generate the iMX93 M33 SDK from https://mcuxpresso.nxp.com/en/welcome
4) Downloaded ARM gnu toolchain version 12.2 for M33
5) Compile the freertos_hello demo project from the SDK, connect to gdb confirmed it can run
6) Modified the freertos_hello demo to continuously stream debug logs to console for sign of life, confirmed the change using gdb.
7) Get the necessary files to generate the flash.bin from the baked yocto project in ~/tmp/deploy/images/imx93evk/imx-boot-tools/
Thanks.
Hello, where can I find the document Getting Started with MCUXpresso SDK for MCIMX93-EVK
I tried again to boot both A55 and M33 from eMMC.
What I did
1) use uuu to flash the default full image from LF_v6.1.1_1.0.0 release
2) compile the M33 freertos_helloworld project, added in a printf at 3s interval to output some logs.
3) compile and use imx-mkimage to generate flash.bin for single_boot_m33 and lpboot
4) use uuu tool to write those flash.bin to emmc
Results
- for the case of lpboot, M33 is running fine, the logs are streaming out to the console continuously
- for the case of single_boot_m33, A55 can power up to kernel space, however on M33, the logs stop after ~5 to 6s from POR, when the log stalled, A55 is still alive. Tried M33 debug and release build, same results.
What went wrong ?
All images are from the linux bsp release and MCUExpresso SDK.
Thanks.
Hi @KHL ,
I just started to bring up an iMX93 board and facing the same issue with M33 stopping once kernel on A55 starts.
Did you figure this out?
I add the clk_ignore_unused param to the uboot mmcargs
setenv mmcargs 'setenv bootargs ${jh_clk} console=${console} root=${mmcroot} clk_ignore_unused'