0001
0002
0003
0004
0005
0006
0007
0008 #ifndef __CCS_LIMITS_H__
0009 #define __CCS_LIMITS_H__
0010
0011 #include <linux/bits.h>
0012 #include <linux/types.h>
0013
0014 struct ccs_limit {
0015 u32 reg;
0016 u16 size;
0017 u16 flags;
0018 const char *name;
0019 };
0020
0021 #define CCS_L_FL_SAME_REG BIT(0)
0022
0023 extern const struct ccs_limit ccs_limits[];
0024
0025 #define CCS_L_FRAME_FORMAT_MODEL_TYPE 0
0026 #define CCS_L_FRAME_FORMAT_MODEL_SUBTYPE 1
0027 #define CCS_L_FRAME_FORMAT_DESCRIPTOR 2
0028 #define CCS_L_FRAME_FORMAT_DESCRIPTOR_OFFSET(n) ((n) * 2)
0029 #define CCS_L_FRAME_FORMAT_DESCRIPTOR_4 3
0030 #define CCS_L_FRAME_FORMAT_DESCRIPTOR_4_OFFSET(n) ((n) * 4)
0031 #define CCS_L_ANALOG_GAIN_CAPABILITY 4
0032 #define CCS_L_ANALOG_GAIN_CODE_MIN 5
0033 #define CCS_L_ANALOG_GAIN_CODE_MAX 6
0034 #define CCS_L_ANALOG_GAIN_CODE_STEP 7
0035 #define CCS_L_ANALOG_GAIN_TYPE 8
0036 #define CCS_L_ANALOG_GAIN_M0 9
0037 #define CCS_L_ANALOG_GAIN_C0 10
0038 #define CCS_L_ANALOG_GAIN_M1 11
0039 #define CCS_L_ANALOG_GAIN_C1 12
0040 #define CCS_L_ANALOG_LINEAR_GAIN_MIN 13
0041 #define CCS_L_ANALOG_LINEAR_GAIN_MAX 14
0042 #define CCS_L_ANALOG_LINEAR_GAIN_STEP_SIZE 15
0043 #define CCS_L_ANALOG_EXPONENTIAL_GAIN_MIN 16
0044 #define CCS_L_ANALOG_EXPONENTIAL_GAIN_MAX 17
0045 #define CCS_L_ANALOG_EXPONENTIAL_GAIN_STEP_SIZE 18
0046 #define CCS_L_DATA_FORMAT_MODEL_TYPE 19
0047 #define CCS_L_DATA_FORMAT_MODEL_SUBTYPE 20
0048 #define CCS_L_DATA_FORMAT_DESCRIPTOR 21
0049 #define CCS_L_DATA_FORMAT_DESCRIPTOR_OFFSET(n) ((n) * 2)
0050 #define CCS_L_INTEGRATION_TIME_CAPABILITY 22
0051 #define CCS_L_COARSE_INTEGRATION_TIME_MIN 23
0052 #define CCS_L_COARSE_INTEGRATION_TIME_MAX_MARGIN 24
0053 #define CCS_L_FINE_INTEGRATION_TIME_MIN 25
0054 #define CCS_L_FINE_INTEGRATION_TIME_MAX_MARGIN 26
0055 #define CCS_L_DIGITAL_GAIN_CAPABILITY 27
0056 #define CCS_L_DIGITAL_GAIN_MIN 28
0057 #define CCS_L_DIGITAL_GAIN_MAX 29
0058 #define CCS_L_DIGITAL_GAIN_STEP_SIZE 30
0059 #define CCS_L_PEDESTAL_CAPABILITY 31
0060 #define CCS_L_ADC_CAPABILITY 32
0061 #define CCS_L_ADC_BIT_DEPTH_CAPABILITY 33
0062 #define CCS_L_MIN_EXT_CLK_FREQ_MHZ 34
0063 #define CCS_L_MAX_EXT_CLK_FREQ_MHZ 35
0064 #define CCS_L_MIN_PRE_PLL_CLK_DIV 36
0065 #define CCS_L_MAX_PRE_PLL_CLK_DIV 37
0066 #define CCS_L_MIN_PLL_IP_CLK_FREQ_MHZ 38
0067 #define CCS_L_MAX_PLL_IP_CLK_FREQ_MHZ 39
0068 #define CCS_L_MIN_PLL_MULTIPLIER 40
0069 #define CCS_L_MAX_PLL_MULTIPLIER 41
0070 #define CCS_L_MIN_PLL_OP_CLK_FREQ_MHZ 42
0071 #define CCS_L_MAX_PLL_OP_CLK_FREQ_MHZ 43
0072 #define CCS_L_MIN_VT_SYS_CLK_DIV 44
0073 #define CCS_L_MAX_VT_SYS_CLK_DIV 45
0074 #define CCS_L_MIN_VT_SYS_CLK_FREQ_MHZ 46
0075 #define CCS_L_MAX_VT_SYS_CLK_FREQ_MHZ 47
0076 #define CCS_L_MIN_VT_PIX_CLK_FREQ_MHZ 48
0077 #define CCS_L_MAX_VT_PIX_CLK_FREQ_MHZ 49
0078 #define CCS_L_MIN_VT_PIX_CLK_DIV 50
0079 #define CCS_L_MAX_VT_PIX_CLK_DIV 51
0080 #define CCS_L_CLOCK_CALCULATION 52
0081 #define CCS_L_NUM_OF_VT_LANES 53
0082 #define CCS_L_NUM_OF_OP_LANES 54
0083 #define CCS_L_OP_BITS_PER_LANE 55
0084 #define CCS_L_MIN_FRAME_LENGTH_LINES 56
0085 #define CCS_L_MAX_FRAME_LENGTH_LINES 57
0086 #define CCS_L_MIN_LINE_LENGTH_PCK 58
0087 #define CCS_L_MAX_LINE_LENGTH_PCK 59
0088 #define CCS_L_MIN_LINE_BLANKING_PCK 60
0089 #define CCS_L_MIN_FRAME_BLANKING_LINES 61
0090 #define CCS_L_MIN_LINE_LENGTH_PCK_STEP_SIZE 62
0091 #define CCS_L_TIMING_MODE_CAPABILITY 63
0092 #define CCS_L_FRAME_MARGIN_MAX_VALUE 64
0093 #define CCS_L_FRAME_MARGIN_MIN_VALUE 65
0094 #define CCS_L_GAIN_DELAY_TYPE 66
0095 #define CCS_L_MIN_OP_SYS_CLK_DIV 67
0096 #define CCS_L_MAX_OP_SYS_CLK_DIV 68
0097 #define CCS_L_MIN_OP_SYS_CLK_FREQ_MHZ 69
0098 #define CCS_L_MAX_OP_SYS_CLK_FREQ_MHZ 70
0099 #define CCS_L_MIN_OP_PIX_CLK_DIV 71
0100 #define CCS_L_MAX_OP_PIX_CLK_DIV 72
0101 #define CCS_L_MIN_OP_PIX_CLK_FREQ_MHZ 73
0102 #define CCS_L_MAX_OP_PIX_CLK_FREQ_MHZ 74
0103 #define CCS_L_X_ADDR_MIN 75
0104 #define CCS_L_Y_ADDR_MIN 76
0105 #define CCS_L_X_ADDR_MAX 77
0106 #define CCS_L_Y_ADDR_MAX 78
0107 #define CCS_L_MIN_X_OUTPUT_SIZE 79
0108 #define CCS_L_MIN_Y_OUTPUT_SIZE 80
0109 #define CCS_L_MAX_X_OUTPUT_SIZE 81
0110 #define CCS_L_MAX_Y_OUTPUT_SIZE 82
0111 #define CCS_L_X_ADDR_START_DIV_CONSTANT 83
0112 #define CCS_L_Y_ADDR_START_DIV_CONSTANT 84
0113 #define CCS_L_X_ADDR_END_DIV_CONSTANT 85
0114 #define CCS_L_Y_ADDR_END_DIV_CONSTANT 86
0115 #define CCS_L_X_SIZE_DIV 87
0116 #define CCS_L_Y_SIZE_DIV 88
0117 #define CCS_L_X_OUTPUT_DIV 89
0118 #define CCS_L_Y_OUTPUT_DIV 90
0119 #define CCS_L_NON_FLEXIBLE_RESOLUTION_SUPPORT 91
0120 #define CCS_L_MIN_OP_PRE_PLL_CLK_DIV 92
0121 #define CCS_L_MAX_OP_PRE_PLL_CLK_DIV 93
0122 #define CCS_L_MIN_OP_PLL_IP_CLK_FREQ_MHZ 94
0123 #define CCS_L_MAX_OP_PLL_IP_CLK_FREQ_MHZ 95
0124 #define CCS_L_MIN_OP_PLL_MULTIPLIER 96
0125 #define CCS_L_MAX_OP_PLL_MULTIPLIER 97
0126 #define CCS_L_MIN_OP_PLL_OP_CLK_FREQ_MHZ 98
0127 #define CCS_L_MAX_OP_PLL_OP_CLK_FREQ_MHZ 99
0128 #define CCS_L_CLOCK_TREE_PLL_CAPABILITY 100
0129 #define CCS_L_CLOCK_CAPA_TYPE_CAPABILITY 101
0130 #define CCS_L_MIN_EVEN_INC 102
0131 #define CCS_L_MIN_ODD_INC 103
0132 #define CCS_L_MAX_EVEN_INC 104
0133 #define CCS_L_MAX_ODD_INC 105
0134 #define CCS_L_AUX_SUBSAMP_CAPABILITY 106
0135 #define CCS_L_AUX_SUBSAMP_MONO_CAPABILITY 107
0136 #define CCS_L_MONOCHROME_CAPABILITY 108
0137 #define CCS_L_PIXEL_READOUT_CAPABILITY 109
0138 #define CCS_L_MIN_EVEN_INC_MONO 110
0139 #define CCS_L_MAX_EVEN_INC_MONO 111
0140 #define CCS_L_MIN_ODD_INC_MONO 112
0141 #define CCS_L_MAX_ODD_INC_MONO 113
0142 #define CCS_L_MIN_EVEN_INC_BC2 114
0143 #define CCS_L_MAX_EVEN_INC_BC2 115
0144 #define CCS_L_MIN_ODD_INC_BC2 116
0145 #define CCS_L_MAX_ODD_INC_BC2 117
0146 #define CCS_L_MIN_EVEN_INC_MONO_BC2 118
0147 #define CCS_L_MAX_EVEN_INC_MONO_BC2 119
0148 #define CCS_L_MIN_ODD_INC_MONO_BC2 120
0149 #define CCS_L_MAX_ODD_INC_MONO_BC2 121
0150 #define CCS_L_SCALING_CAPABILITY 122
0151 #define CCS_L_SCALER_M_MIN 123
0152 #define CCS_L_SCALER_M_MAX 124
0153 #define CCS_L_SCALER_N_MIN 125
0154 #define CCS_L_SCALER_N_MAX 126
0155 #define CCS_L_DIGITAL_CROP_CAPABILITY 127
0156 #define CCS_L_HDR_CAPABILITY_1 128
0157 #define CCS_L_MIN_HDR_BIT_DEPTH 129
0158 #define CCS_L_HDR_RESOLUTION_SUB_TYPES 130
0159 #define CCS_L_HDR_RESOLUTION_SUB_TYPE 131
0160 #define CCS_L_HDR_RESOLUTION_SUB_TYPE_OFFSET(n) (n)
0161 #define CCS_L_HDR_CAPABILITY_2 132
0162 #define CCS_L_MAX_HDR_BIT_DEPTH 133
0163 #define CCS_L_USL_SUPPORT_CAPABILITY 134
0164 #define CCS_L_USL_CLOCK_MODE_D_CAPABILITY 135
0165 #define CCS_L_MIN_OP_SYS_CLK_DIV_REV 136
0166 #define CCS_L_MAX_OP_SYS_CLK_DIV_REV 137
0167 #define CCS_L_MIN_OP_PIX_CLK_DIV_REV 138
0168 #define CCS_L_MAX_OP_PIX_CLK_DIV_REV 139
0169 #define CCS_L_MIN_OP_SYS_CLK_FREQ_REV_MHZ 140
0170 #define CCS_L_MAX_OP_SYS_CLK_FREQ_REV_MHZ 141
0171 #define CCS_L_MIN_OP_PIX_CLK_FREQ_REV_MHZ 142
0172 #define CCS_L_MAX_OP_PIX_CLK_FREQ_REV_MHZ 143
0173 #define CCS_L_MAX_BITRATE_REV_D_MODE_MBPS 144
0174 #define CCS_L_MAX_SYMRATE_REV_C_MODE_MSPS 145
0175 #define CCS_L_COMPRESSION_CAPABILITY 146
0176 #define CCS_L_TEST_MODE_CAPABILITY 147
0177 #define CCS_L_PN9_DATA_FORMAT1 148
0178 #define CCS_L_PN9_DATA_FORMAT2 149
0179 #define CCS_L_PN9_DATA_FORMAT3 150
0180 #define CCS_L_PN9_DATA_FORMAT4 151
0181 #define CCS_L_PN9_MISC_CAPABILITY 152
0182 #define CCS_L_TEST_PATTERN_CAPABILITY 153
0183 #define CCS_L_PATTERN_SIZE_DIV_M1 154
0184 #define CCS_L_FIFO_SUPPORT_CAPABILITY 155
0185 #define CCS_L_PHY_CTRL_CAPABILITY 156
0186 #define CCS_L_CSI_DPHY_LANE_MODE_CAPABILITY 157
0187 #define CCS_L_CSI_SIGNALING_MODE_CAPABILITY 158
0188 #define CCS_L_FAST_STANDBY_CAPABILITY 159
0189 #define CCS_L_CSI_ADDRESS_CONTROL_CAPABILITY 160
0190 #define CCS_L_DATA_TYPE_CAPABILITY 161
0191 #define CCS_L_CSI_CPHY_LANE_MODE_CAPABILITY 162
0192 #define CCS_L_EMB_DATA_CAPABILITY 163
0193 #define CCS_L_MAX_PER_LANE_BITRATE_LANE_D_MODE_MBPS 164
0194 #define CCS_L_MAX_PER_LANE_BITRATE_LANE_D_MODE_MBPS_OFFSET(n) ((n) * 4)
0195 #define CCS_L_TEMP_SENSOR_CAPABILITY 165
0196 #define CCS_L_MAX_PER_LANE_BITRATE_LANE_C_MODE_MBPS 166
0197 #define CCS_L_MAX_PER_LANE_BITRATE_LANE_C_MODE_MBPS_OFFSET(n) ((n) * 4)
0198 #define CCS_L_DPHY_EQUALIZATION_CAPABILITY 167
0199 #define CCS_L_CPHY_EQUALIZATION_CAPABILITY 168
0200 #define CCS_L_DPHY_PREAMBLE_CAPABILITY 169
0201 #define CCS_L_DPHY_SSC_CAPABILITY 170
0202 #define CCS_L_CPHY_CALIBRATION_CAPABILITY 171
0203 #define CCS_L_DPHY_CALIBRATION_CAPABILITY 172
0204 #define CCS_L_PHY_CTRL_CAPABILITY_2 173
0205 #define CCS_L_LRTE_CPHY_CAPABILITY 174
0206 #define CCS_L_LRTE_DPHY_CAPABILITY 175
0207 #define CCS_L_ALPS_CAPABILITY_DPHY 176
0208 #define CCS_L_ALPS_CAPABILITY_CPHY 177
0209 #define CCS_L_SCRAMBLING_CAPABILITY 178
0210 #define CCS_L_DPHY_MANUAL_CONSTANT 179
0211 #define CCS_L_CPHY_MANUAL_CONSTANT 180
0212 #define CCS_L_CSI2_INTERFACE_CAPABILITY_MISC 181
0213 #define CCS_L_PHY_CTRL_CAPABILITY_3 182
0214 #define CCS_L_DPHY_SF 183
0215 #define CCS_L_CPHY_SF 184
0216 #define CCS_L_DPHY_LIMITS_1 185
0217 #define CCS_L_DPHY_LIMITS_2 186
0218 #define CCS_L_DPHY_LIMITS_3 187
0219 #define CCS_L_DPHY_LIMITS_4 188
0220 #define CCS_L_DPHY_LIMITS_5 189
0221 #define CCS_L_DPHY_LIMITS_6 190
0222 #define CCS_L_CPHY_LIMITS_1 191
0223 #define CCS_L_CPHY_LIMITS_2 192
0224 #define CCS_L_CPHY_LIMITS_3 193
0225 #define CCS_L_MIN_FRAME_LENGTH_LINES_BIN 194
0226 #define CCS_L_MAX_FRAME_LENGTH_LINES_BIN 195
0227 #define CCS_L_MIN_LINE_LENGTH_PCK_BIN 196
0228 #define CCS_L_MAX_LINE_LENGTH_PCK_BIN 197
0229 #define CCS_L_MIN_LINE_BLANKING_PCK_BIN 198
0230 #define CCS_L_FINE_INTEGRATION_TIME_MIN_BIN 199
0231 #define CCS_L_FINE_INTEGRATION_TIME_MAX_MARGIN_BIN 200
0232 #define CCS_L_BINNING_CAPABILITY 201
0233 #define CCS_L_BINNING_WEIGHTING_CAPABILITY 202
0234 #define CCS_L_BINNING_SUB_TYPES 203
0235 #define CCS_L_BINNING_SUB_TYPE 204
0236 #define CCS_L_BINNING_SUB_TYPE_OFFSET(n) (n)
0237 #define CCS_L_BINNING_WEIGHTING_MONO_CAPABILITY 205
0238 #define CCS_L_BINNING_SUB_TYPES_MONO 206
0239 #define CCS_L_BINNING_SUB_TYPE_MONO 207
0240 #define CCS_L_BINNING_SUB_TYPE_MONO_OFFSET(n) (n)
0241 #define CCS_L_DATA_TRANSFER_IF_CAPABILITY 208
0242 #define CCS_L_SHADING_CORRECTION_CAPABILITY 209
0243 #define CCS_L_GREEN_IMBALANCE_CAPABILITY 210
0244 #define CCS_L_MODULE_SPECIFIC_CORRECTION_CAPABILITY 211
0245 #define CCS_L_DEFECT_CORRECTION_CAPABILITY 212
0246 #define CCS_L_DEFECT_CORRECTION_CAPABILITY_2 213
0247 #define CCS_L_NF_CAPABILITY 214
0248 #define CCS_L_OB_READOUT_CAPABILITY 215
0249 #define CCS_L_COLOR_FEEDBACK_CAPABILITY 216
0250 #define CCS_L_CFA_PATTERN_CAPABILITY 217
0251 #define CCS_L_CFA_PATTERN_CONVERSION_CAPABILITY 218
0252 #define CCS_L_FLASH_MODE_CAPABILITY 219
0253 #define CCS_L_SA_STROBE_MODE_CAPABILITY 220
0254 #define CCS_L_RESET_MAX_DELAY 221
0255 #define CCS_L_RESET_MIN_TIME 222
0256 #define CCS_L_PDAF_CAPABILITY_1 223
0257 #define CCS_L_PDAF_CAPABILITY_2 224
0258 #define CCS_L_BRACKETING_LUT_CAPABILITY_1 225
0259 #define CCS_L_BRACKETING_LUT_CAPABILITY_2 226
0260 #define CCS_L_BRACKETING_LUT_SIZE 227
0261 #define CCS_L_LAST 228
0262
0263 #endif