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初认识》已经上架,可以点击了解 -> 小驰成长圈 |期待见证彼此的成长

觉得不错,点个赞呗

相关推荐
STER labo1 天前
mysql配置环境变量——(‘mysql‘ 不是内部或外部命令,也不是可运行的程序 或批处理文件解决办法)
数据库·mysql·adb
sjmaysee1 天前
CentOS7安装Mysql5.7(ARM64架构)
adb·架构
AtOR CUES2 天前
MySQL——表操作及查询
android·mysql·adb
mOok ONSC2 天前
mysql9.0windows安装
windows·adb
xxjj998a2 天前
Laravel8.x核心特性详解
数据库·mysql·adb
TeDi TIVE2 天前
Linux下MySQL的简单使用
linux·mysql·adb
TeDi TIVE2 天前
MySQL四种备份表的方式
mysql·adb·oracle
rleS IONS2 天前
Linux系统离线部署MySQL详细教程(带每步骤图文教程)
linux·mysql·adb
计算机安禾2 天前
【Linux从入门到精通】第40篇:LAMP/LNMP环境一键部署脚本实战
android·linux·adb
xxjj998a2 天前
Laravel7.x核心特性全解析
数据库·mysql·adb