MTK Camera Debug,adb 读写寄存器操作

在Camera BringUp阶段,遇到问题的时候,我们有时需要读取或者写入某个寄存器的值来进行debug。在mtk 平台,通过adb命令就能实现。

一、读取/写入 某个寄存器地址的值

下面的例子,针对主摄camera sensor进行操作。操作节点是/proc/driver/camsensor,其它camera sensor类推。

设备先adb root。

1)读取寄存器地址的值

/proc/driver # echo "0x0a34" > camsensor && dmesg |grep -i a34

2)往寄存器地址写值

/proc/driver # echo "0x3304 0x66" > camsensor && dmesg |grep -i 3304

markdown 复制代码
操作示例打印:


XXX:/proc/driver # echo "0x3304 0x66" > camsensor && dmesg |grep -i 3304
[  361.519092] (1)[3166:sh]write_cmos_sensor 3304
[  361.519351] (1)[3166:sh]read_cmos_sensor 3304
[  361.519369] (1)[3166:sh][imgsensor]write addr = 0x00003304, data = 0x00000066

调试读写操作,对应驱动代码打印:

php 复制代码
case SENSOR_FEATURE_SET_REGISTER:
        LOG_INF("SENSOR_FEATURE_SET_REGISTER");
        write_cmos_sensor(sensor_reg_data->RegAddr,
                    sensor_reg_data->RegData);
        break;
    case SENSOR_FEATURE_GET_REGISTER:
        LOG_INF("SENSOR_FEATURE_GET_REGISTER");
        sensor_reg_data->RegData =
            read_cmos_sensor(sensor_reg_data->RegAddr);
        break;
二、相关代码逻辑在:

kernel-4.19/drivers/misc/mediatek/imgsensor/src/common/v1_1/imgsensor_proc.c

叶子分割线

《Android Camera开发入门》、《Camx初认识》已经上架,可以点击了解 -> 小驰成长圈 |期待见证彼此的成长

觉得不错,点个赞呗

相关推荐
fatiaozhang952717 小时前
浪潮CD1000-移动云电脑-RK3528芯片-2+32G-安卓9-2种开启ADB ROOT刷机教程方法
android·网络·adb·电脑·电视盒子·刷机固件·机顶盒刷机
黎宇幻生20 小时前
Java全栈学习笔记30
android·adb
今人不见古时月,今月曾经照古人2 天前
将 Android 设备的所有系统日志(包括内核日志、系统服务日志等)完整拷贝到 Windows 本地
windows·adb
zhangphil2 天前
Android adb shell命令分析应用内存占用
android·adb
华农第一蒟蒻3 天前
Elasticsearch赋能3D打印机任务统计分析
java·大数据·spring boot·后端·elasticsearch·adb·maven
一个CCD3 天前
MySQL主从复制之进阶延时同步、GTID复制、半同步复制完整实验流程
android·mysql·adb
独行soc4 天前
2025年渗透测试面试题总结-42(题目+回答)
android·数据库·安全·adb·面试·渗透测试·sqlite
高级测试工程师欧阳5 天前
Mac上如何安装mysql
mysql·adb
MetaverseMan5 天前
Mysql安全之 TDE ,列加密,审计日志
mysql·安全·adb
类似不类似5 天前
mysql实例是什么?
数据库·mysql·adb