Programming QSPI flash with SDP on iMX RT1165

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

Programming QSPI flash with SDP on iMX RT1165

跳至解决方案
921 次查看
MattMorgan
Contributor IV

I am trying to setup for production on our card that uses and iMX RT 1165.  I would like to use Serial download over USB.  I have found several documents that describe the process of using the flashloader example from the SDK and using sdphost and blhost but for older processors (1060, etc).  I assumed that the instructions would be comparable.  However I have been unable to make it work.  I am using the spsdk python tools for sdphost and blhost.

So my question is there an updated version of these instructions?  Or if these instructions are the same what am I doing wrong?

Here is some output from my attempt:

$ sdphost -v -u 0x1fc9:0x013d write-file 0x20202000 evkmimxrt1160_flashloader_cm7.bin 
INFO:spsdk.sdp.sdp:Connect: identifier='usb', device=SE Blank RT Family (0x1FC9, 0x013D)path=b'/dev/hidraw1' sn=''
INFO:spsdk.sdp.sdp:TX-CMD: WriteFile(address=0x20202000, length=83432)
Status (HAB mode) = 2 (0x2) NO DESCRIPTION.
Response status = 32 (0x20) NO DESCRIPTION.
$ sdphost -v -u 0x1fc9:0x013d jump-address 0x20202400
INFO:spsdk.sdp.sdp:Connect: identifier='usb', device=SE Blank RT Family (0x1FC9, 0x013D)path=b'/dev/hidraw1' sn=''
INFO:spsdk.sdp.sdp:TX-CMD: Jump To Address: 0x20202400
INFO:spsdk.sdp.sdp:RX-PACKET: Response: 0x00000020
Status (HAB mode) = 32 (0x20) NO DESCRIPTION.
$ blhost -v -u 0x1fc9:0x013d flash-image program.bin erase
INFO:spsdk.mboot.mcuboot:Connect: identifier='usb', device=SE Blank RT Family (0x1FC9, 0x013D)path=b'/dev/hidraw1' sn=''
INFO:spsdk.mboot.mcuboot:CMD: FlashEraseRegion(address=0x00000000, length=90112, mem_id=0)
INFO:spsdk.mboot.mcuboot:CMD: Status: 10000 (0x2710) Unknown Command.
Response status = 10000 (0x2710) Unknown Command.
标记 (1)
0 项奖励
回复
1 解答
869 次查看
Gavin_Jia
NXP TechSupport
NXP TechSupport

Hi @MattMorgan ,

Thanks for your interest in NXP MIMXRT series!

Whether you end up using python to import tools from the spsdk package to execute commands, or using a standalone executable (blhost, sdphost), it is recommended that you first run through the process using the GUI tools.

Thanks to @Masmiseim for pointing out that MCUBootUtility is an easy to use GUI tool provided by the NXP experts via github, in addition to the official NXP SEC tool, which operates similarly.

Once you run through the process with the GUI tool, you can get all the executed underlying commands in its log window.

After that, if you are interested in the details of blhost or sdphost, you can read this guidance document: https://spsdk.readthedocs.io/en/stable/apps/blhost.html

Best regards,
Gavin

 

在原帖中查看解决方案

0 项奖励
回复
2 回复数
870 次查看
Gavin_Jia
NXP TechSupport
NXP TechSupport

Hi @MattMorgan ,

Thanks for your interest in NXP MIMXRT series!

Whether you end up using python to import tools from the spsdk package to execute commands, or using a standalone executable (blhost, sdphost), it is recommended that you first run through the process using the GUI tools.

Thanks to @Masmiseim for pointing out that MCUBootUtility is an easy to use GUI tool provided by the NXP experts via github, in addition to the official NXP SEC tool, which operates similarly.

Once you run through the process with the GUI tool, you can get all the executed underlying commands in its log window.

After that, if you are interested in the details of blhost or sdphost, you can read this guidance document: https://spsdk.readthedocs.io/en/stable/apps/blhost.html

Best regards,
Gavin

 

0 项奖励
回复
884 次查看
Masmiseim
Senior Contributor I

Hello @MattMorgan,

 

