MT6762平台NXP NFC代码移植要点
1 找到官网,获取源码包
NXP NFC移植源码
https://github.com/NXPNFCProject
固件
https://github.com/NXP/nfc-NXPNFCC_FW/tags
2 主要介绍源码移植
打开https://github.com/NXPNFCProject
下载对于源码包放到工程对于目录
nfcandroid_nfc_hidlimpl-master -->hardware/nxp/nfc目录下
nfcandroid_secureelement-master -->hardware/nxp/secure_element目录下
NFC_NCIHAL_libnfc-nci-master-->system/nfc目录下
NXPNFC_Reference-master-->vendor/nxp目录下
NFC_NCIHAL_base-master-->frameworks/base目录下,这个目录的代码移植完毕,需要删除对于obj(或用make clean)再重新编译.
i2c节点驱动代码
NXPNFC_I2CDriver-master-->kernel-4.9/drivers/misc/mediatek/nfc/
修改对应的makeFile,添加编译进去
3 其它注意点
DWS,配置i2c速率,Ven,DWL,IRQ等GPIO的读中断.
dts配置.配置i2c地址,速率,Ven,DWL,IRQ等GPIO 的dts
如果使用外部系统提供的CLK,需要接CLR_REQ脚,CLR_REQ时钟请求脚,由NXP固件控制,当需要外部时钟时(读NFC标签才需要),CLK_REQ拉高,不接时,用NFC参考电路模块使用的时钟.
DWL是需要升级固件时的控制脚.有些NFC模块一定要拉低才能正常工作,否则认为进入升级状态.
移植完毕后,开机完成就有NFC设备初始化,通过打印LOG确定i2c是否初始化成功,固件是否初始化成功.
4 LOG 分析
I2C总线通信成功LOG
03-21 09:39:52.101 399 1691 D NxpTml : PN54X - Tml Reader Thread Started................
03-21 09:39:52.101 399 1692 D NxpTml : PN54X - Tml Writer Thread Started................
03-21 09:39:52.101 399 1692 D NxpTml : PN54X - Tml Writer Thread Running................
03-21 09:39:52.101 399 1694 D NxpHal : thread started
03-21 09:39:52.101 399 1691 D NxpTml : PN54X - Read requested.....
03-21 09:39:52.101 399 399 D : sem_timedwait() succeeded
03-21 09:39:52.101 399 1691 D NxpTml : PN54X - Invoking I2C Read.....
03-21 09:39:52.102 399 1692 D NxpTml : PN54X - Write requested.....
03-21 09:39:52.102 399 1692 D NxpTml : PN54X - Invoking I2C Write.....
03-21 09:39:52.102 399 1692 D NxpTml : PN54X - Invoking I2C Write.....
03-21 09:39:52.102 399 1692 D NxpNciX : len = 4 => 20000100
03-21 09:39:52.102 399 1692 D NxpTml : PN54X - I2C Write successful.....
03-21 09:39:52.102 399 1692 D NxpTml : PN54X - Posting Fresh Write message.....
03-21 09:39:52.102 399 1692 D NxpTml : PN54X - Tml Writer Thread
....
....
....
03-21 09:39:52.107 399 1691 D NxpTml : PN54X - Read requested.....
03-21 09:39:52.107 399 1691 D NxpTml : PN54X - Invoking I2C Read.....
03-21 09:39:52.108 399 1692 D NxpTml : PN54X - Write requested.....
03-21 09:39:52.108 399 1692 D NxpTml : PN54X - Invoking I2C Write.....
03-21 09:39:52.108 399 1692 D NxpTml : PN54X - Invoking I2C Write.....
03-21 09:39:52.108 399 1692 D NxpNciX : len = 5 => 2001020000
03-21 09:39:52.108 399 1692 D NxpTml : PN54X - I2C Write successful.....
03-21 09:39:52.108 399 1692 D NxpTml : PN54X - Posting Fresh Write message.....
03-21 09:39:52.108 399 1692 D NxpTml : PN54X - Tml Writer Thread Running................
03-21 09:39:52.108 399 1694 D NxpHal : write successful status = 0x0
03-21 09:39:52.108 399 399 D NxpHal : Response timer started
03-21 09:39:52.108 399 399 D NxpHal : Waiting after ext cmd sent
03-21 09:39:52.109 399 1691 D NxpTml : PN54X - I2C Read successful.....len = 39
03-21 09:39:52.109 1627 1627 V MediaProvider: test album art path: /storage/emulated/0/Android/data/com.android.providers.media/albumthumbs
03-21 09:39:52.109 399 1691 D NxpTml : PN54X - Posting read message.....
MT6762平台NXP NFC代码移植要点相关推荐
- NXP Nfc模块Framework层移植遇到的坑【二】
8173_M平台下移植NXP的Nfc模块时遇到的问题,同样也是 hal 层与 kernel 通信时出错,不过由于这个项目没有量产计划,所以供应商的支持也比较少,最后的解决方案是 Framework 层 ...
- NFC在Android平台的架构与移植
原创地址:http://blog.csdn.net/dearsq/article/details/50585287 转载请注明,谢谢! NFC Architecture in Android Syst ...
- PS2手柄代码移植-合泰平台
PS2手柄代码移植-合泰平台 1.PS2手柄端口及通讯协议 PS2手柄的通讯协议是SPI协议是一种高速的.全双工.同步的通信总线,并且在芯片的管脚上只占用四根线(DI.DO.CS.CLK),PS2手柄 ...
- NFC功能移植pn54x系列
转自:http://blog.csdn.net/dearsq/article/details/50585287 尊重原创,谢谢分享. NFC Architecture in Android Syste ...
- 基于MPI的H.264并行编码代码移植与优化
2010 03 25 基于MPI的H.264并行编码代码移植与优化 范 文 洛阳理工学院计算机信息工程系 洛阳 471023 摘 要 H.264获得出色压缩效果和质量的代价是压缩编码算法复杂度的增加. ...
- tar在linux编译为exe,将Linux代码移植到Windows的简单方法 1
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 一.前言 Linux拥有丰富各种源代码资源,但是大部分代码在Windows平台情况是无法正常编译的.Windows平台根本无法直接利用这些源代码资源.如果 ...
- 将Linux代码移植到Windows的简单方法
将Linux代码移植到Windows的简单方法 一.前言 Linux拥有丰富各种源代码资源,但是大部分代码在Windows平台情况是无法正常编译的.Windows平台根本无法直接利用这些源代码资源.如 ...
- 将 5 万行 Java 代码移植到 Go 学到的经验
原文地址: Lessons learned porting 50k loc from Java to Go 原文作者:Krzysztof Kowalczyk 译文出处: https://blog.ko ...
- IMX6Q的硬编码(VPU)的工程代码移植
IMX6Q的硬编码(VPU)的简化代码移植 文章目录 IMX6Q的硬编码(VPU)的简化代码移植 简介 imx-vpuwrap的代码下载与编译 代码的下载 代码的编译 示例代码的研读 示例代码的移植 ...
最新文章
- ikbc机械键盘打字出现重复_抖音开啤酒小姐姐同款面具,ikbc白无垢樱花机械键盘开箱体验...
- awk rand函数问题
- Python命令行参数解析模块getopt使用实例
- CUBRID学习笔记 42 Hierarchical QuerySQL层级查询
- Eclipse 安装Spring tool suite 解决官网下载jar文件无法安装/安装过程出错,及如何下载对应版本zip文件等问题,避坑
- 4阶范德蒙德行列式例题_行列式的性质和计算问题
- 基于Vue开发一个日历组件
- python里的apply,applymap和map的区别
- 将指定内容写入目标文件(日志)
- css实现圆球旋像水波波动_手机拍屏幕烦人的“水波纹”小米10靠它给解决掉了...
- Flutter基础—应用实例
- 智慧安防体系包括哪些智能化设备?
- 设计模式-第五篇之命令模式
- FPGA 闪烁LED
- Ubuntu16.04安装(QQ.exe)
- 如何用SEGGER工具烧写程序,烧写地址详解
- 前端灰度发布 你知多少?
- 数据,源码防泄密解决方案
- html人物属性代码,辐射4初始人物超强属性代码一览
- 第二类换元法之倒代换习题
热门文章
- YOLOv8详解 【网络结构+代码+实操】
- JVM深度学习系列之内存使用细节(三)
- 饥荒联机版把服务器删掉了怎么找回,饥荒联机版存档丢失怎么办 饥荒存档教程...
- uoj#420. 【集训队作业2018】矩形(组合数学)
- 开源前夕先给大家赞赏一下我用C语言开发的云贴吧 站点自己主动兼容-移动、手机、PC自己主动兼容云贴吧...
- Excel输出高清图片
- 计算机操作系统课后习题答案
- 用USBoot制作USB启动盘
- 今天面了个腾讯拿25K出来的,让我见识到了开发基础的天花板
- DTS入门知识(转载)