[资料分享与下载] imx6 eFUSE的一种烧写方法

[复制链接]
3228|1
 楼主| Rooney30 发表于 2016-1-18 20:14 | 显示全部楼层 |阅读模式
我自己根据Sabrelite的板子,稍作修改,增加了部分功能,自己Layout了一块板子,涉及板子启动问题,官方没有一个比较明确的文档来说明如何烧写eFUSE,我自己土办法,研究了一顿时间,拿出来分享一下,如果哪位大虾有更好的方法,请不吝赐教,更共同成长。
1、BOOT_MODE[1:0]设置成00,未烧写eFUSE时,芯片默认是从NOR FLASH启动,因为板子上没有可启动的代码,所以芯片会主动切换至下载模式
2、利用MfgTools将uboot下载到RAM中运行(只下载uboot),具体犯法如下
      在MfgTools的ucl.xml里面,把烧写FLASH或者SD卡啥的都注释掉,只留Load uBoot,部分,如下

      Loading uboot.
     Jumping to OS image.
3、在串口输出的地方中断自动启动,进入uboot命令行交互方式,Sabrlite自带的uboot提供了eFUSE烧写命令,分别是imxotp read addr和imxotp blow --force addr value,读写eFUSE数据,
其中addr是(eFUSE的寄存器地址-eFUSE基地址-0x400)/0x10,eFUSE的基地址是0x021BC0000,具体定义见《iMX6DQRM.pdf》第46章,P4016
具体的配置值,参见《iMX6DQRM.pdf》第5章,P351。
imxotp blow这个命令在芯片未复位的情况下,是可以修改烧进去的值的。等芯片复位后,烧进去的值不能再更改了。
我自己的板子还是继承了Sabrelie SPI FLASH启动方式,只需要烧写0x450寄存器,即imxotp blow --force 0x5 0x10c00030
韬铸88 发表于 2017-5-8 13:59 | 显示全部楼层
学习一下
您需要登录后才可以回帖 登录 | 注册

本版积分规则

17

主题

117

帖子

3

粉丝
快速回复 在线客服 返回列表 返回顶部