libnfc读操作从底层到上层分析过程

libnfc源码当中的I2C 文件夹中有phTmlNfc.c文件

其中有读线程函数

这个函数从i2c接口读取数据后传给phTmlNfc_DeferredCall函数。其具体实现如下:

msqid 即是上层函数传进来的队列。进而需要去追踪

全局搜索上述结构体变量,发现是下面函数调用的

进而在追踪phTmlNfc_Init();函数。查找调用phTmlNfc_Init()被调用的地方

搜索相关的可能函数得到如下列表

按照字面意义可知:phDa4Nfc_msgrcv()为向FIFIO去I2c 接口,全局搜索这个函数,发现:

最终发现调接收函数的地方是:

仔细观察上述数据类型:包括 PH_LIBNFC_DEFERREDCALL_MSG、NCI_HAL_OPEN_CPLT_MSG、

NCI_HAL_CLOSE_CPLT_MSG ....其中最后一个为NCI_HAL_RX_MSG。

 

这时就要关注搜索nxpncihal_ctrl.p_nfc_stack_data_cback   和 nxpncihal_ctrl.p_nfc_stack_cback 两个结构体变量,搜索后发现

这就涉及到初始化函数了

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值