Hello,
I'm porting BSP android_O8.1.0_1.3.0_8M_image_8mq for our i.MX8MQ custom board.
When I tried to download image by MFG Tool, it always failed after sending system image.
I've tried to send a small size of system image(ex, rename vendor.img) and there was no error occurred.
I attached console and MFGTool logs.
Any advice for this situation?
Thanks for help.
Oliver
Solved! Go to Solution.
I found the DDR4 setting was not set correctly, the size was too small and caused fork failed.
After setting proper size, image downloading procedure can be accomplished.
I found the DDR4 setting was not set correctly, the size was too small and caused fork failed.
After setting proper size, image downloading procedure can be accomplished.
Anyone has any idea about how to debug UTP failed?
did you use android_O8.1.0_1.3.0_8M_tools? what your download image steps? if you use default image in the tools, is it successful? pls share your detailed download steps, let me reproduce this on my board
I tried to insert different instructions after "Sending system.img", the results were various.
frf and seltest commands got pass result, but shell command failed.
ucl2.xml |
---|
<CMD state="Updater" type="push" body="$ mount -o remount,size=1536M rootfs /">change size of tmpfs</CMD> <CMD state="Updater" type="push" body="send" file="files/android/%folder%/system.img" >Sending system.img</CMD> <CMD state="Updater" type="push" body="frf">Finishing system sending</CMD> <CMD state="Updater" type="push" body="selftest">selftest</CMD> <CMD state="Updater" type="push" body="$ echo 'hello world'">find system</CMD> <CMD state="Updater" type="push" body="$ echo `gdisk -l /dev/mmcblk%mmc% | grep system | awk '{print $1}'` > /tmp/partIdx">find system</CMD> |
console log |
---|
UTP: received command '$ mount -o remount,size=1536M rootfs /' UTP: executing "mount -o remount,size=1536M rootfs /" UTP: sending Success to kernel for command $ mount -o remount,size=1536M rootfs /. [ 16.213979] utp_poll: pass returned. UTP: received command 'send' UTP: sending Success to kernel for command send. UTP: received command 'frf' UTP: closing the file UTP: sending Success to kernel for command frf. [ 59.111508] utp_poll: pass returned. UTP: received command 'selftest' UTP: sending Success to kernel for command selftest. UTP: received command '$ echo 'hello world'' UTP: executing "echo 'hello world'" UTP: sending Non-success to kernel for command $ echo 'hello world'. [ 59.385934] utp_poll: exit with status -1 |
I have no idea why the system call would return failed!?
since you use customized board, I suggest that you need to rebuild uboot and kernal uImage by yourself, then program them again, don't use prebuild image, and I realy suggest that you can refe to the documents in the mfgtools\Document\V2,
Hi Joan,
I've created our board file in uboot and dts file in kernel, but the failed phenomenon was the same.
And I just read all documents in mfgtools\Document\V2 today, so I had some test as mentioned above.
If the status -1 was returned from system(), it seems like fork() failed!?
I tried pipe command instead but also got same failed.
Just have no clue why it would be failed.
Hi Joan,
First of all, thanks for your reply.
Yes, I used android_O8.1.0_1.3.0_8M_tools, I attached my script file and ucl2.xml.
Since our custom board used DDR4, I can't use EVK's uboot image, but I had tried default Image and system.img, the same phenomenon appeared.
I'd tried to move the instruction "find system" to front of "Sending system.img" and it could pass without error; UTP(or uuc!?) always return failed after the instruction "Sending system.img".
I also tried to send a small image(ex. vendor.img) and then all procedure could accomplish.
I thought my USB might be unstable, but the instruction was well received on target board, just a failed result returned.
Best regards,
Oliver