美文网首页
OTP调试笔记

OTP调试笔记

作者: 窝窝蜗牛 | 来源:发表于2021-02-24 11:05 被阅读0次
    1. OTP数据的获取方式
      可参数模组厂提供的OTPguide

    2. OTP数据的存储位置
      1)otp数据如果不大,为了节省成本,可以存储在sensor内部寄存器中。不过由于one time program,可能烧写出错,所以会有两到三组数据。
      2)数据量大的情况存储在外挂eeprom中,所以该器件有独立的iic地址,并且eeprom和sensor的寄存器并不是统一编址。
      在sensor端读取数据时有个读取规则,可能是需要配置sensor的当前工作模式什么的,eeprom没这么复杂,直接上电就可以读数据。

    3. OTP数据的正确性验证
      第一步 看kernel层打印


      image.png

      该日志打印位置,eeprom_parse_memory_map。读出来的值是烧录的原始otp数据,可以验证厂家烧录的值是否正确
      第二步 查看vendor打印
      vendor打印打印一般看驱动的打印就够了,format_calibration_data中会对读取到的otp解析计算,比如分解出模组厂商信息,模组生产日期,awb计算出R/G,B/G的值,最后才用这些数据做校准。


      image.png
    4. OTP的校准方式
      1)sensor端校准
      如果在sensor端校准,一般校准函数为NULL。
      2)平台端校准
      调用平台自带的校准函数分别对awb,lsc,af和pdaf做校准。

    5. 代码结构
      文件:module_sensor.c eeprom.c msm_eeprom.c
      OTP初始化步骤:
      入口函数:module_sensor_init_eeprom
      内核空间:
      (1)设备驱动匹配,跑msm_eeprom_platform_probe
      (2)解析设备树数据,保存
      (3)注册v4l2子设备
      vendor 用户空间:
      /* (1) Open the eeprom sub module */
      rc = func_tbl.open((void *)&s_bundle->eeprom_data,
      &s_bundle->subdev_info[SUB_MODULE_EEPROM]);
      /
      (2) Load eeprom library /
      eeprom_load_library(s_bundle->eeprom_data, bin_ctl.ctl.name_data.path);
      /
      (3) Powerup and parse the eeprom /
      func_tbl.process(s_bundle->eeprom_data, EEPROM_INIT, NULL);
      =>eeprom.c eeprom_init
      cfg.cfgtype = CFG_EEPROM_INIT;
      cfg.cfg.eeprom_info = eeprom_info;
      rc = ioctl(ectrl->fd, VIDIOC_MSM_EEPROM_CFG, &cfg);
      msm_eeprom.c :
      eeprom_init_config->
      msm_eeprom_power_up->eeprom_parse_memory_map->msm_camera_power_down
      /
      (4) Read the eeprom data from kernel /
      rc = func_tbl.process(s_bundle->eeprom_data, EEPROM_READ_DATA, NULL);
      /
      (5) Format the cal data /
      rc = func_tbl.process(s_bundle->eeprom_data, EEPROM_SET_FORMAT_DATA, NULL);
      ==> .format_calibration_data
      /
      (6) close the eeprom sub module */
      rc = func_tbl.close(s_bundle->eeprom_data);

    相关文章

      网友评论

          本文标题:OTP调试笔记

          本文链接:https://www.haomeiwen.com/subject/jhoxaktx.html