大家好,我现在需要实现一个指纹TA,但是指纹TA需要spi访问,
这个时候怎么在tee os里添加一个spi驱动,然后这个TA怎么访问spi
驱动呢,比如spi config,spitxrx。
我了解的,需要在op-tee os 添加平台相关的spi寄存器,类似于ree
下的平台驱动,但是tee os下是没有文件系统的,那么ta怎么访问驱动,
是使用ioct和文件的节点readwrite接口函数......
谢谢!!
实现spi驱动是可以。 问题在于我对这个tee os驱动 和TA直接的访问架构。一般一路spi挂载一路设备,
这个可以做成可配置,tee下用,ree下就不能用。
有的是指纹的中断放到REE侧---这个我了解豆荚就是这么做的。
现在我的困惑依旧是那个ta和tee os 驱动直接的访问路径,因为指纹驱动需要spi,lcd驱动需要mipi
接口等,是一个系列的问题。
那根据您的意思,目前只有一种途径utee-syscall的。但我查看了一个别人的lib,也是基础于op-tee
开发的,里面用到了ioctl,不知道是怎么弄的。
File: librsee.a(rsee_spi.o)
Symbol table '.symtab' contains 73 entries: Num: Value Size Type Bind Vis Ndx Name 0: 00000000 0 NOTYPE LOCAL DEFAULT UND 1: 00000000 0 FILE LOCAL DEFAULT ABS rsee_spi.c 2: 00000000 0 SECTION LOCAL DEFAULT 13 14: 00000000 14 OBJECT LOCAL DEFAULT 17 __func__.4365 15: 00000010 15 OBJECT LOCAL DEFAULT 17 __func__.4370 16: 00000020 21 OBJECT LOCAL DEFAULT 17 __func__.4379 17: 00000000 0 SECTION LOCAL DEFAULT 18 18: 00000000 0 NOTYPE LOCAL DEFAULT 18 $d 19: 00000000 0 SECTION LOCAL DEFAULT 19 39: 00000000 0 SECTION LOCAL DEFAULT 56 40: 00000000 0 NOTYPE LOCAL DEFAULT 1 wm4.0.c07c874f17947de2184 41: 00000000 0 NOTYPE LOCAL DEFAULT 2 wm4.conf.h.2.df7c5bdb9abe 42: 00000000 0 NOTYPE LOCAL DEFAULT 3 wm4.tee_api_defines.h.3.8 43: 00000000 0 NOTYPE LOCAL DEFAULT 4 wm4.stdint.h.3.4af0baad44 44: 00000000 0 NOTYPE LOCAL DEFAULT 5 wm4.rsee_spi_defines.h.2. 45: 00000000 0 NOTYPE LOCAL DEFAULT 6 wm4.compiler.h.3.aa6be3b2 46: 00000000 0 NOTYPE LOCAL DEFAULT 7 wm4.stdbool.h.29.1c9ee685 47: 00000000 0 NOTYPE LOCAL DEFAULT 8 wm4.stddef.h.39.daafd3d79 48: 00000000 0 NOTYPE LOCAL DEFAULT 9 wm4.tee_api_types.h.190.e 49: 00000000 0 NOTYPE LOCAL DEFAULT 10 wm4.trace_levels.h.3.8337 50: 00000000 0 NOTYPE LOCAL DEFAULT 11 wm4.trace.h.10.eb5c6ea8b9 51: 00000000 0 NOTYPE LOCAL DEFAULT 12 wm4.assert.h.16.66b581df0
65: 00000000 0 SECTION LOCAL DEFAULT 12 66: 00000001 60 FUNC GLOBAL DEFAULT 13 rsee_spi_open 67: 00000000 0 NOTYPE GLOBAL DEFAULT UND RSEE_DevOpen 68: 00000000 0 NOTYPE GLOBAL DEFAULT UND trace_printf 69: 0000003d 56 FUNC GLOBAL DEFAULT 13 rsee_spi_close 70: 00000000 0 NOTYPE GLOBAL DEFAULT UND RSEE_DevClose 71: 00000075 68 FUNC GLOBAL DEFAULT 13 rsee_spi_full_duplex 72: 00000000 0 NOTYPE GLOBAL DEFAULT UND RSEE_DevIoctl