Hello,
We are currently working with the following configuration:
SoC: NXP i.MX8QX6 (MIMX8QX6AVLFZAC)
LPDDR4: Micron MT53E768M32D2ZW-046 (AIT:C)
Yocto Release: walnascar-6.12.34-2.1.0
We are attempting to flash the imx-boot-imx8qxp-mek-sd.bin-flash_spl image using the Universal Update Utility.
During the flashing process, the tool gets stuck and eventually reports LIBUSB_ERROR_NO_DEVICE, preventing the flashing process from completing.
To isolate the issue, we attempted the following:
Tested with older imx-boot binaries from previous releases:
LF_v6.6.52-2.2.2_images_IMX8QXPC0MEK
LF_v5.15.32-2.0.0_images_IMX8QXPC0MEK
Used the latest version of the UUU tool
Repeated the flashing process multiple times
However, the behavior remains the same.
After reviewing the memory device specification, our internal investigation suggests there may be a DDR address row configuration mismatch between the SoC DDR controller configuration and the actual LPDDR4 device.
According to the Micron datasheet, the memory device uses row address R[16:0] (17 rows).
However, based on the SoC documentation, the DDR controller appears to support a maximum of 16 row address lines (R0–R15).
Because of this difference, we suspect there may be a mismatch between the DDR controller configuration and the memory device addressing scheme.
Could a row address mismatch in the LPDDR4 configuration cause the UUU flashing process to stall with a LIBUSB_ERROR_NO_DEVICE during early boot?
If this is a possible cause, what would be the recommended way to correctly configure the DDR parameters for this LPDDR4 device on the i.MX8QX6?
Should the configuration be generated using the DDR Tool / RPA tool provided by NXP, or are there reference configurations available for this specific memory device?
Any guidance or recommendations would be greatly appreciated.
Thank you.
Hi @Yogesh_
I tested in my imx8qxp board. There is no problem occurred. I use the below command flash the flash.bin file.
uuu -b emmc .\imx-boot-imx8qxpc0mek-sd.bin-flash
Answer your questions:
Q1 & Q2 : This will not cause this problem
Q3: you should configure the right parameters for your DRAM. Then re-compile the new flash.bin file. But as you said. your DRAM rows number is 17, But the maximum row size supported by imx8qxp is 16. So please change another DRAM with 16 rows. This means, in order to support the maximum 4GB (32Gb) LPDDR4 density, the configuration must be 16-row, 2 rank
B.R
Could you suggest any alternative solution to resolve the UUU tool hanging/stuck issue? I have already tried both older releases and the latest version of the UUU tool, but I am still encountering the same error.
Thank you for your response.
I have attached the logs for both the Yocto-generated imx-boot-imx8qxp-mek-sd.bin-flash_spl and the flash.bin image. The flash.bin was configured using the RPA tool and built with the SCFW Porting Kit, and it is booting successfully.
Hi @Yogesh_
Do not use the below command
sudo uuu -v -b emmc_all imx-boot-imx8qxp-mek-sd.bin-flash_spl
Use below code:
uuu -b emmc imx-boot-imx8qxp-mek-sd.bin-flash_spl
1. Try to run the uuu tool under Windows OS
2. Share the result about below command:
uuu -lsusb
B.R
Hi @Yogesh_
What is the result after running the following command?
uuu -lsusb
B.R