【展锐】OTP调试

OTP分为内置和外挂,常用说法:内置(insensor OTP/sensor端OTP);外挂(EEPROM/平台端OTP)

按照平台OTP规范烧录,数据存储在E2PROM中,建议使用general驱动。

sensor_config.xml

        <OTP>
            <E2prom>
                <OtpName>general</OtpName>  如果使用sensor去处理,就写sensor驱动名
                <I2cAddr>X</I2cAddr>   eeprom就填写W地址,insensor就写sensor I2C
                <E2promNum>X</E2promNum>
                <E2promSize>X</E2promSize>  填写有效size就行
            </E2prom>
        </OTP>

E2promNum:0:单摄, 一个EEPROM
• 1:双摄, 一个EEPROM
• 2:双摄, 两个EEPROM
• 3:多摄, 各自独立的EEPROM

按照平台OTP规范烧录,数据存储在insensor中,应用Sensor OTP的两种方式:
1.将Sensor OTP的处理放在Sensor驱动中,不需要单独维护OTP驱动,但是每一次进Camera都会处理OTP,增加启动时间

2.借助平台OTP流程处理Sensor OTP,只开机第一次读取OTP,需要按照平台架构嵌入Sensor OTP处理
这里就需要问到sensor FAE要读取OTP的文件,当然也可以自己写,sensor里面的地址,FLAG和size都是按照实际填写,将OTP数据全部读取到buffer里面,之后送到平台端处理即可

OTP driver:
第一次开机—>identify—>OTP init—>Read OTP to buffer
OTP driver:
进入Camera—>idertify—>Read OTP from buffer—>init setting—>Apply OTP
Sensor driver:
每次进入Camera—>identify—>init setting—>OTP init—>Read OTP—>Apply OTP

OTP数据确认

OTP每一个数据都会被打印出来,可以对着pd map查看数据是否对应上

使用平台端处理OTP数据的时候先会去确认buffer前六位 otp first six bytes看otp version is版本是什么就用相应的版本规范去解析OTP数据,最后做一个checksum,对应模块在PD map中有数据并且数据正确就会checksum pass,否则就会checksum error

比较常见的错误就是OTP size最后一位是否读完,如果没有读完就会出现pd map中前面的模块checksum pass;最后一个有数据的模块checksum error,这时候就需要size+1

  • 0
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

来碗炒饭

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值