186 lines
		
	
	
		
			4.4 KiB
		
	
	
	
		
			C
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			186 lines
		
	
	
		
			4.4 KiB
		
	
	
	
		
			C
		
	
	
		
			Executable File
		
	
	
	
	
| #ifndef _AFT_API_H_
 | |
| #define _AFT_API_H_
 | |
| 
 | |
| #if defined(__KERNEL__) || defined(__FREERTOS)
 | |
| #include "af_alg.h"
 | |
| #include "af_ui.h"
 | |
| #endif
 | |
| 
 | |
| #define AF_CFG_NAME_LENGTH     256
 | |
| #define AF_DTSI_NAME_LENGTH    256
 | |
| 
 | |
| /**
 | |
| 	AF tuning item
 | |
| */
 | |
| typedef enum _AFT_ITEM {
 | |
| 	AFT_ITEM_VERSION             = 0,///< data_type: [Get]     UINT32
 | |
| 	AFT_ITEM_SIZE_TAB,               ///< data_type: [Get]     AFT_INFO
 | |
| 	AFT_ITEM_RLD_CONFIG,             ///< data_type: [Set]     AFT_CFG_INFO
 | |
| 	AFT_ITEM_RLD_DTSI,
 | |
| 	AFT_ITEM_RESERVE_04,
 | |
| 	AFT_ITEM_RESERVE_05,
 | |
| 	AFT_ITEM_RESERVE_06,
 | |
| 	AFT_ITEM_RESERVE_07,
 | |
| 	AFT_ITEM_RESERVE_08,
 | |
| 	AFT_ITEM_RESERVE_09,
 | |
| 	// NOTE: Start of vendor API usage
 | |
| 	AFT_ITEM_OPERATION,              ///< data_type: [Set/Get] AFT_OPERATION
 | |
| 	AFT_ITEM_RESERVE_11,
 | |
| 	AFT_ITEM_RESERVE_12,
 | |
| 	AFT_ITEM_RESERVE_13,
 | |
| 	AFT_ITEM_RESERVE_14,
 | |
| 	AFT_ITEM_RESERVE_15,
 | |
| 	AFT_ITEM_RESERVE_16,
 | |
| 	AFT_ITEM_RESERVE_17,
 | |
| 	AFT_ITEM_RESERVE_18,
 | |
| 	AFT_ITEM_RESERVE_19,
 | |
| 	AFT_ITEM_RESERVE_20,
 | |
| 	AFT_ITEM_RESERVE_21,
 | |
| 	AFT_ITEM_RESERVE_22,
 | |
| 	AFT_ITEM_RESERVE_23,
 | |
| 	AFT_ITEM_RESERVE_24,
 | |
| 	AFT_ITEM_RESERVE_25,
 | |
| 	AFT_ITEM_RESERVE_26,
 | |
| 	AFT_ITEM_RESERVE_27,
 | |
| 	AFT_ITEM_RESERVE_28,
 | |
| 	AFT_ITEM_RESERVE_29,
 | |
| 	AFT_ITEM_RESERVE_30,
 | |
| 	// NOTE: End of vendor API usage
 | |
| 	AFT_ITEM_ENABLE             = 31,///< data_type: [Set/Get] AFT_ENABLE
 | |
| 	AFT_ITEM_ALG_METHOD,             ///< data_type: [Set/Get] AFT_ALG_METHOD
 | |
| 	AFT_ITEM_SHOT_MODE,              ///< data_type: [Set/Get] AFT_SHOT_MODE
 | |
| 	AFT_ITEM_SEARCH_DIR,             ///< data_type: [Set/Get] AFT_SEARCH_DIR
 | |
| 	AFT_ITEM_SKIP_FRAME,        // 35,///< data_type: [Set/Get] AFT_SKIP_FRAME
 | |
| 	AFT_ITEM_THRES,                  ///< data_type: [Set/Get] AFT_THRES
 | |
| 	AFT_ITEM_STEP_SIZE,              ///< data_type: [Set/Get] AFT_STEP_SIZE
 | |
| 	AFT_ITEM_MAX_COUNT,              ///< data_type: [Set/Get] AFT_MAX_COUNT
 | |
| 	AFT_ITEM_WIN_WEIGHT,             ///< data_type: [Set/Get] AFT_WIN_WEIGHT
 | |
| 	AFT_ITEM_VA_STA,            // 40,///< data_type: [Get] AFT_VA_STA
 | |
| 	AFT_ITEM_RETRIGGER,              ///< data_type: [Set] AFT_RETRIGGER
 | |
| 	AFT_ITEM_DBG_MSG,                ///< data_type: [Set/Get] AFT_DBG_MSG
 | |
| 	AFT_ITEM_EXEC_STATUS,            ///< data_type: [Get] AFT_EXEC_STS
 | |
| 	AFT_ITEM_SEN_RESOLUTION,         ///< data_type: [Get] AFT_SEN_RESO
 | |
| 	AFT_ITEM_NIGHT_MODE,        // 45,///< data_type: [Get] AFT_NIGHT_MODE
 | |
| 	AFT_ITEM_ALG_CMD,                ///< data_type: [Set/Get] AFT_ALG_CMD
 | |
| 	AFT_ITEM_VA_OPT,                 ///< data_type: [Set/Get] AFT_VA_OPT
 | |
| 	AFT_ITEM_BACKLASH_COMP,			///< data_type: [Set/Get] AFT_BACKLASH_COMP
 | |
| 	AFT_ITEM_RESERVE_49,
 | |
| 	AFT_ITEM_MAX                = 50,
 | |
| 	ENUM_DUMMY4WORD(AFT_ITEM)
 | |
| } AFT_ITEM;
 | |
