Problems with burning image for i.MX93 9x9 QSB
- 新着としてマーク
- ブックマーク
- 購読
- ミュート
- RSS フィードを購読する
- ハイライト
- 印刷
- 不適切なコンテンツを報告
Hi,
I'm working with he i.MX93 9x9 QSB board, the command to burn the image into the eMMC memory is as follows:
sudo uuu -b emmc_all <bootloader_file> <image_file>
The command works very well with the NXP provided image pack LF_v6.6.23-2.0.0_images_IMX93EVK, however when running an image of my own the install process stops at boot -scanterm -f imx-boot-imx93-9x9-lpddr4-qsb-sd.bin-flash_singleboot -scanlimited 0x800000 and in no way wants to move to a next step of the install.
Only after the NXP provided image booloader is loded the image build with my own recipes gets burned into the eMMC. I noticed that the NXP provided bootloader image name has a suffix of ecc.bin-flash_singleboot, whilst the self-built one is sd.bin-flash_singleboot - could that make the difference? If so, what are the steps to build the ecc type of a bootloader?
- 新着としてマーク
- ブックマーク
- 購読
- ミュート
- RSS フィードを購読する
- ハイライト
- 印刷
- 不適切なコンテンツを報告
how did you get your own uboot image? build the yocto bsp?
- 新着としてマーク
- ブックマーク
- 購読
- ミュート
- RSS フィードを購読する
- ハイライト
- 印刷
- 不適切なコンテンツを報告
Yes, the image was build with the layers provided by NXP, both meta-imx and meta-freescale.
I suspect that my build creates an incorrect bootloader image somehow. It's really hard to tell what change of my image might have created the issue, do you have any advice on how to debug this?
If I recall correctly the image made for imx93-9x9-lpddr4-qsb machine fails to get installed by itself as well.
- 新着としてマーク
- ブックマーク
- 購読
- ミュート
- RSS フィードを購読する
- ハイライト
- 印刷
- 不適切なコンテンツを報告
how about use the command uuu.exe -b emmc <bootloader>? you can build the image again, one is for yocto build, another one option is standalone uboot buiding, how did you build the image?
- 新着としてマーク
- ブックマーク
- 購読
- ミュート
- RSS フィードを購読する
- ハイライト
- 印刷
- 不適切なコンテンツを報告
The output is as below:
uuu (Universal Update Utility) for nxp imx chips -- libuuu_1.5.182-0-gda3cd53
Success 0 Failure 0
3:643-609100 1/ 1 [=================100%=================] SDPS: boot -f imx-boot-imx93-custom-image-qsb-ecc.bin-flash_singleboot
The bootloader image was build with bitbake u-boot-imx. I made some changes so that the built image is of ecc type, however that didn't help.
- 新着としてマーク
- ブックマーク
- 購読
- ミュート
- RSS フィードを購読する
- ハイライト
- 印刷
- 不適切なコンテンツを報告
did you use the uboot images from imx-boot-tools folder under deploy/images? I don't know what you change, if you build the images according to the yocto user guide, the result is same as prebuilt images you download from official website
- 新着としてマーク
- ブックマーク
- 購読
- ミュート
- RSS フィードを購読する
- ハイライト
- 印刷
- 不適切なコンテンツを報告
I've reverted my configuration a bit to better reflect the one shipped by NXP and very likely have found the culprit.
The imx-boot-imx93-custom-qsb-sd.bin-flash_singleboot is build with imx-boot recipe, which builds the binary based on u-boot and u-boot-imx recipes. I've tracked the cause of the problem to the changes in the U_BOOT compilation config options. A custom fragment.cfg is applied to u-boot-imx binary, disabling the CONFIG_ENV_IS_NOWHERE option, just like below:
# CONFIG_ENV_IS_NOWHERE is not set
Without this fragment.cfg file in the u-boot-imx_2024.04.bbappend recipe, the u-boot image burns into the board without any issues. With, the problems explained in the previous posts occurs.
Is the NXP i.MX93 board not compatible with CONFIG_ENV_IS_NOWHERE? If so, are there any alternatives? All I want to do is to store the u-boot env and have access to it.
- 新着としてマーク
- ブックマーク
- 購読
- ミュート
- RSS フィードを購読する
- ハイライト
- 印刷
- 不適切なコンテンツを報告
you can find the imx93 config from uboot as below
https://github.com/nxp-imx/uboot-imx/blob/lf_v2022.04/configs/imx93_11x11_evk_defconfig
- 新着としてマーク
- ブックマーク
- 購読
- ミュート
- RSS フィードを購読する
- ハイライト
- 印刷
- 不適切なコンテンツを報告
It seems that fw_printenv still has access to the uboot env even though the original u-boot config is not altered.