CSL_BootCfgUnlockKicker()问题总结与整理

本文档介绍了C6678处理器中Bootcfg模块的kicker机制,该机制通过KICK0和KICK1寄存器防止非法写入。在上电复位后,BootcfgMMR默认锁定,解锁需要两次特定数据的写入。CSL_BootCfgUnlockKicker()函数用于解锁,而CSL_BootCfglockKicker()用于锁定。使用IPC中断时,需先解锁KICK寄存器。讨论了CSL函数的使用情况,并指出两者不一定需要配对使用,除非需要锁定机制。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、C6678用户手册中关于kick0/1的解释:

 (翻译)

       Bootcfg模块包含一个kicker机制,可防止任何虚假写入更改任何 Bootcfg MMR 值。 当kicker被锁定时(它最初是在上电复位后),没有任何 Bootcfg MMR 是可写的(它们只能是可读的)。该机制需要在踢锁机制解锁之前两次 MMR 写入到KICK0和KICK1寄存器,并提供准确的数据值。地址位置请参见表 3-2“设备状态控制寄存器”(第 68 页)。一旦释放,所有具有“写”权限的 Bootcfg MMR 都是可写的(只读 MMR 仍然是只读的)。第一个 KICK0 数据是0x83e70b13。第二个KICK1数据是0x95a4f1e0。

向这些kick MMR中的任何一个写入任何其他数据值将锁定 kicker 机制并阻止对Bootcfg MMR的任何写入。

 二、对CSL_BootCfgUnlockKicker()函数的解释:

查找有关csl函数的解释有一个文档,路径为:

D:\zhuanyeruanjian\ccs\ti\pdk_C6678_1_0_0_18\packages\ti\csl\docs\doxygen\html

文档中关于CSL_BootCfgUnlockKicker()和CSL_BootCfglockKicker()的解释如下:

 三、IPC中断和KICK的关系

在这里,我找到了三个类似的问题及解答

问题一:

问:

答:

 问题二:

 

问题三: 

 

       综上所述,我觉得CSL_BootCfgUnlockKicker()和CSL_BootCfglockKicker()不一定非要配对使用,只有需要将KICK寄存器锁住的时候再加CSL_BootCfglockKicker()即可;   

       但是使用IPC时要先将KICK寄存器解锁,再进行利用。

 

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值