博客
关于我
高通qcom sdm450/msm8953平台 fingerprint指纹模组移植
阅读量:528 次
发布时间:2019-03-07

本文共 1322 字,大约阅读时间需要 4 分钟。

指纹识别功能在高通平台 msm8953 上的移植与优化

1. 硬件分析与准备

该平台使用的是 sdm450msm8953 ,其中主板原理图显示指纹模块采用 microarray 这款 IC。硬件规格中 LDO6 为 1.8V,LDO10 为 2.8V。接口配置方面,主要使用 SPI 通讯,具体通过 BLSP7 spi7 终端aisy设硬件。

  • SPI 通讯:通过 BLSP7 spi7 终端aisy 对接模块上的 spi7 替换模块。
  • FP_RST:硬件上使用悬空脚。
  • FP_INIT:硬件级中断引脚,映射到 gpio44 端。

2. 驱动加载

驱动加载主要通过修改 kernel 配置选项和设备树配置,解除对.spi7 的使用限制,以支持 AP 端使用。

2.1 添加驱动

  • 编译选项修改
waryaren't to modify the kernel configuration, adding: CONFIG_MICROARRAY_FINGERPRINT=y
  • 设备树配置:在 qcom/msm8953-pinctrl.dtsi 中添加 spi7 的设备树节点配置,支持 AP 端使用:
spi7 {    @ΕΥ表示etimes配置

3. 权限与安全环境修改

在 TZ 和 TEE 环境下,需要修改 selinux 规则和初始化脚本。

3.1 添加库文件

将编译好的 fingerprintd 和相关库文件拷贝至系统目录中:

PRODUCT_PACKAGES += finger_PRINT
  • 权限修改:在 sepolicy 文件中增加允许规则,确保服务能够访问设备节点和相关文件。

3.2 selinux 授权

确保 fingerprintd 和相关组件拥有足够权限访问设备文件和资源:

allow fingerprintd microarray_finger_device_type:chr_file {create_file_perms}

4. TZ 安全环境 搭建

4.1 QSEE 移植配置

  • 编译环境验证:根据编译脚本执行:

    build.cmd CHIPSET=msm8953 devcfg sampleapp

    确保无 error 提醒,已成功编译。

  • QP AT /enticP215 imagined configuration:修改 SConscript 中的工程选项,添加 MAFP_IMAGE

Add('MAFP_IMAGE', '-I ${BUILDPATH}/_radioc/...')

5. 调试流程

  • 上电检测:检查 /dev/madev0 是否生成。
  • 日志查看:使用 adb logcat 查看服务状态,确保无 SO 与加载问题。
  • ** spi 通讯验证**:使用 qseecom_sample_client 工具,验证 spi 通道是否正常通信:
    adb shell qseecom_sample_client v smplap64 1 6

通过以上步骤,就能成功在高通 msm8953 平台上实现指纹识别功能的移植和优化。完成后,确保设备能够正常运行指纹识别模块,并在需要时添加相关中断处理和服务逻辑。

转载地址:http://rcjnz.baihongyu.com/

你可能感兴趣的文章
objectForKey与valueForKey在NSDictionary中的差异
查看>>
Objective - C 小谈:消息机制的原理与使用
查看>>
OBJECTIVE C (XCODE) 绘图功能简介(转载)
查看>>
Objective-C ---JSON 解析 和 KVC
查看>>
Objective-C 编码规范
查看>>
Objective-Cfor循环实现Factorial阶乘算法 (附完整源码)
查看>>
Objective-C——判断对象等同性
查看>>
objective-c中的内存管理
查看>>
Objective-C之成魔之路【7-类、对象和方法】
查看>>
Objective-C享元模式(Flyweight)
查看>>
Objective-C以递归的方式实现二叉搜索树算法(附完整源码)
查看>>
Objective-C内存管理教程和原理剖析(三)
查看>>
Objective-C实现 Greedy Best First Search最佳优先搜索算法(附完整源码)
查看>>
Objective-C实现 jugglerSequence杂耍者序列算法 (附完整源码)
查看>>
Objective-C实现 lattice path格子路径算法(附完整源码)
查看>>
Objective-C实现1000 位斐波那契数算法(附完整源码)
查看>>
Objective-C实现2 个数字之间的算术几何平均值算法(附完整源码)
查看>>
Objective-C实现2d 表面渲染 3d 点算法(附完整源码)
查看>>
Objective-C实现2D变换算法(附完整源码)
查看>>
Objective-C实现3n+1猜想(附完整源码)
查看>>