2D Image Processing Library for Cortex-M Processors
All Data Structures Functions Variables Typedefs Enumerations Enumerator Modules Pages
1 Kernel

Data Structures

struct  arm_2d_runtime_feature_t
 a type for arm-2d runtime configuration More...
 
struct  arm_2d_version_t
 a type for arm-2d version More...
 

Macros

#define ARM_2D_VERSION_MAJOR   1
 Major version. More...
 
#define ARM_2D_VERSION_MINOR   0
 Minor version. More...
 
#define ARM_2D_VERSION_PATCH   0
 Patch number. More...
 
#define ARM_2D_VERSION_STR   "preview"
 tag More...
 
#define ARM_2D_VERISON
 arm-2d version number in decimal More...
 

Functions

void arm_2d_init (void)
 initialise arm-2d More...
 
arm_2d_tile_tarm_2d_set_default_frame_buffer (const arm_2d_tile_t *ptFrameBuffer)
 set the default frame buffer More...
 
arm_2d_tile_tarm_2d_get_default_frame_buffer (void)
 get the default frame buffer More...
 
void arm_2d_set_user_param (arm_2d_op_core_t *ptOP, uintptr_t pUserParam)
 attach a user param (which could be a pointer) to specified OP More...
 
bool arm_2d_op_wait_async (arm_2d_op_core_t *ptOP)
 wait asynchronous operation complete More...
 
arm_2d_op_status_t arm_2d_get_op_status (arm_2d_op_core_t *ptOP)
 get the status of a specified OP, More...
 
arm_fsm_rt_t arm_2d_task (arm_2d_task_t *ptTask)
 arm-2d pixel pipeline task entery More...
 

Variables

arm_2d_runtime_feature_t ARM_2D_RUNTIME_FEATURE
 arm-2d runtime feature configuration More...
 
const arm_2d_version_t ARM_2D_VERSION
 arm-2d version More...
 

Description


Data Structure Documentation

◆ arm_2d_runtime_feature_t

struct arm_2d_runtime_feature_t

a type for arm-2d runtime configuration

Data Fields
uint8_t TREAT_OUT_OF_RANGE_AS_COMPLETE: 1

if the target region is out of the target tile, return arm_fsm_rt_cpl

uint8_t HAS_DEDICATED_THREAD_FOR_2D_TASK: 1

indicate that there is a dedicated thread to run arm_2d_task() in RTOS env

◆ arm_2d_version_t

struct arm_2d_version_t

a type for arm-2d version

Data Fields
uint8_t Major major version
uint8_t Minor minor version
uint8_t Patch patch number

Macro Definition Documentation

◆ ARM_2D_VERSION_MAJOR

#define ARM_2D_VERSION_MAJOR   1

Major version.

◆ ARM_2D_VERSION_MINOR

#define ARM_2D_VERSION_MINOR   0

Minor version.

◆ ARM_2D_VERSION_PATCH

#define ARM_2D_VERSION_PATCH   0

Patch number.

◆ ARM_2D_VERSION_STR

#define ARM_2D_VERSION_STR   "preview"

tag

◆ ARM_2D_VERISON

#define ARM_2D_VERISON
Value:
( ARM_2D_VERSION_MAJOR * 10000ul \
ARM_2D_VERSION_PATCH)

arm-2d version number in decimal

Function Documentation

◆ arm_2d_init()

void arm_2d_init ( void  )

initialise arm-2d

◆ arm_2d_set_default_frame_buffer()

arm_2d_tile_t * arm_2d_set_default_frame_buffer ( const arm_2d_tile_t ptFrameBuffer)

set the default frame buffer

Parameters
ptFrameBufferthe new frame buffer,
Note
Passing NULL means using no default framebuffer
Returns
arm_2d_tile_t* the address of the old frame buffer

◆ arm_2d_get_default_frame_buffer()

arm_2d_tile_t * arm_2d_get_default_frame_buffer ( void  )

get the default frame buffer

Returns
arm_2d_tile_t* the address of the default frame buffer

◆ arm_2d_set_user_param()

void arm_2d_set_user_param ( arm_2d_op_core_t ptOP,
uintptr_t  pUserParam 
)

attach a user param (which could be a pointer) to specified OP

Parameters
ptOPthe address of the target OP (NULL means using the default OP)
pUserParama user parameter (it can be used as a pointer)

◆ arm_2d_op_wait_async()

bool arm_2d_op_wait_async ( arm_2d_op_core_t ptOP)

wait asynchronous operation complete

Parameters
[in]ptOPthe address of the target OP (NULL means using the default OP)
Return values
truesync up with operation
falseoperation is busy

◆ arm_2d_get_op_status()

arm_2d_op_status_t arm_2d_get_op_status ( arm_2d_op_core_t ptOP)

get the status of a specified OP,

usually, it is used after calling arm_2d_op_wait_async(). E.g.

//! wait for previous operation complete
do {
if (tStatus.bIOError) {
//! error detected
...
} else if (tStatus.bOpCpl) {
break;
}
} while(true);
Parameters
ptOPthe address of the target OP (NULL means using the default OP)
Returns
arm_2d_op_status_t the operation status

◆ arm_2d_task()

arm_fsm_rt_t arm_2d_task ( arm_2d_task_t ptTask)

arm-2d pixel pipeline task entery

Note
This function is TRHEAD-SAFE
Parameters
ptTaskthe address of an arm-2d task control block
Return values
arm_fsm_rt_cplThe sub-task FIFO is empty, the caller can wait for a semaphore set by arm_2d_notif_sub_task_fifo_task_arrive()
arm_fsm_rt_on_goingThe arm_2d_task yields
arm_fsm_rt_asyncYou shouldn't see this value
arm_fsm_rt_wait_for_objhardware accelerator wants to sync-up with applications.
(<0)Serious error is detected.

Variable Documentation

◆ ARM_2D_RUNTIME_FEATURE

arm_2d_runtime_feature_t ARM_2D_RUNTIME_FEATURE
extern

arm-2d runtime feature configuration

◆ ARM_2D_VERSION

const arm_2d_version_t ARM_2D_VERSION
extern

arm-2d version