使用280049加密后(加密只用了Z1区),连接仿真器,在On-chip Flash中解密,load程序,可以运行,
但是断开仿真器后重新上电无法正常运行,DSP一直处于复位状态
分析原因:1、解密问题
2、boot 模式问题
针对1解密,直接调用的TI driver lab中的解密函数DCSM_unlockZone1CSM(&PasswordKey),问题依旧
对于2 Boot,采用硬件默认boot模式,也就是gpio32、gpio24上拉高电平,因此将Z1otp-GPREG1配置成0xFFFFFFFF,Z1otp-bootctrl为0xFFFFFFFF出现问题后,将1otp-GPREG1(0x7800C)配置成0x5AFFFFFF,Z1otp-bootctrl(0x7801E)为0xFFFFFF02,问题依旧
请问各位大神还有其他可能的原因么,多谢!
mangui zhang:
不加密烧写到flash后是否可以正常运行
先解决在RAM中运行的同时也能在flash中运行
然后加密测试
使用280049加密后(加密只用了Z1区),连接仿真器,在On-chip Flash中解密,load程序,可以运行,
但是断开仿真器后重新上电无法正常运行,DSP一直处于复位状态
分析原因:1、解密问题
2、boot 模式问题
针对1解密,直接调用的TI driver lab中的解密函数DCSM_unlockZone1CSM(&PasswordKey),问题依旧
对于2 Boot,采用硬件默认boot模式,也就是gpio32、gpio24上拉高电平,因此将Z1otp-GPREG1配置成0xFFFFFFFF,Z1otp-bootctrl为0xFFFFFFFF出现问题后,将1otp-GPREG1(0x7800C)配置成0x5AFFFFFF,Z1otp-bootctrl(0x7801E)为0xFFFFFF02,问题依旧
请问各位大神还有其他可能的原因么,多谢!
Hugh_xiao:
回复 mangui zhang:
不加密是没有问题的,问题是加密后出现的
使用280049加密后(加密只用了Z1区),连接仿真器,在On-chip Flash中解密,load程序,可以运行,
但是断开仿真器后重新上电无法正常运行,DSP一直处于复位状态
分析原因:1、解密问题
2、boot 模式问题
针对1解密,直接调用的TI driver lab中的解密函数DCSM_unlockZone1CSM(&PasswordKey),问题依旧
对于2 Boot,采用硬件默认boot模式,也就是gpio32、gpio24上拉高电平,因此将Z1otp-GPREG1配置成0xFFFFFFFF,Z1otp-bootctrl为0xFFFFFFFF出现问题后,将1otp-GPREG1(0x7800C)配置成0x5AFFFFFF,Z1otp-bootctrl(0x7801E)为0xFFFFFF02,问题依旧
请问各位大神还有其他可能的原因么,多谢!
Susan Yang:请问您在加密时有没有对GRABRAM和GRABSECT进行设置?
如果您正在编写特定区域的密码,那么您还需要对GRABRAM和GRABSECT字段进行编程,以将RAM和Flash扇区分配给Zone1
另外我们对DCSM有一个专门的博客,您可以参考一下:
e2echina.ti.com/…/dcsm
使用280049加密后(加密只用了Z1区),连接仿真器,在On-chip Flash中解密,load程序,可以运行,
但是断开仿真器后重新上电无法正常运行,DSP一直处于复位状态
分析原因:1、解密问题
2、boot 模式问题
针对1解密,直接调用的TI driver lab中的解密函数DCSM_unlockZone1CSM(&PasswordKey),问题依旧
对于2 Boot,采用硬件默认boot模式,也就是gpio32、gpio24上拉高电平,因此将Z1otp-GPREG1配置成0xFFFFFFFF,Z1otp-bootctrl为0xFFFFFFFF出现问题后,将1otp-GPREG1(0x7800C)配置成0x5AFFFFFF,Z1otp-bootctrl(0x7801E)为0xFFFFFF02,问题依旧
请问各位大神还有其他可能的原因么,多谢!
Hugh_xiao:
回复 Susan Yang:
这些配置是没有问题的,而且我用了2807x和2837x,加密使用都是没有问题的,目前这种问题仅在28004x 上出现,在英文论坛上找到了相关的问题,目前也是没有解决状态,坐等高手指点
使用280049加密后(加密只用了Z1区),连接仿真器,在On-chip Flash中解密,load程序,可以运行,
但是断开仿真器后重新上电无法正常运行,DSP一直处于复位状态
分析原因:1、解密问题
2、boot 模式问题
针对1解密,直接调用的TI driver lab中的解密函数DCSM_unlockZone1CSM(&PasswordKey),问题依旧
对于2 Boot,采用硬件默认boot模式,也就是gpio32、gpio24上拉高电平,因此将Z1otp-GPREG1配置成0xFFFFFFFF,Z1otp-bootctrl为0xFFFFFFFF出现问题后,将1otp-GPREG1(0x7800C)配置成0x5AFFFFFF,Z1otp-bootctrl(0x7801E)为0xFFFFFF02,问题依旧
请问各位大神还有其他可能的原因么,多谢!
天下无狗:
回复 Hugh_xiao:
问题解决没有,我也遇到你一模一样的问题
使用280049加密后(加密只用了Z1区),连接仿真器,在On-chip Flash中解密,load程序,可以运行,
但是断开仿真器后重新上电无法正常运行,DSP一直处于复位状态
分析原因:1、解密问题
2、boot 模式问题
针对1解密,直接调用的TI driver lab中的解密函数DCSM_unlockZone1CSM(&PasswordKey),问题依旧
对于2 Boot,采用硬件默认boot模式,也就是gpio32、gpio24上拉高电平,因此将Z1otp-GPREG1配置成0xFFFFFFFF,Z1otp-bootctrl为0xFFFFFFFF出现问题后,将1otp-GPREG1(0x7800C)配置成0x5AFFFFFF,Z1otp-bootctrl(0x7801E)为0xFFFFFF02,问题依旧
请问各位大神还有其他可能的原因么,多谢!
天下无狗:
回复 Susan Yang:
回答一点深奥的东西,我跟他一样的情况,配置没问题
使用280049加密后(加密只用了Z1区),连接仿真器,在On-chip Flash中解密,load程序,可以运行,
但是断开仿真器后重新上电无法正常运行,DSP一直处于复位状态
分析原因:1、解密问题
2、boot 模式问题
针对1解密,直接调用的TI driver lab中的解密函数DCSM_unlockZone1CSM(&PasswordKey),问题依旧
对于2 Boot,采用硬件默认boot模式,也就是gpio32、gpio24上拉高电平,因此将Z1otp-GPREG1配置成0xFFFFFFFF,Z1otp-bootctrl为0xFFFFFFFF出现问题后,将1otp-GPREG1(0x7800C)配置成0x5AFFFFFF,Z1otp-bootctrl(0x7801E)为0xFFFFFF02,问题依旧
请问各位大神还有其他可能的原因么,多谢!
Susan Yang:
回复 天下无狗:
请您参考
e2e.ti.com/…/771891
客户在E2E上也发了帖子
在DCSM_OTP_Z1_PSWDLOCK中写入0xFB7FFFF5,问题解决了
另外也可以参考另外的一个相关贴
e2e.ti.com/…/2852527
使用280049加密后(加密只用了Z1区),连接仿真器,在On-chip Flash中解密,load程序,可以运行,
但是断开仿真器后重新上电无法正常运行,DSP一直处于复位状态
分析原因:1、解密问题
2、boot 模式问题
针对1解密,直接调用的TI driver lab中的解密函数DCSM_unlockZone1CSM(&PasswordKey),问题依旧
对于2 Boot,采用硬件默认boot模式,也就是gpio32、gpio24上拉高电平,因此将Z1otp-GPREG1配置成0xFFFFFFFF,Z1otp-bootctrl为0xFFFFFFFF出现问题后,将1otp-GPREG1(0x7800C)配置成0x5AFFFFFF,Z1otp-bootctrl(0x7801E)为0xFFFFFF02,问题依旧
请问各位大神还有其他可能的原因么,多谢!
天下无狗:
回复 Susan Yang:
谢谢你的回答,先前的人是因为在DCSM_OTP_Z1_PSWDLOCK中写入了密码锁导致的,然而这个功能仅仅是为了对外隐藏密码,使密码不可视而已,跟这个问题没关系啊
使用280049加密后(加密只用了Z1区),连接仿真器,在On-chip Flash中解密,load程序,可以运行,
但是断开仿真器后重新上电无法正常运行,DSP一直处于复位状态
分析原因:1、解密问题
2、boot 模式问题
针对1解密,直接调用的TI driver lab中的解密函数DCSM_unlockZone1CSM(&PasswordKey),问题依旧
对于2 Boot,采用硬件默认boot模式,也就是gpio32、gpio24上拉高电平,因此将Z1otp-GPREG1配置成0xFFFFFFFF,Z1otp-bootctrl为0xFFFFFFFF出现问题后,将1otp-GPREG1(0x7800C)配置成0x5AFFFFFF,Z1otp-bootctrl(0x7801E)为0xFFFFFF02,问题依旧
请问各位大神还有其他可能的原因么,多谢!
天下无狗:
回复 天下无狗:
附代码:.sect "b0_dcsm_otp_z2_linkpointer".long 0x1FFFFFFF;B0_Z2OTP_LINKPOINTER1.long 0xFFFFFFFF;Reserved.long 0x1FFFFFFF;B0_Z2OTP_LINKPOINTER2.long 0xFFFFFFFF;Reserved.long 0x1FFFFFFF;B0_Z2OTP_LINKPOINTER3.long 0xFFFFFFFF;Reserved
.sect "b0_dcsm_otp_z2_gpreg".long 0xFFFFFFFF;Z2OTP_BOOTPIN_CONFIG.long 0xFFFFFFFF;Z2OTP_GPREG2
.sect "b0_dcsm_otp_z2_pswdlock".long 0xFFFFFFFF;Z2OTP_PSWDLOCK.long 0xFFFFFFFF;Reserved
.sect "b0_dcsm_otp_z2_crclock".long 0xFFFFFFFF;Z2OTP_CRCLOCK.long 0xFFFFFFFF;Reserved
.sect "b0_dcsm_otp_z2_bootctrl".long 0xFFFFFFFF;Z2OTP_GPREG3.long 0xFFFFFFFF;Z2OTP_BOOTCTRL
.sect "b0_dcsm_zsel_z2".long 0xFFFFFFFF;B0_Z2OTP_EXEONLYRAM.long 0xFFFFFFFF;B0_Z2OTP_EXEONLYSECT.long 0xFFFFFFFF;B0_Z2OTP_GRABRAM.long 0xFFFFFFFF;B0_Z2OTP_GRABSECT
.long 0xFFFFFFFF;B0_Z2OTP_CSMPSWD0 (LSW of 128-bit password).long 0xE3FFFFFE;B0_Z2OTP_CSMPSWD1.long 0xFFFFFFFF;B0_Z2OTP_CSMPSWD2.long 0xFFFFFFFF;B0_Z2OTP_CSMPSWD3 (MSW of 128-bit password)
.sect "b1_dcsm_otp_z2_linkpointer".long 0x1FFFFFFF;B1_Z2OTP_LINKPOINTER1.long 0xFFFFFFFF;Reserved.long 0x1FFFFFFF;B1_Z2OTP_LINKPOINTER2.long 0xFFFFFFFF;Reserved.long 0x1FFFFFFF;B1_Z2OTP_LINKPOINTER3.long 0xFFFFFFFF;Reserved
.sect "b1_dcsm_zsel_z2".long 0xFFFFFFFF;Reserved.long 0xFFFFFFFF;B1_Z2OTP_EXEONLYSECT.long 0xFFFFFFFF;Reserved.long 0x57FFFFFF;B1_Z2OTP_GRABSECT
.long 0xFFFFFFFF;Reserved.long 0xFFFFFFFF;Reserved.long 0xFFFFFFFF;Reserved.long 0xFFFFFFFF;Reserved
使用280049加密后(加密只用了Z1区),连接仿真器,在On-chip Flash中解密,load程序,可以运行,
但是断开仿真器后重新上电无法正常运行,DSP一直处于复位状态
分析原因:1、解密问题
2、boot 模式问题
针对1解密,直接调用的TI driver lab中的解密函数DCSM_unlockZone1CSM(&PasswordKey),问题依旧
对于2 Boot,采用硬件默认boot模式,也就是gpio32、gpio24上拉高电平,因此将Z1otp-GPREG1配置成0xFFFFFFFF,Z1otp-bootctrl为0xFFFFFFFF出现问题后,将1otp-GPREG1(0x7800C)配置成0x5AFFFFFF,Z1otp-bootctrl(0x7801E)为0xFFFFFF02,问题依旧
请问各位大神还有其他可能的原因么,多谢!
Susan Yang:
回复 天下无狗:
This issue has been solved by below steps:1) Secure All RAM Zone by change the .long 0x55555555 ;B0_Z1OTP_GRABRAM2) Secure FLASH Bank1 by change the .long 0x55555555 ;B1_Z1OTP_GRABSECT3) change the CMD file for bank1 part:b1_dcsm_otp_z1_linkpointer : > B1_DCSM_OTP_Z1_LINKPOINTER PAGE = 0b1_dcsm_zsel_z1 : > B1_DCSM_ZSEL_Z1_P0 PAGE = 0
您可以尝试一下