Add API and IPC calls to read the ATAP certificate UUID from keymaster. Also rename const local variables to the standard convention. This cherry-picked the CL 649562 from trusty/external/trusty. Bug: 76211194 Change-Id: I98ab68180c3855e07884994dc20b879f0b59965d Signed-off-by: Haoran.Wang <elven.wang@nxp.com> |
||
|---|---|---|
| .. | ||
| arch/arm | ||
| sysdeps | ||
| LICENSE | ||
| Makefile | ||
| README.md | ||
| avb.c | ||
| ipc.c | ||
| ipc_dev.c | ||
| keymaster.c | ||
| keymaster_serializable.c | ||
| libtipc.c | ||
| rpmb_proxy.c | ||
| util.c | ||
README.md
Queueless Trusty IPC
ql-tipc is a portable client library that implements Trusty queueless IPC. It is intended to enable Trusty IPC in bootloader environments.
Code organization
IPC components
- libtipc - Functions to be called by library user
- ipc - IPC library
- ipc_dev - Helper functions for sending requests to the secure OS
- rpmb_proxy - Handles RPMB requests from secure storage service
- avb - Sends requests to the Android Verified Boot service
Misc
- examples/ - Implementations of bootloader-specific code.
- arch/$ARCH/ - Architecture dependent implementation of Trusty device (see trusty_dev.h). Implements SMCs on ARM for example.
Portability Notes
The suggested approach to porting ql-tipc is to copy all header and C files into the bootloader and integrate as needed. RPMB storage operations and functions defined in trusty/sysdeps.h require system dependent implementations.
If the TIPC_ENABLE_DEBUG preprocessor symbol is set, the code will include debug information and run-time checks. Production builds should not use this.