Camera OTP/EEPROM 读取与处理
文章目录
这也不能算得上是指南吧,只是读取OTP和EEPROM中的一些操作,希望可以给到大家可以学到一些有用的skills。【因为一些问题,所以就不分享图了,本文的主要目的是去了解GC系列的sensor otp读取方式】
1. OTP概念
1.1 基本概念
Camera Module一般会采取两种方式来记录该Sensor的一些信息,一种是OTP(One Time Programmable),另外一种是EEPROM (Electrically Erasable Programmable Read - Only Memory)。
OTP:是一次性可编程,程序或者数据烧入存储器后,将不可再次更改和清除。
1.2 OTP存储类型
目前主流的有2种:① OTP数据烧录在sensor的寄存器中。 这种方案省钱,不需要额外的存储器件,但是存储空间小,如果需要烧录的数据量过大,就不适用。
② OTP数据烧录在EEPROM中:EEPROM是指带电可擦可编程只读存储器,是一种掉电后数据不丢失的存储芯片。 该方案优势是存储空间大,如果数据量过多,就需要这种方案,缺点是多一个独立的EEPROM存储器件。
1.3 OTP烧录信息类型
OTP烧录的数据类型 一般包括:
- AF:自动对焦校准数据
- AWB:白平衡校准数据
- LSC:镜头阴影校准 (Lens Shading Calibration)
- Moudle Info:模组信息,包含模组的生产年月日,模组ID等
1.4 OTP 作用
OTP是用来给camera sensor做calibration(校准)用的。 因为模组生产出来会有很大的差异性,为了保证效果一致性, 模组厂会挑选一部分模组作为golden,然后将其他模组的相应参数校准到和这些golden一样, (golden不是最好的模组,也不是最差的模组,而是各方面最平均的模组)。
2. 配置准备
2.1 基本认识
如果是高通平台,首先需要读文档:
Camera Sensor Driver Bring-up Guide 80-P9301-97 Rev. F.pdf
看bring up的文档时可以参考一个camera sensor去看一下其对应的sensor xml和eeprom xml。
2.2 OTP/EEPROM配置
- kernel/msm-4.14/arch/arm64/boot/dts/qcom/sm6150-camera-sen