have vou tried MCU-BootUtil (--> https://github.com/JayHeng/NXP-MCUBootUtility)? This is basically a GUI for blhost. All the commands used via blhost are printed on the terminal, so you can see what is happening und use this informatin for your script implementation.

 

Regards

0 项奖励
回复
%3CLINGO-SUB%20id%3D%22lingo-sub-2083391%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%E5%9C%A8%20iMX%20RT1165%20%E4%B8%8A%E4%BD%BF%E7%94%A8%20SDP%20%E5%AF%B9%20QSPI%20%E9%97%AA%E5%AD%98%E8%BF%9B%E8%A1%8C%E7%BC%96%E7%A8%8B%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2083391%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%E6%88%91%E6%AD%A3%E5%9C%A8%E5%B0%9D%E8%AF%95%E5%9C%A8%E4%BD%BF%E7%94%A8%20iMX%20RT%201165%20%E7%9A%84%E5%8D%A1%E4%B8%8A%E8%BF%9B%E8%A1%8C%E7%94%9F%E4%BA%A7%E8%AE%BE%E7%BD%AE%E3%80%82%E6%88%91%E6%83%B3%E4%BD%BF%E7%94%A8%20USB%20%E4%B8%B2%E8%A1%8C%E4%B8%8B%E8%BD%BD%E3%80%82%E6%88%91%E6%89%BE%E5%88%B0%E4%BA%86%E5%87%A0%E4%BB%BD%E6%96%87%E6%A1%A3%EF%BC%8C%E6%8F%8F%E8%BF%B0%E4%BA%86%E4%BD%BF%E7%94%A8%20SDK%20%E4%B8%AD%E7%9A%84%20flashloader%20%E7%A4%BA%E4%BE%8B%E4%BB%A5%E5%8F%8A%E4%BD%BF%E7%94%A8%20sdphost%20%E5%92%8C%20blhost%20%E7%9A%84%E8%BF%87%E7%A8%8B%EF%BC%8C%E4%BD%86%E9%80%82%E7%94%A8%E4%BA%8E%E8%BE%83%E6%97%A7%E7%9A%84%E5%A4%84%E7%90%86%E5%99%A8%EF%BC%881060%20%E7%AD%89%EF%BC%89%E3%80%82%E6%88%91%E8%AE%A4%E4%B8%BA%E8%BF%99%E4%BA%9B%E8%AF%B4%E6%98%8E%E6%98%AF%E5%85%B7%E6%9C%89%E5%8F%AF%E6%AF%94%E6%80%A7%E7%9A%84%E3%80%82%E7%84%B6%E8%80%8C%E6%88%91%E4%B8%80%E7%9B%B4%E6%97%A0%E6%B3%95%E8%AE%A9%E5%AE%83%E5%8F%91%E6%8C%A5%E4%BD%9C%E7%94%A8%E3%80%82%E6%88%91%E6%AD%A3%E5%9C%A8%E4%BD%BF%E7%94%A8%20spsdk%20python%20%E5%B7%A5%E5%85%B7%E6%9D%A5%E5%A4%84%E7%90%86%20sdphost%20%E5%92%8C%20blhost%E3%80%82%3C%2FP%3E%3CP%3E%E6%89%80%E4%BB%A5%E6%88%91%E7%9A%84%E9%97%AE%E9%A2%98%E6%98%AF%E8%BF%99%E4%BA%9B%E8%AF%B4%E6%98%8E%E6%98%AF%E5%90%A6%E6%9C%89%E6%9B%B4%E6%96%B0%E7%89%88%E6%9C%AC%EF%BC%9F%E6%88%96%E8%80%85%E5%A6%82%E6%9E%9C%E8%BF%99%E4%BA%9B%E8%AF%B4%E6%98%8E%E7%9B%B8%E5%90%8C%EF%BC%8C%E6%88%91%E5%81%9A%E9%94%99%E4%BA%86%E4%BB%80%E4%B9%88%EF%BC%9F%3C%2FP%3E%3CP%3E%E4%BB%A5%E4%B8%8B%E6%98%AF%E6%88%91%E5%B0%9D%E8%AF%95%E7%9A%84%E4%B8%80%E4%BA%9B%E8%BE%93%E5%87%BA%EF%BC%9A%3C%2FP%3E%3CBLOCKQUOTE%3E%3CPRE%20translate%3D%22no%22%3E%24%20sdphost%20-v%20-u%200x1fc9%3A0x013d%20write-file%200x20202000%20evkmimxrt1160_flashloader_cm7.bin%20%3CBR%20%2F%3EINFO%3Aspsdk.sdp.sdp%3AConnect%3A%20identifier%3D'usb'%2C%20device%3DSE%20Blank%20RT%20Family%20(0x1FC9%2C%200x013D)path%3Db'%2Fdev%2Fhidraw1'%20sn%3D''%3CBR%20%2F%3EINFO%3Aspsdk.sdp.sdp%3ATX-CMD%3A%20WriteFile(address%3D0x20202000%2C%20length%3D83432)%3CBR%20%2F%3EStatus%20(HAB%20mode)%20%3D%202%20(0x2)%20NO%20DESCRIPTION.%3CBR%20%2F%3EResponse%20status%20%3D%2032%20(0x20)%20NO%20DESCRIPTION.%3CBR%20%2F%3E%24%20sdphost%20-v%20-u%200x1fc9%3A0x013d%20jump-address%200x20202400%3CBR%20%2F%3EINFO%3Aspsdk.sdp.sdp%3AConnect%3A%20identifier%3D'usb'%2C%20device%3DSE%20Blank%20RT%20Family%20(0x1FC9%2C%200x013D)path%3Db'%2Fdev%2Fhidraw1'%20sn%3D''%3CBR%20%2F%3EINFO%3Aspsdk.sdp.sdp%3ATX-CMD%3A%20Jump%20To%20Address%3A%200x20202400%3CBR%20%2F%3EINFO%3Aspsdk.sdp.sdp%3ARX-PACKET%3A%20Response%3A%200x00000020%3CBR%20%2F%3EStatus%20(HAB%20mode)%20%3D%2032%20(0x20)%20NO%20DESCRIPTION.%3CBR%20%2F%3E%24%20blhost%20-v%20-u%200x1fc9%3A0x013d%20flash-image%20program.bin%20erase%3CBR%20%2F%3EINFO%3Aspsdk.mboot.mcuboot%3AConnect%3A%20identifier%3D'usb'%2C%20device%3DSE%20Blank%20RT%20Family%20(0x1FC9%2C%200x013D)path%3Db'%2Fdev%2Fhidraw1'%20sn%3D''%3CBR%20%2F%3EINFO%3Aspsdk.mboot.mcuboot%3ACMD%3A%20FlashEraseRegion(address%3D0x00000000%2C%20length%3D90112%2C%20mem_id%3D0)%3CBR%20%2F%3EINFO%3Aspsdk.mboot.mcuboot%3ACMD%3A%20Status%3A%2010000%20(0x2710)%20Unknown%20Command.%3CBR%20%2F%3EResponse%20status%20%3D%2010000%20(0x2710)%20Unknown%20Command.%3C%2FPRE%3E%3C%2FBLOCKQUOTE%3E%3C%2FLINGO-BODY%3E