MFGTool UTP command failed after sending system image.

キャンセル
次の結果を表示 
表示  限定  | 次の代わりに検索 
もしかして: 

MFGTool UTP command failed after sending system image.

ソリューションへジャンプ
2,111件の閲覧回数
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 解決策
1,736件の閲覧回数
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 返答(返信)
1,737件の閲覧回数
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 件の賞賛
1,736件の閲覧回数
oliverkuo
Contributor IV

Anyone has any idea about how to debug UTP failed?

0 件の賞賛
1,736件の閲覧回数
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 件の賞賛
1,736件の閲覧回数
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 件の賞賛
1,736件の閲覧回数
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 件の賞賛
1,736件の閲覧回数
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 件の賞賛
1,736件の閲覧回数
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 件の賞賛