SMCInvoke driver is a misc driver to support communication between secure and non-secure world, based on new capability based model. Earlier, QSEECom driver had several problems such as exposing many interfaces to accomplish various tasks on secure world side. Ideally, driver should work as transparent as possible and provide just tunnel to communicate between secure and non secure world. SMCInvoke driver aims to achieve that. Change-Id: I439f8ad817ba66210c934115979c276577194c11 Signed-off-by: Dinesh K Garg <dineshg@codeaurora.org>
56 lines
1.7 KiB
Text
56 lines
1.7 KiB
Text
Introduction:
|
|
=============
|
|
Invoke driver is a misc driver which helps communication between non secure
|
|
and secure world. Invoke driver communicates with secure side using SCM
|
|
driver. To use invoke driver, open must be called on invoke device i.e.
|
|
/dev/invoke. Invoke driver exposes only one IOCTL invoke which passes
|
|
userspace request to TZ.
|
|
|
|
SW Architecture
|
|
===============
|
|
Following is SW stack for Invoke driver.
|
|
|
|
+++++++++++++++++++++++++++++++++++++++++
|
|
+ Applications +
|
|
+++++++++++++++++++++++++++++++++++++++++
|
|
+ System Layer +
|
|
+++++++++++++++++++++++++++++++++++++++++
|
|
+ Kernel +
|
|
+ +++++++++++++++++++ +
|
|
+ + Invoke driver + +
|
|
+ +++++++++++++++++++ +
|
|
+ + SCM Driver + +
|
|
+++++++++++++++++++++++++++++++++++++++++
|
|
||
|
|
||
|
|
\/
|
|
+++++++++++++++++++++++++++++++++++++++++
|
|
+ Trust Zone +
|
|
+ +++++++++++ +++++++++++ +
|
|
+ + TZ App1 + + TZ App2 + +
|
|
+++++++++++++++++++++++++++++++++++++++++
|
|
|
|
|
|
Interfaces
|
|
==========
|
|
Invoke driver exposes INVOKE_IOCTL_INVOKE_REQ IOCTL for userspace to
|
|
communicate with driver. More details of IOCTL are avilable in
|
|
corresponding header file.
|
|
|
|
|
|
Driver Parameters
|
|
=================
|
|
This driver is built and statically linked into the kernel; therefore,
|
|
there are no module parameters supported by this driver.
|
|
|
|
There are no kernel command line parameters supported by this driver.
|
|
|
|
Power Management
|
|
================
|
|
TBD
|
|
|
|
Dependencies
|
|
============
|
|
Invoke driver depends on SCM driver to communicate with TZ.
|
|
|
|
|