88E8057 Embedded OTP Programming

88E8057是Marvell的一款PCIE接口的千兆以太网芯片。内含1k的OTP存储器,可以用来初始化芯片的寄存器。比如MAC地址就是用OTP的内容来初始化的。下面的对OTP编程的步骤来源于一些逆向工程,实际使用中看来来是可以,但并不保证一定正确。

 

OTP 内存进行只能一次性编程,初始时所有的内容为0。当一位被写为1之后,则不能再写回0.

 

对OTP内存进行编程: (所有寄存器地址均指Control Register)

 

1. 设 REG_byte 0x04 为1,然后再设为2,用来复位芯片

 

2. 设 REG_byte 0x158 为2,启用特殊寄存器的写使能。

 

3. 设 REG_dword 0x1ca0 为 0xff0000f0  (目的不明)

 

对OTP编程过程为,先往REG_dword 0x1c54中写入数据,然后在REG_word 0x1c52中写入 0x8000|<地址>。等待最高位变为0之后,则该四字节编程完毕。

对OTP读的过程,往REG_word 0x1c52中写入地址,等待最高位变为1之后,则可从 REG_dword 0x1c54中读到数据。

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值