1/* SPDX-License-Identifier: GPL-2.0-only OR BSD-3-Clause */
2/* Copyright (C) 2019--2020 Intel Corporation */
3/*
4 * Generated by Documentation/driver-api/media/drivers/ccs/mk-ccs-regs;
5 * do not modify.
6 */
7
8#ifndef __CCS_LIMITS_H__
9#define __CCS_LIMITS_H__
10
11#include <linux/bits.h>
12#include <linux/types.h>
13
14struct ccs_limit {
15 u32 reg;
16 u16 size;
17 u16 flags;
18 const char *name;
19};
20
21#define CCS_L_FL_SAME_REG BIT(0)
22
23extern const struct ccs_limit ccs_limits[];
24
25#define CCS_L_FRAME_FORMAT_MODEL_TYPE 0
26#define CCS_L_FRAME_FORMAT_MODEL_SUBTYPE 1
27#define CCS_L_FRAME_FORMAT_DESCRIPTOR 2
28#define CCS_L_FRAME_FORMAT_DESCRIPTOR_OFFSET(n) ((n) * 2)
29#define CCS_L_FRAME_FORMAT_DESCRIPTOR_4 3
30#define CCS_L_FRAME_FORMAT_DESCRIPTOR_4_OFFSET(n) ((n) * 4)
31#define CCS_L_ANALOG_GAIN_CAPABILITY 4
32#define CCS_L_ANALOG_GAIN_CODE_MIN 5
33#define CCS_L_ANALOG_GAIN_CODE_MAX 6
34#define CCS_L_ANALOG_GAIN_CODE_STEP 7
35#define CCS_L_ANALOG_GAIN_TYPE 8
36#define CCS_L_ANALOG_GAIN_M0 9
37#define CCS_L_ANALOG_GAIN_C0 10
38#define CCS_L_ANALOG_GAIN_M1 11
39#define CCS_L_ANALOG_GAIN_C1 12
40#define CCS_L_ANALOG_LINEAR_GAIN_MIN 13
41#define CCS_L_ANALOG_LINEAR_GAIN_MAX 14
42#define CCS_L_ANALOG_LINEAR_GAIN_STEP_SIZE 15
43#define CCS_L_ANALOG_EXPONENTIAL_GAIN_MIN 16
44#define CCS_L_ANALOG_EXPONENTIAL_GAIN_MAX 17
45#define CCS_L_ANALOG_EXPONENTIAL_GAIN_STEP_SIZE 18
46#define CCS_L_DATA_FORMAT_MODEL_TYPE 19
47#define CCS_L_DATA_FORMAT_MODEL_SUBTYPE 20
48#define CCS_L_DATA_FORMAT_DESCRIPTOR 21
49#define CCS_L_DATA_FORMAT_DESCRIPTOR_OFFSET(n) ((n) * 2)
50#define CCS_L_INTEGRATION_TIME_CAPABILITY 22
51#define CCS_L_COARSE_INTEGRATION_TIME_MIN 23
52#define CCS_L_COARSE_INTEGRATION_TIME_MAX_MARGIN 24
53#define CCS_L_FINE_INTEGRATION_TIME_MIN 25
54#define CCS_L_FINE_INTEGRATION_TIME_MAX_MARGIN 26
55#define CCS_L_DIGITAL_GAIN_CAPABILITY 27
56#define CCS_L_DIGITAL_GAIN_MIN 28
57#define CCS_L_DIGITAL_GAIN_MAX 29
58#define CCS_L_DIGITAL_GAIN_STEP_SIZE 30
59#define CCS_L_PEDESTAL_CAPABILITY 31
60#define CCS_L_ADC_CAPABILITY 32
61#define CCS_L_ADC_BIT_DEPTH_CAPABILITY 33
62#define CCS_L_MIN_EXT_CLK_FREQ_MHZ 34
63#define CCS_L_MAX_EXT_CLK_FREQ_MHZ 35
64#define CCS_L_MIN_PRE_PLL_CLK_DIV 36
65#define CCS_L_MAX_PRE_PLL_CLK_DIV 37
66#define CCS_L_MIN_PLL_IP_CLK_FREQ_MHZ 38
67#define CCS_L_MAX_PLL_IP_CLK_FREQ_MHZ 39
68#define CCS_L_MIN_PLL_MULTIPLIER 40
69#define CCS_L_MAX_PLL_MULTIPLIER 41
70#define CCS_L_MIN_PLL_OP_CLK_FREQ_MHZ 42
71#define CCS_L_MAX_PLL_OP_CLK_FREQ_MHZ 43
72#define CCS_L_MIN_VT_SYS_CLK_DIV 44
73#define CCS_L_MAX_VT_SYS_CLK_DIV 45
74#define CCS_L_MIN_VT_SYS_CLK_FREQ_MHZ 46
75#define CCS_L_MAX_VT_SYS_CLK_FREQ_MHZ 47
76#define CCS_L_MIN_VT_PIX_CLK_FREQ_MHZ 48
77#define CCS_L_MAX_VT_PIX_CLK_FREQ_MHZ 49
78#define CCS_L_MIN_VT_PIX_CLK_DIV 50
79#define CCS_L_MAX_VT_PIX_CLK_DIV 51
80#define CCS_L_CLOCK_CALCULATION 52
81#define CCS_L_NUM_OF_VT_LANES 53
82#define CCS_L_NUM_OF_OP_LANES 54
83#define CCS_L_OP_BITS_PER_LANE 55
84#define CCS_L_MIN_FRAME_LENGTH_LINES 56
85#define CCS_L_MAX_FRAME_LENGTH_LINES 57
86#define CCS_L_MIN_LINE_LENGTH_PCK 58
87#define CCS_L_MAX_LINE_LENGTH_PCK 59
88#define CCS_L_MIN_LINE_BLANKING_PCK 60
89#define CCS_L_MIN_FRAME_BLANKING_LINES 61
90#define CCS_L_MIN_LINE_LENGTH_PCK_STEP_SIZE 62
91#define CCS_L_TIMING_MODE_CAPABILITY 63
92#define CCS_L_FRAME_MARGIN_MAX_VALUE 64
93#define CCS_L_FRAME_MARGIN_MIN_VALUE 65
94#define CCS_L_GAIN_DELAY_TYPE 66
95#define CCS_L_MIN_OP_SYS_CLK_DIV 67
96#define CCS_L_MAX_OP_SYS_CLK_DIV 68
97#define CCS_L_MIN_OP_SYS_CLK_FREQ_MHZ 69
98#define CCS_L_MAX_OP_SYS_CLK_FREQ_MHZ 70
99#define CCS_L_MIN_OP_PIX_CLK_DIV 71
100#define CCS_L_MAX_OP_PIX_CLK_DIV 72
101#define CCS_L_MIN_OP_PIX_CLK_FREQ_MHZ 73
102#define CCS_L_MAX_OP_PIX_CLK_FREQ_MHZ 74
103#define CCS_L_X_ADDR_MIN 75
104#define CCS_L_Y_ADDR_MIN 76
105#define CCS_L_X_ADDR_MAX 77
106#define CCS_L_Y_ADDR_MAX 78
107#define CCS_L_MIN_X_OUTPUT_SIZE 79
108#define CCS_L_MIN_Y_OUTPUT_SIZE 80
109#define CCS_L_MAX_X_OUTPUT_SIZE 81
110#define CCS_L_MAX_Y_OUTPUT_SIZE 82
111#define CCS_L_X_ADDR_START_DIV_CONSTANT 83
112#define CCS_L_Y_ADDR_START_DIV_CONSTANT 84
113#define CCS_L_X_ADDR_END_DIV_CONSTANT 85
114#define CCS_L_Y_ADDR_END_DIV_CONSTANT 86
115#define CCS_L_X_SIZE_DIV 87
116#define CCS_L_Y_SIZE_DIV 88
117#define CCS_L_X_OUTPUT_DIV 89
118#define CCS_L_Y_OUTPUT_DIV 90
119#define CCS_L_NON_FLEXIBLE_RESOLUTION_SUPPORT 91
120#define CCS_L_MIN_OP_PRE_PLL_CLK_DIV 92
121#define CCS_L_MAX_OP_PRE_PLL_CLK_DIV 93
122#define CCS_L_MIN_OP_PLL_IP_CLK_FREQ_MHZ 94
123#define CCS_L_MAX_OP_PLL_IP_CLK_FREQ_MHZ 95
124#define CCS_L_MIN_OP_PLL_MULTIPLIER 96
125#define CCS_L_MAX_OP_PLL_MULTIPLIER 97
126#define CCS_L_MIN_OP_PLL_OP_CLK_FREQ_MHZ 98
127#define CCS_L_MAX_OP_PLL_OP_CLK_FREQ_MHZ 99
128#define CCS_L_CLOCK_TREE_PLL_CAPABILITY 100
129#define CCS_L_CLOCK_CAPA_TYPE_CAPABILITY 101
130#define CCS_L_MIN_EVEN_INC 102
131#define CCS_L_MIN_ODD_INC 103
132#define CCS_L_MAX_EVEN_INC 104
133#define CCS_L_MAX_ODD_INC 105
134#define CCS_L_AUX_SUBSAMP_CAPABILITY 106
135#define CCS_L_AUX_SUBSAMP_MONO_CAPABILITY 107
136#define CCS_L_MONOCHROME_CAPABILITY 108
137#define CCS_L_PIXEL_READOUT_CAPABILITY 109
138#define CCS_L_MIN_EVEN_INC_MONO 110
139#define CCS_L_MAX_EVEN_INC_MONO 111
140#define CCS_L_MIN_ODD_INC_MONO 112
141#define CCS_L_MAX_ODD_INC_MONO 113
142#define CCS_L_MIN_EVEN_INC_BC2 114
143#define CCS_L_MAX_EVEN_INC_BC2 115
144#define CCS_L_MIN_ODD_INC_BC2 116
145#define CCS_L_MAX_ODD_INC_BC2 117
146#define CCS_L_MIN_EVEN_INC_MONO_BC2 118
147#define CCS_L_MAX_EVEN_INC_MONO_BC2 119
148#define CCS_L_MIN_ODD_INC_MONO_BC2 120
149#define CCS_L_MAX_ODD_INC_MONO_BC2 121
150#define CCS_L_SCALING_CAPABILITY 122
151#define CCS_L_SCALER_M_MIN 123
152#define CCS_L_SCALER_M_MAX 124
153#define CCS_L_SCALER_N_MIN 125
154#define CCS_L_SCALER_N_MAX 126
155#define CCS_L_DIGITAL_CROP_CAPABILITY 127
156#define CCS_L_HDR_CAPABILITY_1 128
157#define CCS_L_MIN_HDR_BIT_DEPTH 129
158#define CCS_L_HDR_RESOLUTION_SUB_TYPES 130
159#define CCS_L_HDR_RESOLUTION_SUB_TYPE 131
160#define CCS_L_HDR_RESOLUTION_SUB_TYPE_OFFSET(n) (n)
161#define CCS_L_HDR_CAPABILITY_2 132
162#define CCS_L_MAX_HDR_BIT_DEPTH 133
163#define CCS_L_USL_SUPPORT_CAPABILITY 134
164#define CCS_L_USL_CLOCK_MODE_D_CAPABILITY 135
165#define CCS_L_MIN_OP_SYS_CLK_DIV_REV 136
166#define CCS_L_MAX_OP_SYS_CLK_DIV_REV 137
167#define CCS_L_MIN_OP_PIX_CLK_DIV_REV 138
168#define CCS_L_MAX_OP_PIX_CLK_DIV_REV 139
169#define CCS_L_MIN_OP_SYS_CLK_FREQ_REV_MHZ 140
170#define CCS_L_MAX_OP_SYS_CLK_FREQ_REV_MHZ 141
171#define CCS_L_MIN_OP_PIX_CLK_FREQ_REV_MHZ 142
172#define CCS_L_MAX_OP_PIX_CLK_FREQ_REV_MHZ 143
173#define CCS_L_MAX_BITRATE_REV_D_MODE_MBPS 144
174#define CCS_L_MAX_SYMRATE_REV_C_MODE_MSPS 145
175#define CCS_L_COMPRESSION_CAPABILITY 146
176#define CCS_L_TEST_MODE_CAPABILITY 147
177#define CCS_L_PN9_DATA_FORMAT1 148
178#define CCS_L_PN9_DATA_FORMAT2 149
179#define CCS_L_PN9_DATA_FORMAT3 150
180#define CCS_L_PN9_DATA_FORMAT4 151
181#define CCS_L_PN9_MISC_CAPABILITY 152
182#define CCS_L_TEST_PATTERN_CAPABILITY 153
183#define CCS_L_PATTERN_SIZE_DIV_M1 154
184#define CCS_L_FIFO_SUPPORT_CAPABILITY 155
185#define CCS_L_PHY_CTRL_CAPABILITY 156
186#define CCS_L_CSI_DPHY_LANE_MODE_CAPABILITY 157
187#define CCS_L_CSI_SIGNALING_MODE_CAPABILITY 158
188#define CCS_L_FAST_STANDBY_CAPABILITY 159
189#define CCS_L_CSI_ADDRESS_CONTROL_CAPABILITY 160
190#define CCS_L_DATA_TYPE_CAPABILITY 161
191#define CCS_L_CSI_CPHY_LANE_MODE_CAPABILITY 162
192#define CCS_L_EMB_DATA_CAPABILITY 163
193#define CCS_L_MAX_PER_LANE_BITRATE_LANE_D_MODE_MBPS 164
194#define CCS_L_MAX_PER_LANE_BITRATE_LANE_D_MODE_MBPS_OFFSET(n) ((n) * 4)
195#define CCS_L_TEMP_SENSOR_CAPABILITY 165
196#define CCS_L_MAX_PER_LANE_BITRATE_LANE_C_MODE_MBPS 166
197#define CCS_L_MAX_PER_LANE_BITRATE_LANE_C_MODE_MBPS_OFFSET(n) ((n) * 4)
198#define CCS_L_DPHY_EQUALIZATION_CAPABILITY 167
199#define CCS_L_CPHY_EQUALIZATION_CAPABILITY 168
200#define CCS_L_DPHY_PREAMBLE_CAPABILITY 169
201#define CCS_L_DPHY_SSC_CAPABILITY 170
202#define CCS_L_CPHY_CALIBRATION_CAPABILITY 171
203#define CCS_L_DPHY_CALIBRATION_CAPABILITY 172
204#define CCS_L_PHY_CTRL_CAPABILITY_2 173
205#define CCS_L_LRTE_CPHY_CAPABILITY 174
206#define CCS_L_LRTE_DPHY_CAPABILITY 175
207#define CCS_L_ALPS_CAPABILITY_DPHY 176
208#define CCS_L_ALPS_CAPABILITY_CPHY 177
209#define CCS_L_SCRAMBLING_CAPABILITY 178
210#define CCS_L_DPHY_MANUAL_CONSTANT 179
211#define CCS_L_CPHY_MANUAL_CONSTANT 180
212#define CCS_L_CSI2_INTERFACE_CAPABILITY_MISC 181
213#define CCS_L_PHY_CTRL_CAPABILITY_3 182
214#define CCS_L_DPHY_SF 183
215#define CCS_L_CPHY_SF 184
216#define CCS_L_DPHY_LIMITS_1 185
217#define CCS_L_DPHY_LIMITS_2 186
218#define CCS_L_DPHY_LIMITS_3 187
219#define CCS_L_DPHY_LIMITS_4 188
220#define CCS_L_DPHY_LIMITS_5 189
221#define CCS_L_DPHY_LIMITS_6 190
222#define CCS_L_CPHY_LIMITS_1 191
223#define CCS_L_CPHY_LIMITS_2 192
224#define CCS_L_CPHY_LIMITS_3 193
225#define CCS_L_MIN_FRAME_LENGTH_LINES_BIN 194
226#define CCS_L_MAX_FRAME_LENGTH_LINES_BIN 195
227#define CCS_L_MIN_LINE_LENGTH_PCK_BIN 196
228#define CCS_L_MAX_LINE_LENGTH_PCK_BIN 197
229#define CCS_L_MIN_LINE_BLANKING_PCK_BIN 198
230#define CCS_L_FINE_INTEGRATION_TIME_MIN_BIN 199
231#define CCS_L_FINE_INTEGRATION_TIME_MAX_MARGIN_BIN 200
232#define CCS_L_BINNING_CAPABILITY 201
233#define CCS_L_BINNING_WEIGHTING_CAPABILITY 202
234#define CCS_L_BINNING_SUB_TYPES 203
235#define CCS_L_BINNING_SUB_TYPE 204
236#define CCS_L_BINNING_SUB_TYPE_OFFSET(n) (n)
237#define CCS_L_BINNING_WEIGHTING_MONO_CAPABILITY 205
238#define CCS_L_BINNING_SUB_TYPES_MONO 206
239#define CCS_L_BINNING_SUB_TYPE_MONO 207
240#define CCS_L_BINNING_SUB_TYPE_MONO_OFFSET(n) (n)
241#define CCS_L_DATA_TRANSFER_IF_CAPABILITY 208
242#define CCS_L_SHADING_CORRECTION_CAPABILITY 209
243#define CCS_L_GREEN_IMBALANCE_CAPABILITY 210
244#define CCS_L_MODULE_SPECIFIC_CORRECTION_CAPABILITY 211
245#define CCS_L_DEFECT_CORRECTION_CAPABILITY 212
246#define CCS_L_DEFECT_CORRECTION_CAPABILITY_2 213
247#define CCS_L_NF_CAPABILITY 214
248#define CCS_L_OB_READOUT_CAPABILITY 215
249#define CCS_L_COLOR_FEEDBACK_CAPABILITY 216
250#define CCS_L_CFA_PATTERN_CAPABILITY 217
251#define CCS_L_CFA_PATTERN_CONVERSION_CAPABILITY 218
252#define CCS_L_FLASH_MODE_CAPABILITY 219
253#define CCS_L_SA_STROBE_MODE_CAPABILITY 220
254#define CCS_L_RESET_MAX_DELAY 221
255#define CCS_L_RESET_MIN_TIME 222
256#define CCS_L_PDAF_CAPABILITY_1 223
257#define CCS_L_PDAF_CAPABILITY_2 224
258#define CCS_L_BRACKETING_LUT_CAPABILITY_1 225
259#define CCS_L_BRACKETING_LUT_CAPABILITY_2 226
260#define CCS_L_BRACKETING_LUT_SIZE 227
261#define CCS_L_LAST 228
262
263#endif /* __CCS_LIMITS_H__ */
264

source code of linux/drivers/media/i2c/ccs/ccs-limits.h