大家好,我现在需要实现一个指纹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) rsee_spi_open RSEE_DevIoctl
File: librsee.a(rsee_spi.o)Symbol table '.symtab' contains 73 entries:Num: Value Size Type Bind Vis Ndx Name0: 00000000 0 NOTYPE LOCAL DEFAULT UND 1: 00000000 0 FILE LOCAL DEFAULT ABS rsee_spi.c2: 00000000 0 SECTION LOCAL DEFAULT 13 14: 00000000 14 OBJECT LOCAL DEFAULT 17 __func__.436515: 00000010 15 OBJECT LOCAL DEFAULT 17 __func__.437016: 00000020 21 OBJECT LOCAL DEFAULT 17 __func__.437917: 00000000 0 SECTION LOCAL DEFAULT 18 18: 00000000 0 NOTYPE LOCAL DEFAULT 18 $d19: 00000000 0 SECTION LOCAL DEFAULT 19 39: 00000000 0 SECTION LOCAL DEFAULT 56 40: 00000000 0 NOTYPE LOCAL DEFAULT 1 wm4.0.c07c874f17947de218441: 00000000 0 NOTYPE LOCAL DEFAULT 2 wm4.conf.h.2.df7c5bdb9abe42: 00000000 0 NOTYPE LOCAL DEFAULT 3 wm4.tee_api_defines.h.3.843: 00000000 0 NOTYPE LOCAL DEFAULT 4 wm4.stdint.h.3.4af0baad4444: 00000000 0 NOTYPE LOCAL DEFAULT 5 wm4.rsee_spi_defines.h.2.45: 00000000 0 NOTYPE LOCAL DEFAULT 6 wm4.compiler.h.3.aa6be3b246: 00000000 0 NOTYPE LOCAL DEFAULT 7 wm4.stdbool.h.29.1c9ee68547: 00000000 0 NOTYPE LOCAL DEFAULT 8 wm4.stddef.h.39.daafd3d7948: 00000000 0 NOTYPE LOCAL DEFAULT 9 wm4.tee_api_types.h.190.e49: 00000000 0 NOTYPE LOCAL DEFAULT 10 wm4.trace_levels.h.3.833750: 00000000 0 NOTYPE LOCAL DEFAULT 11 wm4.trace.h.10.eb5c6ea8b951: 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_open67: 00000000 0 NOTYPE GLOBAL DEFAULT UND RSEE_DevOpen68: 00000000 0 NOTYPE GLOBAL DEFAULT UND trace_printf69: 0000003d 56 FUNC GLOBAL DEFAULT 13 rsee_spi_close70: 00000000 0 NOTYPE GLOBAL DEFAULT UND RSEE_DevClose71: 00000075 68 FUNC GLOBAL DEFAULT 13 rsee_spi_full_duplex72: 00000000 0 NOTYPE GLOBAL DEFAULT UND RSEE_DevIoctl
File: librsee.a(rsee_spi.o)Symbol table '.symtab' contains 73 entries:Num: Value Size Type Bind Vis Ndx Name0: 00000000 0 NOTYPE LOCAL DEFAULT UND 1: 00000000 0 FILE LOCAL DEFAULT ABS rsee_spi.c2: 00000000 0 SECTION LOCAL DEFAULT 13 14: 00000000 14 OBJECT LOCAL DEFAULT 17 __func__.436515: 00000010 15 OBJECT LOCAL DEFAULT 17 __func__.437016: 00000020 21 OBJECT LOCAL DEFAULT 17 __func__.437917: 00000000 0 SECTION LOCAL DEFAULT 18 18: 00000000 0 NOTYPE LOCAL DEFAULT 18 $d19: 00000000 0 SECTION LOCAL DEFAULT 19 39: 00000000 0 SECTION LOCAL DEFAULT 56