firmware/br-ext-chip-hisilicon/package/hisilicon-osdrv4/files/include/hi_isp_defines.h

185 lines
7.5 KiB
C

/******************************************************************************
Copyright (C), 2016, Hisilicon Tech. Co., Ltd.
******************************************************************************
File Name : hi_isp_defines.h
Version : Initial Draft
Author : Hisilicon multimedia software group
Created : 2013/11/07
Description :
History :
1.Date : 2013/11/07
Author :
Modification: Created file
******************************************************************************/
#ifndef __HI_ISP_DEFINES_H__
#define __HI_ISP_DEFINES_H__
#ifdef __cplusplus
#if __cplusplus
extern "C" {
#endif
#endif /* End of #ifdef __cplusplus */
/* isp sys part */
#define ISP_STRIPING_MAX_NUM (2)
#define ISP_NORMAL_BLOCK_NUM (1)
#define ISP_DEFAULT_BLOCK_NUM (2)
#define ISP_SBS_BLOCK_NUM (2)
#define ISP_BE0_PIPE_ID (0)
#define ISP_BE1_PIPE_ID (8)
#define ISP_MAX_BE_NUM (1)
#define ISP_MAX_STITCH_NUM (1)
#define ISP_MAX_PHY_PIPE_NUM (2)
#define ISP_MAX_VIR_PIPE_NUM (0)
#define ISP_MAX_PIPE_NUM (ISP_MAX_PHY_PIPE_NUM + ISP_MAX_VIR_PIPE_NUM)
#define ISP_STRIPING_OVERLAP_DEFAULT (256)
#define ISP_WDR_CHN_MAX (2)
#define ISP_SUPPORT_DE_MODULE (1)
#define SENSOR_RES_WIDTH_MAX 3072
#define SENSOR_RES_HEIGHT_MAX 3072
#define ISP_RES_WIDTH_MAX 3072,3072 // need change when pipe num is change
#define ISP_RES_HEIGHT_MAX 3072,3072 // need change when pipe num is change
extern HI_U16 g_au16ResWMax[ISP_MAX_PIPE_NUM];
extern HI_U16 g_au16ResHMax[ISP_MAX_PIPE_NUM];
/* isp alg part */
#define HI_ISP_CLUT_LUT_LENGTH (5508)
#define HI_ISP_CA_YRATIO_LUT_LENGTH (128)
#define STATIC_DP_COUNT_NORMAL (2048)
#define STATIC_DP_COUNT_MAX (STATIC_DP_COUNT_NORMAL * ISP_STRIPING_MAX_NUM)
#define ISP_SUPPORT_OFFLINE_DPC_CALIBRATION (1)
#define HI_ISP_SPECAWB_FACT_ELEMENT_LUT0 (4096)
#define HI_ISP_SPECAWB_FACT_ELEMENT_LUT1 (4096)
#define HI_ISP_SPECAWB_FACT_ELEMENT_LUT2 (4096)
#define HI_ISP_SPECAWB_FACT_ELEMENT_LUT3 (4096)
#define HI_ISP_SPECAWB_FACT_ELEMENT_LUT4 (4096)
#define HI_ISP_SPECAWB_FACT_ELEMENT_LUT5 (4096)
#define HI_ISP_SPECAWB_FACT_ELEMENT_LUT6 (4096)
#define HI_ISP_SPECAWB_WB_CNVTBL_LUT (16384)
#define HI_ISP_SPECAWB_KELDBB_LUT (16384)
#define HI_ISP_SPECAWB_BBL_LUT (240)
#define HI_ISP_SPECAWB_CAA_LUT1 (16384)
#define HI_ISP_SPECAWB_CAA_LUT2 (16384)
#define HI_ISP_SPECAWB_CAA_LUT3 (16384)
#define ISP_SPECAWB_BUF_SIZE (110832)
#define AWB_ZONE_BIN (1)
#define AWB_LIB_NUM (ISP_MAX_PHY_PIPE_NUM)
#define AE_LIB_NUM (ISP_MAX_PHY_PIPE_NUM)
#define HI_ISP_SHARPEN_RGAIN (31)
#define HI_ISP_SHARPEN_RGAIN_MAX (31)
#define HI_ISP_SHARPEN_RGAIN_BIT (31)
#define HI_ISP_SHARPEN_GGAIN (32)
#define HI_ISP_SHARPEN_GGAIN_MAX (255)
#define HI_ISP_SHARPEN_GGAIN_BIT (255)
#define HI_ISP_SHARPEN_BGAIN (31)
#define HI_ISP_SHARPEN_BGAIN_MAX (31)
#define HI_ISP_SHARPEN_BGAIN_BIT (31)
#define HI_ISP_SHARPEN_LUMAWGT (31)
#define HI_ISP_SHARPEN_LUMAWGT_MAX (31)
#define HI_ISP_SHARPEN_LUMAWGT_BIT (31)
#define HI_ISP_SHARPEN_EdgeFiltMaxCap (18)
#define HI_ISP_SHARPEN_EdgeFiltMaxCap_MAX (47)
#define HI_ISP_SHARPEN_EdgeFiltMaxCap_BIT (63)
#define GAMMA_REG_NODE_NUM (257)
#define GAMMA_OUTSEG_NUM (8)
#define HI_ISP_DRC_STRENGTH_MAX (1023)
#define HI_ISP_DRC_SPA_FLT_COEF_MAX (5)
#define HI_ISP_DEMOSAIC_DETAIL_SMOOTH_RANGE_MAX (7)
#define HI_ISP_DEMOSAIC_DETAIL_SMOOTH_RANGE_MIN (1)
#define HI_ISP_DEMOSAIC_NONDIR_MFDETALEHC_STR_MAX (127)
#define HI_ISP_LDCI_HEPOSWGT_MAX (255)
#define HI_ISP_LDCI_HENEGWGT_MAX (255)
#define HI_ISP_PREGAMMA_LUT_MAX (0xFFFFF)
#define EXPANDER_NODE_NUM (129)
#define HI_ISP_CR_SLOPE_MAX (16)
#define HI_ISP_CR_THR_MAX (65535)
#define HI_ISP_CR_NPOFFSET_MAX (65535)
#define HI_ISP_CR_NPOFFSET_MIN (8192)
#define HI_ISP_LSC_MESHSTR_MAX (1023)
#define HI_ISP_LSC_DEFAULT_MESH_STRENGTH (256)
#define HI_ISP_LSC_DEFAULT_WEIGHT (256)
#define HI_ISP_LSC_GRID_COL (17)
#define HI_ISP_LSC_GRID_ROW (17)
#define HI_ISP_LSC_GRID_POINTS (HI_ISP_LSC_GRID_COL * HI_ISP_LSC_GRID_ROW)
#define HI_ISP_LSC_DEFAULT_MESH_SCALE (4) // 0.10bit
#define HI_ISP_LSC_XGRID_WIDTH_MAX(x) (255)
#define HI_ISP_LSC_YGRID_WIDTH_MAX(x) (255)
#define DEFOG_ZONE_ROW (24)
#define DEFOG_ZONE_COLUMN (16)
#define DEFOG_ZONE_NUM (384)
#define DEFOG_MAX_ZONE_NUM (384)
#define HI_ISP_CCM_RECOVER_EN_DEFAULT (1)
#define HI_ISP_CCM_LUMA_COEFR_DEFAULT (8)
#define HI_ISP_CCM_LUMA_COEFB_DEFAULT (4)
#define HI_ISP_CCM_DARKPREV_DEFAULT (14)
#define HI_ISP_CCM_LUMA_COEFR_UP_DEFAULT (10)
#define HI_ISP_CCM_LUMA_COEFB_UP_DEFAULT (10)
#define HI_ISP_CCM_SOFT_CLIP0_STEP_DEFAULT (10)
#define HI_ISP_CCM_SOFT_CLIP1_STEP_DEFAULT (14)
#define HI_ISP_CCM_PEAKSUPP_SAT_DEFAULT (110)
#define HI_ISP_CCM_PEAKSUPP_MAX_DEFAULT (255)
#define HI_ISP_CCM_DARK_RANGE_MAX (15)
#define HI_ISP_BAYERNR_LUT_EVEN_LENGTH (17)
#define HI_ISP_BAYERNR_LUT_ODD_LENGTH (16)
#define HI_ISP_BAYERNR_LMTLUT_EVEN_NUM (65)
#define HI_ISP_BAYERNR_LMTLUT_ODD_NUM (64)
#define HI_ISP_BAYERNR_WINDOW_SIZE_SEL_DEFAULT (4)
#define HI_ISP_BAYERNR_PATTERN_NOISE_REDUCTION_DEFAULT (1)
#define HI_ISP_BAYERNR_GAIN_SAD_DEFAULT (0x40)
#define HI_ISP_BAYERNR_IMPLS_NR_ENABLE1_DEFAULT (1 )
#define HI_ISP_BAYERNR_IMPLS_NR_ENABLE2_DEFAULT (1 )
#define HI_ISP_BAYERNR_IMPLS_NR_ENABLE3_DEFAULT (1 )
#define HI_ISP_BAYERNR_IMPLS_NR_STRENGTH_DEFAULT (0x20)
#define HI_ISP_BAYERNR_SYMMSAD_DEFAULT (1)
#define HI_ISP_BAYERNR_ENABLE_POST_PROC_DEFAULT (3)
#define HI_ISP_BAYERNR_BILATERAL_ENABLE_DEFAULT (2)
#define HI_ISP_BAYERNR_NLIMIT_GAIN_BLT_DEFAULT (200)
#define AF_GAMMA_VALUE_MAX (1)
#define HI_EXT_SYSTEM_MANUAL_DEHAZE_HBLK_DEFAULT (24)
#define HI_EXT_SYSTEM_MANUAL_DEHAZE_VBLK_DEFAULT (16)
#define HI_ISP_FE_AF_SUPPORT 0
#define HI_ISP_BE_AF_SUPPORT 1
#define HI_ISP_AF_ENABLE_MASK ((HI_ISP_BE_AF_SUPPORT << 1) + HI_ISP_FE_AF_SUPPORT)
// #define HI_ISP_CCM_RECOVER_EN_DEFAULT (0x1)
#ifdef __cplusplus
#if __cplusplus
}
#endif
#endif /* End of #ifdef __cplusplus */
#endif /* __HI_ISP_DEFINES_H__ */