参考博文:
https://blog.csdn.net/top5419/article/details/115377848
https://blog.csdn.net/u012719256/article/details/70821002
https://blog.csdn.net/jlgcumt/article/details/104501592
**
调试:
sdm660 sensor在adsp侧
一.单独更新adsp firware_mnt
1. 编译 adsp_proc/build 目录下
python build.py -c sdm660 -o all
2. 生成adsp_proc/obj/qdsp6v5_ReleaseG/660.adsp.prod/LA/system/etc/firmware
3. 单独更新adsp bin
adb root
adb remount
adb shell mount -o remount,rw /vendor/firmware_mnt
adb push adsp* /vendor/firmware_mnt/image/
adb shell rm /persist/sensors/sns.reg
adb reboot
脚本
adb push adsp.b00 /vendor/firmware_mnt/image/
adb push adsp.b01 /vendor/firmware_mnt/image/
adb push adsp.b02 /vendor/firmware_mnt/image/
adb push adsp.b03 /vendor/firmware_mnt/image/
adb push adsp.b04 /vendor/firmware_mnt/image/
adb push adsp.b05 /vendor/firmware_mnt/image/
adb push adsp.b06 /vendor/firmware_mnt/image/
adb push adsp.b07 /vendor/firmware_mnt/image/
adb push adsp.b08 /vendor/firmware_mnt/image/
adb push adsp.b09 /vendor/firmware_mnt/image/
adb push adsp.b10 /vendor/firmware_mnt/image/
adb push adsp.b11 /vendor/firmware_mnt/image/
adb push adsp.b12 /vendor/firmware_mnt/image/
adb push adsp.b13 /vendor/firmware_mnt/image/
adb push adsp.b14 /vendor/firmware_mnt/image/
adb push adsp.b15 /vendor/firmware_mnt/image/
adb push adsp.b16 /vendor/firmware_mnt/image/
adb push adsp.b17 /vendor/firmware_mnt/image/
adb push adsp.b18 /vendor/firmware_mnt/image/
adb push adsp.b19 /vendor/firmware_mnt/image/
adb push adsp.b20 /vendor/firmware_mnt/image/
adb push adsp.b21 /vendor/firmware_mnt/image/
adb push adsp.mdt /vendor/firmware_mnt/image/
二.push sensor相关配置文件生效及生成reg文件
adb root
adb remount
adb shell rm /mnt/vendor/persist/sensors/sns.reg
adb shell rm /vendor/etc/sensors/sensor_def_qcomdev.conf
adb push <your sensor_def_qcomdev.conf file path> /vendor/etc/sensors/
adb shell chmod 644 /vendor/etc/sensors/sensor_def_qcomdev.conf
adb shell sync
adb reboot
注意事项:
- 如果push失败,提示只读文件
adb disable-verity 后重启尝试。 - sensor_def_qcomdev.conf 存放的路径不是固定的
- 在更新配置时,必须删除sns.reg。当新push的配置文件没有修改版本号,不会生效生成新的sns.reg文件
- sns_regedit_ssi -r ADSP sensor 查看sensor配置文件更新的内容是否生效了
命令行获取sensor数据
1. -r : rate
2. -d: duration in secound
3. -s: Sensor ID
4. -t data_type // 几个数据
5. sns_cm_test -r 20 -d 1 -s 40 -t 5 测试prox
6. sns_cm_test -r 20 -d 1 -s 40 -t 6 测试als
7. sns_cm_test -r 20 -d 1 -s 0 -t 0 测试G-sensor
8. sns_cm_test -r 20 -d 1 -s 10 -t 0测试GYRO
9. sns_cm_test -r 20 -d 1 -s 20 -t 0测试MAG
遇到的问题:
1.移植都正常,但Qsensortest app内所有sensor都未加载成功。
-------光感fpc贴反了,导致供电脚接到了accel的中断脚上出现异常。
2.Qsensortest app内sensor配对成功但无数据变化
-------通过Qxdm 的log分析,轮询的定时器开启失败:sensor_def_qcomdev.conf 里配置了gpio1的中断脚。驱动代码里判断如果gpio1不是0xFFFF,则不初始化定时器。
--------方案:gpio1配置为0xFFFF,解决