TIOVX User Guide

Detailed Description

Internal APIs for platform operations.

Defines

#define ASSERT_CONCAT_(a, b)   a##b
 Macros for build time check.
 

Enumerations

enum  tivx_platform_lock_type_e {
  TIVX_PLATFORM_LOCK_OBJ_DESC_TABLE = 0,
  TIVX_PLATFORM_LOCK_CONTEXT,
  TIVX_PLATFORM_LOCK_DATA_REF_QUEUE,
  TIVX_PLATFORM_LOCK_LOG_RT_INDEX,
  TIVX_PLATFORM_LOCK_LOG_RT,
  TIVX_PLATFORM_LOCK_MAX
}
 Types of system level locks. More...
 

Functions

vx_enum ownPlatformGetTargetId (const char *target_name)
 Convert a target name to a specific target ID. More...
 
void ownPlatformGetTargetName (vx_enum target_id, char *target_name)
 Convert a specific target ID to a target name. More...
 
vx_bool ownPlatformTargetMatch (const char *kernel_target_name, const char *target_string)
 Match a user specified target_string with kernel suported target name. More...
 
void ownPlatformGetObjDescTableInfo (tivx_obj_desc_table_info_t *table_info)
 Return shared memory info which holds the object descriptors. More...
 
void ownPlatformGetLogRtShmInfo (void **shm_base, uint32_t *shm_size)
 Return shared memory info which holds the run-time logger buffer. More...
 
void ownPlatformSystemLock (vx_enum lock_id)
 Take a system level lock. More...
 
void ownPlatformSystemUnlock (vx_enum lock_id)
 Release system level lock.
 
vx_status ownPlatformInit (void)
 Init Platform module.
 
void ownPlatformDeInit (void)
 DeInit Platform module.
 
void ownPlatformPrintf (const char *format)
 Print given string.
 
void ownPlatformCreateTargets (void)
 Function to set the target configuration. More...
 
void ownPlatformDeleteTargets (void)
 Function to destroy created targets.
 
void ownPlatformActivate (void)
 Utility function to enable Platform specific things Currently Used for EVE algorithm to enable EDMA.
 
void ownPlatformDeactivate (void)
 Utility function to disable Platform specific things Currently Used for EVE algorithm to disable EDMA.
 
void ownPlatformTaskInit (void)
 Utility function to call OS-specific task init functions.
 

Enumeration Type Documentation

◆ tivx_platform_lock_type_e

Types of system level locks.

Enumerator
TIVX_PLATFORM_LOCK_OBJ_DESC_TABLE 

Lock the shared object descriptor table.

TIVX_PLATFORM_LOCK_CONTEXT 

Lock the context during context create and delete.

TIVX_PLATFORM_LOCK_DATA_REF_QUEUE 

Lock the data reference queue during enqueue and dequeue.

TIVX_PLATFORM_LOCK_LOG_RT_INDEX 

Lock the index information of run-time logger.

TIVX_PLATFORM_LOCK_LOG_RT 

Lock the run-time logger.

TIVX_PLATFORM_LOCK_MAX 

Max number of locks.

Definition at line 85 of file tivx_platform.h.

Function Documentation

◆ ownPlatformGetTargetId()

vx_enum ownPlatformGetTargetId ( const char *  target_name)

Convert a target name to a specific target ID.

Parameters
target_name[in] Target name
Returns
target ID

◆ ownPlatformGetTargetName()

void ownPlatformGetTargetName ( vx_enum  target_id,
char *  target_name 
)

Convert a specific target ID to a target name.

Parameters
target_id[in] Target ID
target_name[out] Target name

◆ ownPlatformTargetMatch()

vx_bool ownPlatformTargetMatch ( const char *  kernel_target_name,
const char *  target_string 
)

Match a user specified target_string with kernel suported target name.

Parameters
kernel_target_name[in] Kernel supported target name
target_string[in] user specified target string
Returns
vx_true_e if match found, else vx_false_e

◆ ownPlatformGetObjDescTableInfo()

void ownPlatformGetObjDescTableInfo ( tivx_obj_desc_table_info_t table_info)

Return shared memory info which holds the object descriptors.

This is platform APIs since method of specifying shared memory, number of object descriptors is platform dependant

◆ ownPlatformGetLogRtShmInfo()

void ownPlatformGetLogRtShmInfo ( void **  shm_base,
uint32_t *  shm_size 
)

Return shared memory info which holds the run-time logger buffer.

This is platform APIs since method of specifying shared memory, is platform dependant

◆ ownPlatformSystemLock()

void ownPlatformSystemLock ( vx_enum  lock_id)

Take a system level lock.

This locks is taken across all targets to mutual exclusion across targets

◆ ownPlatformCreateTargets()

void ownPlatformCreateTargets ( void  )

Function to set the target configuration.

It creates target and adds it to the list of targets supported on each core.