blob: 38c976af5f8d82fe17601ed7cd70fba923e483eb [file] [log] [blame]
AnilKumar Chimata4cf128e2017-07-13 01:22:31 +05301Introduction:
2=============
3Invoke driver is a misc driver which helps communication between non secure
4and secure world. Invoke driver communicates with secure side using SCM
5driver. To use invoke driver, open must be called on invoke device i.e.
6/dev/invoke. Invoke driver exposes only one IOCTL invoke which passes
7userspace request to TZ.
8
9SW Architecture
10===============
11Following is SW stack for Invoke driver.
12
13+++++++++++++++++++++++++++++++++++++++++
14+ Applications +
15+++++++++++++++++++++++++++++++++++++++++
16+ System Layer +
17+++++++++++++++++++++++++++++++++++++++++
18+ Kernel +
19+ +++++++++++++++++++ +
20+ + Invoke driver + +
21+ +++++++++++++++++++ +
22+ + SCM Driver + +
23+++++++++++++++++++++++++++++++++++++++++
24 ||
25 ||
26 \/
27+++++++++++++++++++++++++++++++++++++++++
28+ Trust Zone +
29+ +++++++++++ +++++++++++ +
30+ + TZ App1 + + TZ App2 + +
31+++++++++++++++++++++++++++++++++++++++++
32
33
34Interfaces
35==========
36Invoke driver exposes INVOKE_IOCTL_INVOKE_REQ IOCTL for userspace to
37communicate with driver. More details of IOCTL are avilable in
38corresponding header file.
39
40
41Driver Parameters
42=================
43This driver is built and statically linked into the kernel; therefore,
44there are no module parameters supported by this driver.
45
46There are no kernel command line parameters supported by this driver.
47
48Power Management
49================
50TBD
51
52Dependencies
53============
54Invoke driver depends on SCM driver to communicate with TZ.