| 
 | |
| typedef struct AFT_INFO {
 | |
| 	UINT32 size_tab[AFT_ITEM_MAX][2];
 | |
| } AFT_INFO;
 | |
| 
 | |
| typedef struct _AFT_CFG_INFO {
 | |
| 	AF_ID id;
 | |
| 	CHAR path[AF_CFG_NAME_LENGTH];
 | |
| } AFT_CFG_INFO;
 | |
| 
 | |
| typedef struct _AFT_DTSI_INFO {
 | |
| 	AF_ID id;
 | |
| 	CHAR node_path[AF_DTSI_NAME_LENGTH];
 | |
| 	CHAR file_path[AF_DTSI_NAME_LENGTH];
 | |
| 	UINT8 *buf_addr;
 | |
| } AFT_DTSI_INFO;
 | |
| 
 | |
| typedef struct _AFT_OPERATION {
 | |
| 	UINT32 id;
 | |
| 	AF_OPERATION operation;
 | |
| } AFT_OPERATION;
 | |
| 
 | |
| typedef struct _AFT_ENABLE {
 | |
| 	AF_ID id;
 | |
| 	BOOL func_en;
 | |
| } AFT_ENABLE;
 | |
| 
 | |
| typedef struct _AFT_ALG_METHOD {
 | |
| 	AF_ID id;
 | |
| 	AF_ALG_METHOD alg_method;
 | |
| } AFT_ALG_METHOD;
 | |
| 
 | |
| typedef struct _AFT_SHOT_MODE {
 | |
| 	AF_ID id;
 | |
| 	AF_SHOT_MODE shot_mode;
 | |
| } AFT_SHOT_MODE;
 | |
| 
 | |
| typedef struct _AFT_SEARCH_DIR {
 | |
| 	AF_ID id;
 | |
| 	AF_SEARCH_DIR search_dir;
 | |
| } AFT_SEARCH_DIR;
 | |
| 
 | |
| typedef struct _AFT_SKIP_FRAME {
 | |
| 	AF_ID id;
 | |
| 	UINT32 skip_frame;
 | |
| } AFT_SKIP_FRAME;
 | |
| 
 | |
| typedef struct _AFT_THRES {
 | |
| 	AF_ID id;
 | |
| 	AF_THRES thres;
 | |
| } AFT_THRES;
 | |
| 
 | |
| typedef struct _AFT_STEP_SIZE {
 | |
| 	AF_ID id;
 | |
| 	AF_STEP_SIZE step_size;
 | |
| } AFT_STEP_SIZE;
 | |
| 
 | |
| typedef struct _AFT_MAX_COUNT {
 | |
| 	AF_ID id;
 | |
| 	UINT32 max_count;
 | |
| } AFT_MAX_COUNT;
 | |
| 
 | |
| typedef struct _AFT_WIN_WEIGHT {
 | |
| 	AF_ID id;
 | |
| 	AF_WIN_WEIGHT win_weight;
 | |
| } AFT_WIN_WEIGHT;
 | |
| 
 | |
| typedef struct _AFT_VA_STA {
 | |
| 	AF_ID id;
 | |
| 	AF_VA_STA va_sta;
 | |
| } AFT_VA_STA;
 | |
| 
 | |
| typedef struct _AFT_RETRIGGER {
 | |
| 	AF_ID id;
 | |
| 	BOOL retrigger;
 | |
| } AFT_RETRIGGER;
 | |
| 
 | |
| typedef struct _AFT_DBG_MSG {
 | |
| 	AF_ID id;
 | |
| 	AF_DBG_MSG dbg_msg;
 | |
| } AFT_DBG_MSG;
 | |
| 
 | |
| typedef struct _AFT_EXEC_STS {
 | |
| 	AF_ID id;
 | |
| 	AFALG_STATUS_RESULT exec_rslt;
 | |
| 	UINT32 reserve[3];
 | |
| } AFT_EXEC_STS;
 | |
| 
 | |
| typedef struct _AFT_SEN_RESO {
 | |
| 	AF_ID id;
 | |
| 	UINT32 sen_reso;
 | |
| } AFT_SEN_RESO;
 | |
| 
 | |
| typedef struct _AFT_NIGHT_MODE {
 | |
| 	AF_ID id;
 | |
| 	BOOL night_mode;
 | |
| } AFT_NIGHT_MODE;
 | |
| 
 | |
| typedef struct _AFT_ALG_CMD {
 | |
| 	AF_ID id;
 | |
| 	AFALG_CMD cmd;
 | |
| } AFT_ALG_CMD;
 | |
| 
 | |
| typedef struct _AFT_VA_OPT {
 | |
| 	AF_ID id;
 | |
| 	AF_VA_OPT opt;
 | |
| } AFT_VA_OPT;
 | |
| 
 | |
| typedef struct _AFT_BACKLASH_COMP {
 | |
| 	AF_ID id;
 | |
| 	BOOL enable;
 | |
| } AFT_BACKLASH_COMP;
 | |
| 
 | |
| #endif
 | |
| 
 | 
