Functions

Functions

int8_t fpb_enable (uint8_t index_start, uint8_t index_end)
 Enabling patch function. More...
 
int8_t fun_replace_by_svc (uint32_t ori_func, uint32_t rep_func, uint8_t patch_table_num)
 Replace old and new functions. More...
 
uint32_t SVC_handler_proc (uint32_t *svc_args)
 SVC handler process function. More...
 
void fpb_register_patch_init_func (fun_t patch_enable_func)
 Register FPB patch enable function. More...
 
void fpb_init (fpb_mode_t fpb_mode)
 FPB init function. More...
 
void svc_func_register (uint8_t svc_num, uint32_t func)
 svc sub-function register More...
 
void svc_table_register (uint32_t *p_svc_table)
 register svc table function More...
 
void svc_table_register_with_size (uint32_t *p_svc_table, uint16_t size)
 register svc table function More...
 
void fpb_register_user_space (uint32_t *user_fpb_space)
 register fpb space from user layer More...
 
int8_t fpb_var_replace (uint32_t var_addr, uint32_t value, uint8_t patch_table_num)
 Replace the old variable. More...
 

Detailed Description

Function Documentation

◆ fpb_enable()

int8_t fpb_enable ( uint8_t  index_start,
uint8_t  index_end 
)

Enabling patch function.

Parameters
[in]index_start: Start Index Number
[in]index_end: End Index Number
Return values
0Success
-1on failure

◆ fpb_init()

void fpb_init ( fpb_mode_t  fpb_mode)

FPB init function.

Parameters
[in]fpb_mode: the mode of FPB

◆ fpb_register_patch_init_func()

void fpb_register_patch_init_func ( fun_t  patch_enable_func)

Register FPB patch enable function.

Parameters
[in]patch_enable_func: pointer of function

◆ fpb_register_user_space()

void fpb_register_user_space ( uint32_t *  user_fpb_space)

register fpb space from user layer

Parameters
[in]user_fpb_space: the pointer of fpb user space

◆ fpb_var_replace()

int8_t fpb_var_replace ( uint32_t  var_addr,
uint32_t  value,
uint8_t  patch_table_num 
)

Replace the old variable.

Parameters
[in]var_addr: the address of old variable
[in]value: the new value
[in]patch_table_num: 0 or 1
Return values
0Success
-1Failure

◆ fun_replace_by_svc()

int8_t fun_replace_by_svc ( uint32_t  ori_func,
uint32_t  rep_func,
uint8_t  patch_table_num 
)

Replace old and new functions.

Parameters
[in]ori_func: primitive function address
[in]rep_func: replacement function address
[in]patch_table_num: group number
Return values
0Success
-1on failure

◆ svc_func_register()

void svc_func_register ( uint8_t  svc_num,
uint32_t  func 
)

svc sub-function register

Parameters
[in]svc_num: the number of svc
[in]func: sub-function callback

◆ SVC_handler_proc()

uint32_t SVC_handler_proc ( uint32_t *  svc_args)

SVC handler process function.

Parameters
[in]svc_argsSVC arguments

◆ svc_table_register()

void svc_table_register ( uint32_t *  p_svc_table)

register svc table function

Parameters
[in]p_svc_table: the pointer of svc table

◆ svc_table_register_with_size()

void svc_table_register_with_size ( uint32_t *  p_svc_table,
uint16_t  size 
)

register svc table function

Parameters
[in]p_svc_table: the pointer of svc table
[in]size: the size of svc table