![]() |
NVIDIA DRIVE OS Linux API Reference5.1.0.2 Release |
Trusted Little Kernel (TLK) services manifest layout.
Data Structures | |
struct | OTE_MANIFEST |
Holds the manifest structure. More... | |
Macros | |
#define | OTE_CONFIG_MIN_STACK_SIZE(sz) OTE_CONFIG_KEY_MIN_STACK_SIZE, sz |
Declares the minimum stack size. More... | |
#define | OTE_CONFIG_MIN_HEAP_SIZE(sz) OTE_CONFIG_KEY_MIN_HEAP_SIZE, sz |
Declares the minimum heap size. More... | |
#define | OTE_CONFIG_MAP_MEM(id, off, sz) OTE_CONFIG_KEY_MAP_MEM, id, off, sz |
Declares the memory address space needed. More... | |
#define | OTE_CONFIG_RESTRICT_ACCESS(clients) OTE_CONFIG_KEY_RESTRICT_ACCESS, clients |
Declares client types that have restricted access. More... | |
#define | OTE_CONFIG_AUTHORIZE(perm) OTE_CONFIG_KEY_AUTHORIZE, perm |
Declares special actions that a TA is authorized to perform. More... | |
#define | OTE_CONFIG_TASK_INITIAL_STATE(state) OTE_CONFIG_KEY_TASK_ISTATE, state |
Declares attributes for tasks, which apply beginning when the task is initially loaded. More... | |
#define | OTE_MANIFEST_ATTRS __attribute((aligned(4))) __attribute((section(".ote.manifest"))) |
Enumerations | |
enum | ote_config_key_t { OTE_CONFIG_KEY_MIN_STACK_SIZE = 1, OTE_CONFIG_KEY_MIN_HEAP_SIZE = 2, OTE_CONFIG_KEY_MAP_MEM = 3, OTE_CONFIG_KEY_RESTRICT_ACCESS = 4, OTE_CONFIG_KEY_AUTHORIZE = 5, OTE_CONFIG_KEY_TASK_ISTATE = 6 } |
enum | { OTE_RESTRICT_SECURE_TASKS = 1 << 0, OTE_RESTRICT_NON_SECURE_APPS = 1 << 1 } |
Defines bit flags for restricting task access by client type. More... | |
enum | { OTE_AUTHORIZE_INSTALL = 1 << 10 } |
Defines special actions that the task can be authorized to perform. More... | |
enum | { OTE_MANIFEST_TASK_ISTATE_IMMUTABLE = 1 << 0, OTE_MANIFEST_TASK_ISTATE_STICKY = 1 << 1, OTE_MANIFEST_TASK_ISTATE_BLOCKED = 1 << 2 } |
Defines bit flags that set attributes for the installed tasks. More... | |
#define OTE_CONFIG_AUTHORIZE | ( | perm | ) | OTE_CONFIG_KEY_AUTHORIZE, perm |
Declares special actions that a TA is authorized to perform.
[in] | perm | A bit field that authorizes special actions for the TA. |
Definition at line 145 of file ote_manifest.h.
#define OTE_CONFIG_MAP_MEM | ( | id, | |
off, | |||
sz | |||
) | OTE_CONFIG_KEY_MAP_MEM, id, off, sz |
Declares the memory address space needed.
Declares the physical memory address space the TLK service will require; a mapping will be created for TLK service.
[in] | id | An ID number to later retrieve the mapping. |
[in] | off | Base address of the physical address space. |
[in] | sz | The size of the physical address space. |
Definition at line 104 of file ote_manifest.h.
#define OTE_CONFIG_MIN_HEAP_SIZE | ( | sz | ) | OTE_CONFIG_KEY_MIN_HEAP_SIZE, sz |
Declares the minimum heap size.
Defines the minimum heap size the TLK service would expect.
[in] | sz | The size of the heap in bytes. |
Definition at line 92 of file ote_manifest.h.
#define OTE_CONFIG_MIN_STACK_SIZE | ( | sz | ) | OTE_CONFIG_KEY_MIN_STACK_SIZE, sz |
Declares the minimum stack size.
Defines the minimum stack size the TLK service would expect.
[in] | sz | The size of the stack in bytes. |
Definition at line 83 of file ote_manifest.h.
#define OTE_CONFIG_RESTRICT_ACCESS | ( | clients | ) | OTE_CONFIG_KEY_RESTRICT_ACCESS, clients |
Declares client types that have restricted access.
[in] | clients | A bit field to restrict access for client types. |
Definition at line 121 of file ote_manifest.h.
#define OTE_CONFIG_TASK_INITIAL_STATE | ( | state | ) | OTE_CONFIG_KEY_TASK_ISTATE, state |
Declares attributes for tasks, which apply beginning when the task is initially loaded.
[in] | state | A bitfield to set the initial state to blocked. |
Definition at line 172 of file ote_manifest.h.
#define OTE_MANIFEST_ATTRS __attribute((aligned(4))) __attribute((section(".ote.manifest"))) |
Definition at line 176 of file ote_manifest.h.
anonymous enum |
Defines bit flags for restricting task access by client type.
Use these bit flags with OTE_CONFIG_RESTRICT_ACCESS to restrict access for the type of client.
Enumerator | |
---|---|
OTE_RESTRICT_SECURE_TASKS | |
OTE_RESTRICT_NON_SECURE_APPS |
Definition at line 112 of file ote_manifest.h.
anonymous enum |
Defines special actions that the task can be authorized to perform.
These actions are used with the OTE_CONFIG_AUTHORIZE macro. By default, the TA is not authorized for any special actions.
Currently, this enum defines only the OTE_AUTHORIZE_INSTALL
bit. However, future releases may add support for other OTE_AUTHORIZE_*
values. If that happens, you would set the OTE_CONFIG_AUTHORIZE perm argument with a bit field derived by ORing together the relevant OTE_AUTHORIZE_*
values defined in this enum.
Enumerator | |
---|---|
OTE_AUTHORIZE_INSTALL |
Task is an installer. |
Definition at line 135 of file ote_manifest.h.
anonymous enum |
Defines bit flags that set attributes for the installed tasks.
These values are used with the OTE_CONFIG_TASK_INITIAL_STATE macro. By default all attributes are unset.
To set a task's initial state attributes on load, set the OTE_CONFIG_KEY_TASK_ISTATE state argument with a bit field derived by ORing together the relevant OTE_MANIFEST_TASK_ISTATE_*
values defined in this enum.
Definition at line 158 of file ote_manifest.h.
enum ote_config_key_t |
Enumerator | |
---|---|
OTE_CONFIG_KEY_MIN_STACK_SIZE | |
OTE_CONFIG_KEY_MIN_HEAP_SIZE | |
OTE_CONFIG_KEY_MAP_MEM | |
OTE_CONFIG_KEY_RESTRICT_ACCESS | |
OTE_CONFIG_KEY_AUTHORIZE | |
OTE_CONFIG_KEY_TASK_ISTATE |
Definition at line 68 of file ote_manifest.h.