1 /* 2 * Copyright (c) 2022 HiSilicon (Shanghai) Technologies CO., LIMITED. 3 * Licensed under the Apache License, Version 2.0 (the "License"); 4 * you may not use this file except in compliance with the License. 5 * You may obtain a copy of the License at 6 * 7 * http://www.apache.org/licenses/LICENSE-2.0 8 * 9 * Unless required by applicable law or agreed to in writing, software 10 * distributed under the License is distributed on an "AS IS" BASIS, 11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 * See the License for the specific language governing permissions and 13 * limitations under the License. 14 */ 15 16 #ifndef __HI_ISP_DEFINES_H__ 17 #define __HI_ISP_DEFINES_H__ 18 19 #ifdef __cplusplus 20 #if __cplusplus 21 extern "C" { 22 #endif 23 #endif /* End of #ifdef __cplusplus */ 24 25 /* isp sys part */ 26 #define ISP_STRIPING_MAX_NUM 3 27 #define ISP_NORMAL_BLOCK_NUM 1 28 #define ISP_DEFAULT_BLOCK_NUM 2 29 #define ISP_SBS_BLOCK_NUM 2 30 31 #define ISP_BE0_PIPE_ID 0 32 #define ISP_BE1_PIPE_ID 8 33 #define ISP_MAX_BE_NUM 1 34 #define ISP_MAX_STITCH_NUM 1 35 36 #define ISP_MAX_PHY_PIPE_NUM 4 37 #define ISP_MAX_VIR_PIPE_NUM 1 38 #define ISP_MAX_PIPE_NUM (ISP_MAX_PHY_PIPE_NUM + ISP_MAX_VIR_PIPE_NUM) 39 40 #define ISP_STRIPING_OVERLAP_DEFAULT 256 41 42 #define ISP_WDR_CHN_MAX 4 43 #define ISP_SUPPORT_DE_MODULE 1 44 45 #define SENSOR_RES_WIDTH_MAX 4608 46 #define SENSOR_RES_HEIGHT_MAX 4608 47 #define ISP_RES_WIDTH_MAX 4608, 3840, 2048, 2048 /* need change when pipe num is change */ 48 #define ISP_RES_HEIGHT_MAX 4608, 3840, 2048, 2048 /* need change when pipe num is change */ 49 50 /* isp alg part */ 51 #define HI_ISP_CLUT_LUT_LENGTH 5508 52 #define HI_ISP_CA_YRATIO_LUT_LENGTH 128 53 54 #define STATIC_DP_COUNT_NORMAL 2048 55 #define STATIC_DP_COUNT_MAX (STATIC_DP_COUNT_NORMAL * ISP_STRIPING_MAX_NUM) 56 #define ISP_SUPPORT_OFFLINE_DPC_CALIBRATION 1 57 #define ISP_DPC_SET_NUM 3 58 #define ISP_DPC_LCH_SET_NUM 5 59 #define ISP_DPC_MAX_CHN_NUM 4 60 61 #define HI_ISP_SPECAWB_FACT_ELEMENT_LUT0 4096 62 #define HI_ISP_SPECAWB_FACT_ELEMENT_LUT1 4096 63 #define HI_ISP_SPECAWB_FACT_ELEMENT_LUT2 4096 64 #define HI_ISP_SPECAWB_FACT_ELEMENT_LUT3 4096 65 #define HI_ISP_SPECAWB_FACT_ELEMENT_LUT4 4096 66 #define HI_ISP_SPECAWB_FACT_ELEMENT_LUT5 4096 67 #define HI_ISP_SPECAWB_FACT_ELEMENT_LUT6 4096 68 #define HI_ISP_SPECAWB_WB_CNVTBL_LUT 16384 69 #define HI_ISP_SPECAWB_KELDBB_LUT 16384 70 #define HI_ISP_SPECAWB_BBL_LUT 240 71 #define HI_ISP_SPECAWB_CAA_LUT1 16384 72 #define HI_ISP_SPECAWB_CAA_LUT2 16384 73 #define HI_ISP_SPECAWB_CAA_LUT3 16384 74 #define ISP_SPECAWB_BUF_SIZE 110832 75 76 #define AWB_ZONE_BIN 1 77 #define AWB_LIB_NUM (ISP_MAX_PIPE_NUM) 78 #define AE_LIB_NUM (ISP_MAX_PIPE_NUM) 79 80 #define HI_ISP_SHARPEN_RGAIN 31 81 #define HI_ISP_SHARPEN_RGAIN_MAX 31 82 #define HI_ISP_SHARPEN_RGAIN_BIT 31 83 #define HI_ISP_SHARPEN_GGAIN 32 84 #define HI_ISP_SHARPEN_GGAIN_MAX 255 85 #define HI_ISP_SHARPEN_GGAIN_BIT 255 86 #define HI_ISP_SHARPEN_BGAIN 31 87 #define HI_ISP_SHARPEN_BGAIN_MAX 31 88 #define HI_ISP_SHARPEN_BGAIN_BIT 31 89 #define HI_ISP_SHARPEN_LUMAWGT_MAX 127 90 #define HI_ISP_SHARPEN_LUMAWGT 127 91 #define HI_ISP_SHARPEN_LUMAWGT_BIT 127 92 #define HI_ISP_SHARPEN_EdgeFiltMaxCap 18 93 #define HI_ISP_SHARPEN_EdgeFiltMaxCap_MAX 47 94 #define HI_ISP_SHARPEN_EdgeFiltMaxCap_BIT 63 95 96 #define GAMMA_REG_NODE_NUM 257 97 #define GAMMA_OUTSEG_NUM 8 98 99 #define HI_ISP_DRC_STRENGTH_MAX 1023 100 #define HI_ISP_DRC_SPA_FLT_COEF_MAX 5 101 102 #define HI_ISP_DEMOSAIC_DETAIL_SMOOTH_RANGE_MAX 7 103 #define HI_ISP_DEMOSAIC_DETAIL_SMOOTH_RANGE_MIN 1 104 #define HI_ISP_DEMOSAIC_NONDIR_MFDETALEHC_STR_MAX 127 105 #define HI_ISP_DEMOSAIC_COLOR_NOISE_THDY_MAX 255 106 #define HI_ISP_DEMOSAIC_COLOR_NOISE_STRY_MAX 255 107 108 #define HI_ISP_LDCI_HEPOSWGT_MAX 255 109 #define HI_ISP_LDCI_HENEGWGT_MAX 255 110 111 #define HI_ISP_PREGAMMA_LUT_MAX 0xFFFFF 112 #define HI_ISP_PREGAMMA_SEG_NUM 8 113 114 #define EXPANDER_NODE_NUM 257 115 116 #define DEFOG_ZONE_ROW 32 117 #define DEFOG_ZONE_COLUMN 32 118 #define DEFOG_ZONE_NUM 1024 119 #define DEFOG_MAX_ZONE_NUM 1024 120 #define DEFOG_LUT_NUM 256 121 #define DEFOG_REG_NUM 2 122 #define HI_ISP_GE_MAX_CHN_NUM 4 123 #define HI_ISP_FPN_CHN_NUM 4 124 125 #define HI_ISP_LSC_MESHSTR_MAX 65535 126 #define HI_ISP_LSC_DEFAULT_MESH_STRENGTH 4096 127 #define HI_ISP_LSC_DEFAULT_WEIGHT 256 128 #define HI_ISP_LSC_GRID_COL 33 129 #define HI_ISP_LSC_GRID_ROW 33 130 #define HI_ISP_LSC_GRID_POINTS (HI_ISP_LSC_GRID_COL * HI_ISP_LSC_GRID_ROW) 131 #define HI_ISP_LSC_DEFAULT_MESH_SCALE 3 132 #define hi_isp_lsc_xgrid_width_max(x) ((x) / 4 - 60) 133 #define hi_isp_lsc_ygrid_width_max(x) ((x) / 4 - 60) 134 #define HI_ISP_LSC_MESHSCALE_NUM 8 135 #define HI_ISP_LSC_MESHSCALE0_DEF_GAIN 512 136 #define HI_ISP_LSC_MESHSCALE1_DEF_GAIN 256 137 #define HI_ISP_LSC_MESHSCALE2_DEF_GAIN 128 138 #define HI_ISP_LSC_MESHSCALE3_DEF_GAIN 64 139 #define HI_ISP_LSC_MAX_GAIN 1023 140 #define HI_ISP_LSC_GAIN_BITWIDTH 10 141 142 #define AF_GAMMA_VALUE_MAX 6 143 #define HI_EXT_SYSTEM_MANUAL_DEHAZE_HBLK_DEFAULT 32 144 #define HI_EXT_SYSTEM_MANUAL_DEHAZE_VBLK_DEFAULT 32 145 146 #define HI_ISP_CR_SLOPE_MAX 14 147 #define HI_ISP_CR_THR_MAX 16383 148 #define HI_ISP_CR_NPOFFSET_MAX 16383 149 #define HI_ISP_CR_NPOFFSET_MIN 512 150 151 #define HI_ISP_FE_AF_SUPPORT 0 152 #define HI_ISP_BE_AF_SUPPORT 1 153 #define HI_ISP_AF_ENABLE_MASK ((HI_ISP_BE_AF_SUPPORT << 1) + HI_ISP_FE_AF_SUPPORT) 154 155 #ifdef __cplusplus 156 #if __cplusplus 157 } 158 #endif 159 #endif /* End of #ifdef __cplusplus */ 160 161 #endif /* __HI_ISP_DEFINES_H__ */ 162