MFGTool UTP command failed after sending system image.

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 
已解决

MFGTool UTP command failed after sending system image.

跳至解决方案
2,883 次查看
oliverkuo
Contributor IV

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

标签 (1)
标记 (3)
0 项奖励
回复
1 解答
2,508 次查看
oliverkuo
Contributor IV

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.

在原帖中查看解决方案

0 项奖励
回复
7 回复数
2,509 次查看
oliverkuo
Contributor IV

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.

0 项奖励
回复
2,508 次查看
oliverkuo
Contributor IV

Anyone has any idea about how to debug UTP failed?

0 项奖励
回复
2,508 次查看
joanxie
NXP TechSupport
NXP TechSupport

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

0 项奖励
回复
2,508 次查看
oliverkuo
Contributor IV

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!?

pastedImage_3.png

0 项奖励
回复
2,508 次查看
joanxie
NXP TechSupport
NXP TechSupport

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,

0 项奖励
回复
2,508 次查看
oliverkuo
Contributor IV

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.

0 项奖励
回复
2,508 次查看
oliverkuo
Contributor IV

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

0 项奖励
回复