高通camera OTP与EEPROM
OTP(One Time Programmable)是一种存储器类型,意思是一次性可编程:程序烧入之后,将不可再次更改和清除。
OTP的作用:sensor OTP是用来保证每个sensor一致性的一些校准数据。比如模组厂生产了一批模组,由于外部因素导致这些模组或多或少存在一些差异。模组厂就会挑选出最接近一批中间值的模组,称之为golden,然后将其他模组的相关参数校准到和golden一致。
OTP一般用来储存lens shading Calibration信息,AWB参数,AF参数和模组的相关信息(模组的生产年月,模组ID)等。
OTP常用的两种方法:
1.OTP数据烧录在sensor本身的芯片中。该方法不需要额外的储存器件,但是储存空间较小,不适合较大数据。
2.OTP数据放在EEPROM中:
EEPROM (Electrically Erasable Programmable read only memory)是指带电可擦可编程只读存储器。是一种掉电后数据不丢失的存储芯片
该方法需要专门的EEPROM驱动程序。
该方法送给平台端的RawData是已经校正过的数据。
验证EEPROM是否bringup成功:
adb root && adb remount
adb shell mkdir /vendor/etc/camera/
adb shell "echo dumpSensorEEPROMData=1 >> /vendor/etc/camera/camxoverridesettings.txt"
重启之后:
adb root && adb remount
adb shell
cd data/vendor/camera
EEPROM bringup成功的话OTP的数据就会从这里看到
*kbuffer_OTP.txt文件:
高通camera OTP与EEPROM相关推荐
- 高通camera调试
高通camera驱动分析 ./qcom/proprietary/mm-still/codec_v1/omx/jpeg_encoder/Android.mk:15:CHROMATIX_VERSION : ...
- 【高通SDM660平台 Android 10.0】(21) --- 高通Camera persist使用手册
在网上看到一位兄弟针对高通平台 camera 相关属性总结的特别好,特意转载过来备份下,以供后续调试使用. 原文: <高通Camera persist使用手册> 基于MSM8996平台PL ...
- 高通Camera 软件工程师的成长之路
本文以个人的工作学习经历来描述一 Camera 软件工程师的披荆斩棘之路,时间从大学开始,以至任职于高通 Camera 软件工程师结束,杂以本人学习过程当中的一系列学习笔记和博客文章,绝对是干货满满, ...
- 【Android驱动】高通Camera代码probe流程
参看博客: Android camera架构: 基于qualcomm平台的camera 驱动详解_Winston-CSDN博客_高通camera驱动架构 Android Camera MSM HAL: ...
- 高通 Camera HAL3:CAMX、CHI-CDK 详解
网上关于高通CameraHAL3的介绍文档不多,之前做高通CameraHAL3的一些总结.整理,杂乱了一点,将就着看吧. 一.初步认知 高通CameraHAL3的架构很庞大,代码量也很巨大. 先对CA ...
- 高通Camera数字成像系统简介
转载: https://deepinout.com/qcom-camx-chi/qcom-camx-system-intro.html 整理:小驰笔记 相机的硬件层,作为整个框架的最底层,通过硬件模块 ...
- 高通平台开发系列讲解(外设篇)高通Camera软件架构
文章目录 一.高通Camera软件架构 1.1.Camera App 1.2.Camera Framework 1.3.Camera Service 1.4.Camera Provider 1.5.C ...
- 高通Camera 驱动调试要点(一)
高通Camera 驱动调试要点(一)_bobuddy的博客-CSDN博客_camera 驱动调试
- 高通Camera bring up软件流程【转】
本文转载自:http://blog.csdn.net/liwei16611/article/details/51279658 高通camera bring up分为两种类型:YUV和bayer bri ...
最新文章
- Office word 2007不能另存为pdf格式的解决方法
- cloudtalk 无法连接到消息服务器,solr - Solr Cloud down无法与Zookeeper对话客户端会话超时 - 堆栈内存溢出...
- python编程if语法-Python基本语法(if判断)
- 和中医学习到的养生方法和知识
- jQuery 9 相对选择器
- Linux云服务器安装Redis并设置远程连接设置开机自启
- phpStorm注册码
- jzoj1264,P2866-乱头发节,糟糕的一天Bad Hair Day【单调栈】
- Linux系统文件类型 特殊文件 和 进程间通信机制
- 华为鸿蒙搭载哪些手机,华为鸿蒙系统支持哪些手机 可以装华为鸿蒙系统手机...
- 20%3cx 30 的c语言表达式是,判断题(指令正误)
- 第18章 Redis数据结构常用命令
- 【报错】解决logstash tracking_column not found in dataset. {:tracking_column=>“updated_time“}问题
- python能做什么程序-Python能做什么,能够开发什么项目?
- 在串口调试助手上使用AT命名控制GPRS模块发送短信
- 生成android toolchain
- 【洛谷3043】跳楼机
- 23种设计模式学习记录之单例设计模式
- Dragonfly 三维可视化数据分析处理软件-切片分析工具使用教程
- 【目标检测】(10) Mosaic 数据增强方法,附Python完整代码
热门文章
- [独立游戏]用3D模型做2D动画,像素风也可以独当一面
- android录音app 视频,月入 2 万案例分享:Android 音视频格式转换 App
- Serializer序列化的使用
- 计算机毕业设计ssm农村地产物品交易网站mg72q系统+程序+源码+lw+远程部署
- 【干货】老外的GitHub整理的stm32f4驱动库
- C++标准模板库介绍
- Verilog中pullup(scl)和assign (weak0, weak1) scl = 1‘b1的区别
- 狂神说mysql笔记
- Android NDK实现增量更新
- [内存管理]连续内存分配器(CMA)概述