HPM SDK
HPMicro Software Development Kit
hpm_cam_regs.h
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2021-2024 HPMicro
3  *
4  * SPDX-License-Identifier: BSD-3-Clause
5  *
6  */
7 
8 
9 #ifndef HPM_CAM_H
10 #define HPM_CAM_H
11 
12 typedef struct {
13  __RW uint32_t CR1; /* 0x0: Control Register */
14  __RW uint32_t INT_EN; /* 0x4: Interrupt Enable Register */
15  __R uint8_t RESERVED0[8]; /* 0x8 - 0xF: Reserved */
16  __RW uint32_t CR2; /* 0x10: Control 2 Register */
17  __R uint8_t RESERVED1[16]; /* 0x14 - 0x23: Reserved */
18  __RW uint32_t STA; /* 0x24: Status Register */
19  __R uint8_t RESERVED2[8]; /* 0x28 - 0x2F: Reserved */
20  __RW uint32_t DMASA_FB1; /* 0x30: Pixel DMA Frame Buffer 1 Address */
21  __RW uint32_t DMASA_FB2; /* 0x34: Pixel DMA Frame Buffer 2 Address */
22  __RW uint32_t BUF_PARA; /* 0x38: Buffer Parameters Register */
23  __RW uint32_t IDEAL_WN_SIZE; /* 0x3C: Ideal Image Size Register */
24  __R uint8_t RESERVED3[12]; /* 0x40 - 0x4B: Reserved */
25  __RW uint32_t CR18; /* 0x4C: Control CR18 Register */
26  __RW uint32_t DMASA_UV1; /* 0x50: Pixel UV DMA Frame Buffer 1 Address */
27  __RW uint32_t DMASA_UV2; /* 0x54: Pixel UV DMA Frame Buffer 2 Address */
28  __RW uint32_t CR20; /* 0x58: Control CR20 Register */
29  __R uint8_t RESERVED4[20]; /* 0x5C - 0x6F: Reserved */
30  __RW uint32_t CSC_COEF0; /* 0x70: Color Space Conversion Config Register 0 */
31  __RW uint32_t CSC_COEF1; /* 0x74: Color Space Conversion Config Register 1 */
32  __RW uint32_t CSC_COEF2; /* 0x78: Color Space Conversion Config Register 2 */
33  __RW uint32_t CLRKEY_LOW; /* 0x7C: Low Color Key Register */
34  __RW uint32_t CLRKEY_HIGH; /* 0x80: High Color Key Register */
35  __R uint8_t RESERVED5[12]; /* 0x84 - 0x8F: Reserved */
36  __R uint32_t HISTOGRAM_FIFO[256]; /* 0x90 - 0x48C: Histogram Registers */
37 } CAM_Type;
38 
39 
40 /* Bitfield definition for register: CR1 */
41 /*
42  * COLOR_EXT (RW)
43  *
44  * If asserted, will change the output color to ARGB8888 mode. Used by input color as RGB565, RGB888, YUV888, etc.
45  * The byte sequence is B,G,R,A. Depends on correct CR2[ClrBitFormat] configuration.
46  */
47 #define CAM_CR1_COLOR_EXT_MASK (0x20000000UL)
48 #define CAM_CR1_COLOR_EXT_SHIFT (29U)
49 #define CAM_CR1_COLOR_EXT_SET(x) (((uint32_t)(x) << CAM_CR1_COLOR_EXT_SHIFT) & CAM_CR1_COLOR_EXT_MASK)
50 #define CAM_CR1_COLOR_EXT_GET(x) (((uint32_t)(x) & CAM_CR1_COLOR_EXT_MASK) >> CAM_CR1_COLOR_EXT_SHIFT)
51 
52 /*
53  * INV_PIXCLK (RW)
54  *
55  * invert pixclk pad input before it is used
56  */
57 #define CAM_CR1_INV_PIXCLK_MASK (0x10000000UL)
58 #define CAM_CR1_INV_PIXCLK_SHIFT (28U)
59 #define CAM_CR1_INV_PIXCLK_SET(x) (((uint32_t)(x) << CAM_CR1_INV_PIXCLK_SHIFT) & CAM_CR1_INV_PIXCLK_MASK)
60 #define CAM_CR1_INV_PIXCLK_GET(x) (((uint32_t)(x) & CAM_CR1_INV_PIXCLK_MASK) >> CAM_CR1_INV_PIXCLK_SHIFT)
61 
62 /*
63  * INV_HSYNC (RW)
64  *
65  * invert hsync pad input before it is used
66  */
67 #define CAM_CR1_INV_HSYNC_MASK (0x8000000UL)
68 #define CAM_CR1_INV_HSYNC_SHIFT (27U)
69 #define CAM_CR1_INV_HSYNC_SET(x) (((uint32_t)(x) << CAM_CR1_INV_HSYNC_SHIFT) & CAM_CR1_INV_HSYNC_MASK)
70 #define CAM_CR1_INV_HSYNC_GET(x) (((uint32_t)(x) & CAM_CR1_INV_HSYNC_MASK) >> CAM_CR1_INV_HSYNC_SHIFT)
71 
72 /*
73  * INV_VSYNC (RW)
74  *
75  * invert vsync pad input before it is used
76  */
77 #define CAM_CR1_INV_VSYNC_MASK (0x4000000UL)
78 #define CAM_CR1_INV_VSYNC_SHIFT (26U)
79 #define CAM_CR1_INV_VSYNC_SET(x) (((uint32_t)(x) << CAM_CR1_INV_VSYNC_SHIFT) & CAM_CR1_INV_VSYNC_MASK)
80 #define CAM_CR1_INV_VSYNC_GET(x) (((uint32_t)(x) & CAM_CR1_INV_VSYNC_MASK) >> CAM_CR1_INV_VSYNC_SHIFT)
81 
82 /*
83  * SWAP16_EN (RW)
84  *
85  * SWAP 16-Bit Enable. This bit enables the swapping of 16-bit data. Data is packed from 8-bit or 10-bit to 32-bit first (according to the setting of PACK_DIR) and then swapped as 16-bit words before being put into the RX FIFO. The action of the bit only affects the RX FIFO.
86  * NOTE: Example of swapping enabled:
87  * Data input to FIFO = 0x11223344
88  * Data in RX FIFO = 0x 33441122
89  * NOTE: Example of swapping disabled:
90  * Data input to FIFO = 0x11223344
91  * Data in RX FIFO = 0x11223344
92  * 0 Disable swapping
93  * 1 Enable swapping
94  */
95 #define CAM_CR1_SWAP16_EN_MASK (0x2000000UL)
96 #define CAM_CR1_SWAP16_EN_SHIFT (25U)
97 #define CAM_CR1_SWAP16_EN_SET(x) (((uint32_t)(x) << CAM_CR1_SWAP16_EN_SHIFT) & CAM_CR1_SWAP16_EN_MASK)
98 #define CAM_CR1_SWAP16_EN_GET(x) (((uint32_t)(x) & CAM_CR1_SWAP16_EN_MASK) >> CAM_CR1_SWAP16_EN_SHIFT)
99 
100 /*
101  * PACK_DIR (RW)
102  *
103  * Data Packing Direction. This bit Controls how 8-bit/10-bit image data is packed into 32-bit RX FIFO.
104  * 0 Pack from LSB first. For image data, 0x11, 0x22, 0x33, 0x44, it will appear as 0x44332211 in RX FIFO.
105  * 1 Pack from MSB first. For image data, 0x11, 0x22, 0x33, 0x44, it will appear as 0x11223344 in RX FIFO.
106  */
107 #define CAM_CR1_PACK_DIR_MASK (0x1000000UL)
108 #define CAM_CR1_PACK_DIR_SHIFT (24U)
109 #define CAM_CR1_PACK_DIR_SET(x) (((uint32_t)(x) << CAM_CR1_PACK_DIR_SHIFT) & CAM_CR1_PACK_DIR_MASK)
110 #define CAM_CR1_PACK_DIR_GET(x) (((uint32_t)(x) & CAM_CR1_PACK_DIR_MASK) >> CAM_CR1_PACK_DIR_SHIFT)
111 
112 /*
113  * RESTART_BUSPTR (RW)
114  *
115  * force to restart the bus pointer at the every end of the sof period, and at the same time, clr the fifo pointer
116  */
117 #define CAM_CR1_RESTART_BUSPTR_MASK (0x800000UL)
118 #define CAM_CR1_RESTART_BUSPTR_SHIFT (23U)
119 #define CAM_CR1_RESTART_BUSPTR_SET(x) (((uint32_t)(x) << CAM_CR1_RESTART_BUSPTR_SHIFT) & CAM_CR1_RESTART_BUSPTR_MASK)
120 #define CAM_CR1_RESTART_BUSPTR_GET(x) (((uint32_t)(x) & CAM_CR1_RESTART_BUSPTR_MASK) >> CAM_CR1_RESTART_BUSPTR_SHIFT)
121 
122 /*
123  * ASYNC_RXFIFO_CLR (RW)
124  *
125  * ASynchronous Rx FIFO Clear.
126  * When asserted, this bit clears RXFIFO immediately.
127  * It will be auto-cleared.
128  */
129 #define CAM_CR1_ASYNC_RXFIFO_CLR_MASK (0x100000UL)
130 #define CAM_CR1_ASYNC_RXFIFO_CLR_SHIFT (20U)
131 #define CAM_CR1_ASYNC_RXFIFO_CLR_SET(x) (((uint32_t)(x) << CAM_CR1_ASYNC_RXFIFO_CLR_SHIFT) & CAM_CR1_ASYNC_RXFIFO_CLR_MASK)
132 #define CAM_CR1_ASYNC_RXFIFO_CLR_GET(x) (((uint32_t)(x) & CAM_CR1_ASYNC_RXFIFO_CLR_MASK) >> CAM_CR1_ASYNC_RXFIFO_CLR_SHIFT)
133 
134 /*
135  * SYNC_RXFIFO_CLR (RW)
136  *
137  * Synchronous Rx FIFO Clear.
138  * When asserted, this bit clears RXFIFO on every SOF.
139  */
140 #define CAM_CR1_SYNC_RXFIFO_CLR_MASK (0x80000UL)
141 #define CAM_CR1_SYNC_RXFIFO_CLR_SHIFT (19U)
142 #define CAM_CR1_SYNC_RXFIFO_CLR_SET(x) (((uint32_t)(x) << CAM_CR1_SYNC_RXFIFO_CLR_SHIFT) & CAM_CR1_SYNC_RXFIFO_CLR_MASK)
143 #define CAM_CR1_SYNC_RXFIFO_CLR_GET(x) (((uint32_t)(x) & CAM_CR1_SYNC_RXFIFO_CLR_MASK) >> CAM_CR1_SYNC_RXFIFO_CLR_SHIFT)
144 
145 /*
146  * SOF_INT_POL (RW)
147  *
148  * SOF Interrupt Polarity. This bit controls the condition that generates an SOF interrupt.
149  * 0 SOF interrupt is generated on SOF falling edge
150  * 1 SOF interrupt is generated on SOF rising edge
151  */
152 #define CAM_CR1_SOF_INT_POL_MASK (0x20000UL)
153 #define CAM_CR1_SOF_INT_POL_SHIFT (17U)
154 #define CAM_CR1_SOF_INT_POL_SET(x) (((uint32_t)(x) << CAM_CR1_SOF_INT_POL_SHIFT) & CAM_CR1_SOF_INT_POL_MASK)
155 #define CAM_CR1_SOF_INT_POL_GET(x) (((uint32_t)(x) & CAM_CR1_SOF_INT_POL_MASK) >> CAM_CR1_SOF_INT_POL_SHIFT)
156 
157 /*
158  * INV_DATA (RW)
159  *
160  * Invert Data Input. This bit enables or disables internal inverters on the data lines.
161  * 0 CAM_D data lines are directly applied to internal circuitry
162  * 1 CAM_D data lines are inverted before applied to internal circuitry
163  */
164 #define CAM_CR1_INV_DATA_MASK (0x8000U)
165 #define CAM_CR1_INV_DATA_SHIFT (15U)
166 #define CAM_CR1_INV_DATA_SET(x) (((uint32_t)(x) << CAM_CR1_INV_DATA_SHIFT) & CAM_CR1_INV_DATA_MASK)
167 #define CAM_CR1_INV_DATA_GET(x) (((uint32_t)(x) & CAM_CR1_INV_DATA_MASK) >> CAM_CR1_INV_DATA_SHIFT)
168 
169 /*
170  * STORAGE_MODE (RW)
171  *
172  * 00: Normal Mode (one plane mode)
173  * 01: Two Plane Mode (Y, UV plane)
174  * 10: Y-only Mode, byte sequence as Y0,Y1,Y2,Y3
175  * 11: Binary Mode, bit sequence is from LSB to MSB when CR20[BIG_END]=0
176  */
177 #define CAM_CR1_STORAGE_MODE_MASK (0xC00U)
178 #define CAM_CR1_STORAGE_MODE_SHIFT (10U)
179 #define CAM_CR1_STORAGE_MODE_SET(x) (((uint32_t)(x) << CAM_CR1_STORAGE_MODE_SHIFT) & CAM_CR1_STORAGE_MODE_MASK)
180 #define CAM_CR1_STORAGE_MODE_GET(x) (((uint32_t)(x) & CAM_CR1_STORAGE_MODE_MASK) >> CAM_CR1_STORAGE_MODE_SHIFT)
181 
182 /*
183  * COLOR_FORMATS (RW)
184  *
185  * input color formats:
186  * 0010b:24bit:RGB888
187  * 0011b:24bit:RGB666
188  * 0100b:16bit:RGB565
189  * 0101b:16bit:RGB444
190  * 0110b:16bit:RGB555
191  * 0111b: 16bit: YCbCr422 (Y0 Cb Y1 Cr, each 8-bit)
192  * YUV
193  * YCrCb
194  * Note: YUV420 is not supported.
195  * 1000b: 24bit: YUV444
196  */
197 #define CAM_CR1_COLOR_FORMATS_MASK (0x78U)
198 #define CAM_CR1_COLOR_FORMATS_SHIFT (3U)
199 #define CAM_CR1_COLOR_FORMATS_SET(x) (((uint32_t)(x) << CAM_CR1_COLOR_FORMATS_SHIFT) & CAM_CR1_COLOR_FORMATS_MASK)
200 #define CAM_CR1_COLOR_FORMATS_GET(x) (((uint32_t)(x) & CAM_CR1_COLOR_FORMATS_MASK) >> CAM_CR1_COLOR_FORMATS_SHIFT)
201 
202 /*
203  * SENSOR_BIT_WIDTH (RW)
204  *
205  * the bit width of the sensor
206  * 0: 8 bits
207  * 1: 10 bits
208  * 3:24bits
209  * Others: Undefined
210  */
211 #define CAM_CR1_SENSOR_BIT_WIDTH_MASK (0x7U)
212 #define CAM_CR1_SENSOR_BIT_WIDTH_SHIFT (0U)
213 #define CAM_CR1_SENSOR_BIT_WIDTH_SET(x) (((uint32_t)(x) << CAM_CR1_SENSOR_BIT_WIDTH_SHIFT) & CAM_CR1_SENSOR_BIT_WIDTH_MASK)
214 #define CAM_CR1_SENSOR_BIT_WIDTH_GET(x) (((uint32_t)(x) & CAM_CR1_SENSOR_BIT_WIDTH_MASK) >> CAM_CR1_SENSOR_BIT_WIDTH_SHIFT)
215 
216 /* Bitfield definition for register: INT_EN */
217 /*
218  * ERR_CL_BWID_CFG_INT_EN (RW)
219  *
220  * The unsupported color (color_formats[3:0]) and bitwidth (sensor_bit_width[2:0]) configuation interrupt enable
221  */
222 #define CAM_INT_EN_ERR_CL_BWID_CFG_INT_EN_MASK (0x2000U)
223 #define CAM_INT_EN_ERR_CL_BWID_CFG_INT_EN_SHIFT (13U)
224 #define CAM_INT_EN_ERR_CL_BWID_CFG_INT_EN_SET(x) (((uint32_t)(x) << CAM_INT_EN_ERR_CL_BWID_CFG_INT_EN_SHIFT) & CAM_INT_EN_ERR_CL_BWID_CFG_INT_EN_MASK)
225 #define CAM_INT_EN_ERR_CL_BWID_CFG_INT_EN_GET(x) (((uint32_t)(x) & CAM_INT_EN_ERR_CL_BWID_CFG_INT_EN_MASK) >> CAM_INT_EN_ERR_CL_BWID_CFG_INT_EN_SHIFT)
226 
227 /*
228  * HIST_DONE_INT_EN (RW)
229  *
230  * Enable hist done int
231  */
232 #define CAM_INT_EN_HIST_DONE_INT_EN_MASK (0x1000U)
233 #define CAM_INT_EN_HIST_DONE_INT_EN_SHIFT (12U)
234 #define CAM_INT_EN_HIST_DONE_INT_EN_SET(x) (((uint32_t)(x) << CAM_INT_EN_HIST_DONE_INT_EN_SHIFT) & CAM_INT_EN_HIST_DONE_INT_EN_MASK)
235 #define CAM_INT_EN_HIST_DONE_INT_EN_GET(x) (((uint32_t)(x) & CAM_INT_EN_HIST_DONE_INT_EN_MASK) >> CAM_INT_EN_HIST_DONE_INT_EN_SHIFT)
236 
237 /*
238  * HRESP_ERR_EN (RW)
239  *
240  * Hresponse Error Enable. This bit enables the hresponse error interrupt.
241  * 0 Disable hresponse error interrupt
242  * 1 Enable hresponse error interrupt
243  */
244 #define CAM_INT_EN_HRESP_ERR_EN_MASK (0x800U)
245 #define CAM_INT_EN_HRESP_ERR_EN_SHIFT (11U)
246 #define CAM_INT_EN_HRESP_ERR_EN_SET(x) (((uint32_t)(x) << CAM_INT_EN_HRESP_ERR_EN_SHIFT) & CAM_INT_EN_HRESP_ERR_EN_MASK)
247 #define CAM_INT_EN_HRESP_ERR_EN_GET(x) (((uint32_t)(x) & CAM_INT_EN_HRESP_ERR_EN_MASK) >> CAM_INT_EN_HRESP_ERR_EN_SHIFT)
248 
249 /*
250  * EOF_INT_EN (RW)
251  *
252  * End-of-Frame Interrupt Enable. This bit enables and disables the EOF interrupt.
253  * 0 EOF interrupt is disabled.
254  * 1 EOF interrupt is generated when RX count value is reached.
255  */
256 #define CAM_INT_EN_EOF_INT_EN_MASK (0x200U)
257 #define CAM_INT_EN_EOF_INT_EN_SHIFT (9U)
258 #define CAM_INT_EN_EOF_INT_EN_SET(x) (((uint32_t)(x) << CAM_INT_EN_EOF_INT_EN_SHIFT) & CAM_INT_EN_EOF_INT_EN_MASK)
259 #define CAM_INT_EN_EOF_INT_EN_GET(x) (((uint32_t)(x) & CAM_INT_EN_EOF_INT_EN_MASK) >> CAM_INT_EN_EOF_INT_EN_SHIFT)
260 
261 /*
262  * RF_OR_INTEN (RW)
263  *
264  * RxFIFO Overrun Interrupt Enable. This bit enables the RX FIFO overrun interrupt.
265  * 0 RxFIFO overrun interrupt is disabled
266  * 1 RxFIFO overrun interrupt is enabled
267  */
268 #define CAM_INT_EN_RF_OR_INTEN_MASK (0x40U)
269 #define CAM_INT_EN_RF_OR_INTEN_SHIFT (6U)
270 #define CAM_INT_EN_RF_OR_INTEN_SET(x) (((uint32_t)(x) << CAM_INT_EN_RF_OR_INTEN_SHIFT) & CAM_INT_EN_RF_OR_INTEN_MASK)
271 #define CAM_INT_EN_RF_OR_INTEN_GET(x) (((uint32_t)(x) & CAM_INT_EN_RF_OR_INTEN_MASK) >> CAM_INT_EN_RF_OR_INTEN_SHIFT)
272 
273 /*
274  * FB2_DMA_DONE_INTEN (RW)
275  *
276  * Frame Buffer2 DMA Transfer Done Interrupt Enable. This bit enables the interrupt of Frame Buffer2 DMA
277  * transfer done.
278  * 0 Frame Buffer2 DMA Transfer Done interrupt disable
279  * 1 Frame Buffer2 DMA Transfer Done interrupt enable
280  */
281 #define CAM_INT_EN_FB2_DMA_DONE_INTEN_MASK (0x8U)
282 #define CAM_INT_EN_FB2_DMA_DONE_INTEN_SHIFT (3U)
283 #define CAM_INT_EN_FB2_DMA_DONE_INTEN_SET(x) (((uint32_t)(x) << CAM_INT_EN_FB2_DMA_DONE_INTEN_SHIFT) & CAM_INT_EN_FB2_DMA_DONE_INTEN_MASK)
284 #define CAM_INT_EN_FB2_DMA_DONE_INTEN_GET(x) (((uint32_t)(x) & CAM_INT_EN_FB2_DMA_DONE_INTEN_MASK) >> CAM_INT_EN_FB2_DMA_DONE_INTEN_SHIFT)
285 
286 /*
287  * FB1_DMA_DONE_INTEN (RW)
288  *
289  * Frame Buffer1 DMA Transfer Done Interrupt Enable. This bit enables the interrupt of Frame Buffer1 DMA
290  * transfer done.
291  * 0 Frame Buffer1 DMA Transfer Done interrupt disable
292  * 1 Frame Buffer1 DMA Transfer Done interrupt enable
293  */
294 #define CAM_INT_EN_FB1_DMA_DONE_INTEN_MASK (0x4U)
295 #define CAM_INT_EN_FB1_DMA_DONE_INTEN_SHIFT (2U)
296 #define CAM_INT_EN_FB1_DMA_DONE_INTEN_SET(x) (((uint32_t)(x) << CAM_INT_EN_FB1_DMA_DONE_INTEN_SHIFT) & CAM_INT_EN_FB1_DMA_DONE_INTEN_MASK)
297 #define CAM_INT_EN_FB1_DMA_DONE_INTEN_GET(x) (((uint32_t)(x) & CAM_INT_EN_FB1_DMA_DONE_INTEN_MASK) >> CAM_INT_EN_FB1_DMA_DONE_INTEN_SHIFT)
298 
299 /*
300  * SOF_INT_EN (RW)
301  *
302  * Start Of Frame (SOF) Interrupt Enable. This bit enables the SOF interrupt.
303  * 0 SOF interrupt disable
304  * 1 SOF interrupt enable
305  */
306 #define CAM_INT_EN_SOF_INT_EN_MASK (0x1U)
307 #define CAM_INT_EN_SOF_INT_EN_SHIFT (0U)
308 #define CAM_INT_EN_SOF_INT_EN_SET(x) (((uint32_t)(x) << CAM_INT_EN_SOF_INT_EN_SHIFT) & CAM_INT_EN_SOF_INT_EN_MASK)
309 #define CAM_INT_EN_SOF_INT_EN_GET(x) (((uint32_t)(x) & CAM_INT_EN_SOF_INT_EN_MASK) >> CAM_INT_EN_SOF_INT_EN_SHIFT)
310 
311 /* Bitfield definition for register: CR2 */
312 /*
313  * FRMCNT_15_0 (RO)
314  *
315  * Frame Counter. This is a 16-bit Frame Counter
316  * (Wraps around automatically after reaching the maximum)
317  */
318 #define CAM_CR2_FRMCNT_15_0_MASK (0xFFFF0000UL)
319 #define CAM_CR2_FRMCNT_15_0_SHIFT (16U)
320 #define CAM_CR2_FRMCNT_15_0_GET(x) (((uint32_t)(x) & CAM_CR2_FRMCNT_15_0_MASK) >> CAM_CR2_FRMCNT_15_0_SHIFT)
321 
322 /*
323  * FRMCNT_RST (RW)
324  *
325  * Frame Count Reset. Resets the Frame Counter.
326  * 0 Do not reset
327  * 1 Reset frame counter immediately
328  */
329 #define CAM_CR2_FRMCNT_RST_MASK (0x8000U)
330 #define CAM_CR2_FRMCNT_RST_SHIFT (15U)
331 #define CAM_CR2_FRMCNT_RST_SET(x) (((uint32_t)(x) << CAM_CR2_FRMCNT_RST_SHIFT) & CAM_CR2_FRMCNT_RST_MASK)
332 #define CAM_CR2_FRMCNT_RST_GET(x) (((uint32_t)(x) & CAM_CR2_FRMCNT_RST_MASK) >> CAM_CR2_FRMCNT_RST_SHIFT)
333 
334 /*
335  * RXFF_LEVEL (RW)
336  *
337  * RxFIFO Full Level. When the number of data in RxFIFO reaches this level, a RxFIFO full interrupt is generated, or an RXFIFO DMA request is sent.
338  * 000 4 Double words
339  * 001 8 Double words
340  * 010 16 Double words
341  * 011 24 Double words
342  * 100 32 Double words
343  * 101 48 Double words
344  * 110 64 Double words
345  * 111 96 Double words
346  */
347 #define CAM_CR2_RXFF_LEVEL_MASK (0xE00U)
348 #define CAM_CR2_RXFF_LEVEL_SHIFT (9U)
349 #define CAM_CR2_RXFF_LEVEL_SET(x) (((uint32_t)(x) << CAM_CR2_RXFF_LEVEL_SHIFT) & CAM_CR2_RXFF_LEVEL_MASK)
350 #define CAM_CR2_RXFF_LEVEL_GET(x) (((uint32_t)(x) & CAM_CR2_RXFF_LEVEL_MASK) >> CAM_CR2_RXFF_LEVEL_SHIFT)
351 
352 /*
353  * DMA_REQ_EN_RFF (RW)
354  *
355  * DMA Request Enable for RxFIFO. This bit enables the dma request from RxFIFO to the embedded DMA controller.
356  * 0 Disable the dma request
357  * 1 Enable the dma request. The UV Rx FIFO is only enabled to filling data in 2 plane mode.
358  */
359 #define CAM_CR2_DMA_REQ_EN_RFF_MASK (0x20U)
360 #define CAM_CR2_DMA_REQ_EN_RFF_SHIFT (5U)
361 #define CAM_CR2_DMA_REQ_EN_RFF_SET(x) (((uint32_t)(x) << CAM_CR2_DMA_REQ_EN_RFF_SHIFT) & CAM_CR2_DMA_REQ_EN_RFF_MASK)
362 #define CAM_CR2_DMA_REQ_EN_RFF_GET(x) (((uint32_t)(x) & CAM_CR2_DMA_REQ_EN_RFF_MASK) >> CAM_CR2_DMA_REQ_EN_RFF_SHIFT)
363 
364 /*
365  * CLRBITFORMAT (RW)
366  *
367  * Input Byte & bit sequence same as OV5640, except for Raw mode. Used only for internal ARGB conversion.
368  */
369 #define CAM_CR2_CLRBITFORMAT_MASK (0xFU)
370 #define CAM_CR2_CLRBITFORMAT_SHIFT (0U)
371 #define CAM_CR2_CLRBITFORMAT_SET(x) (((uint32_t)(x) << CAM_CR2_CLRBITFORMAT_SHIFT) & CAM_CR2_CLRBITFORMAT_MASK)
372 #define CAM_CR2_CLRBITFORMAT_GET(x) (((uint32_t)(x) & CAM_CR2_CLRBITFORMAT_MASK) >> CAM_CR2_CLRBITFORMAT_SHIFT)
373 
374 /* Bitfield definition for register: STA */
375 /*
376  * ERR_CL_BWID_CFG (W1C)
377  *
378  * The unsupported color (color_formats[3:0]) and bitwidth (sensor_bit_width[2:0]) configuation found
379  */
380 #define CAM_STA_ERR_CL_BWID_CFG_MASK (0x80000UL)
381 #define CAM_STA_ERR_CL_BWID_CFG_SHIFT (19U)
382 #define CAM_STA_ERR_CL_BWID_CFG_SET(x) (((uint32_t)(x) << CAM_STA_ERR_CL_BWID_CFG_SHIFT) & CAM_STA_ERR_CL_BWID_CFG_MASK)
383 #define CAM_STA_ERR_CL_BWID_CFG_GET(x) (((uint32_t)(x) & CAM_STA_ERR_CL_BWID_CFG_MASK) >> CAM_STA_ERR_CL_BWID_CFG_SHIFT)
384 
385 /*
386  * HIST_DONE (W1C)
387  *
388  * hist cal done
389  */
390 #define CAM_STA_HIST_DONE_MASK (0x40000UL)
391 #define CAM_STA_HIST_DONE_SHIFT (18U)
392 #define CAM_STA_HIST_DONE_SET(x) (((uint32_t)(x) << CAM_STA_HIST_DONE_SHIFT) & CAM_STA_HIST_DONE_MASK)
393 #define CAM_STA_HIST_DONE_GET(x) (((uint32_t)(x) & CAM_STA_HIST_DONE_MASK) >> CAM_STA_HIST_DONE_SHIFT)
394 
395 /*
396  * RF_OR_INT (W1C)
397  *
398  * RxFIFO Overrun Interrupt Status. Indicates the overflow status of the RxFIFO register. (Cleared by writing
399  * 1)
400  * 0 RXFIFO has not overflowed.
401  * 1 RXFIFO has overflowed.
402  */
403 #define CAM_STA_RF_OR_INT_MASK (0x2000U)
404 #define CAM_STA_RF_OR_INT_SHIFT (13U)
405 #define CAM_STA_RF_OR_INT_SET(x) (((uint32_t)(x) << CAM_STA_RF_OR_INT_SHIFT) & CAM_STA_RF_OR_INT_MASK)
406 #define CAM_STA_RF_OR_INT_GET(x) (((uint32_t)(x) & CAM_STA_RF_OR_INT_MASK) >> CAM_STA_RF_OR_INT_SHIFT)
407 
408 /*
409  * DMA_TSF_DONE_FB2 (W1C)
410  *
411  * DMA Transfer Done in Frame Buffer2. Indicates that the DMA transfer from RxFIFO to Frame Buffer2 is completed. It can trigger an interrupt if the corresponding enable bit is set in CAM_CR1. This bit can be cleared by by writing 1 or reflashing the RxFIFO dma controller in CAM_CR3. (Cleared by writing 1)
412  * 0 DMA transfer is not completed.
413  * 1 DMA transfer is completed.
414  */
415 #define CAM_STA_DMA_TSF_DONE_FB2_MASK (0x400U)
416 #define CAM_STA_DMA_TSF_DONE_FB2_SHIFT (10U)
417 #define CAM_STA_DMA_TSF_DONE_FB2_SET(x) (((uint32_t)(x) << CAM_STA_DMA_TSF_DONE_FB2_SHIFT) & CAM_STA_DMA_TSF_DONE_FB2_MASK)
418 #define CAM_STA_DMA_TSF_DONE_FB2_GET(x) (((uint32_t)(x) & CAM_STA_DMA_TSF_DONE_FB2_MASK) >> CAM_STA_DMA_TSF_DONE_FB2_SHIFT)
419 
420 /*
421  * DMA_TSF_DONE_FB1 (W1C)
422  *
423  * DMA Transfer Done in Frame Buffer1. Indicates that the DMA transfer from RxFIFO to Frame Buffer1 is completed. It can trigger an interrupt if the corresponding enable bit is set in CAM_CR1. This bit can be cleared by by writing 1 or reflashing the RxFIFO dma controller in CAM_CR3. (Cleared by writing 1)
424  * 0 DMA transfer is not completed.
425  * 1 DMA transfer is completed.
426  */
427 #define CAM_STA_DMA_TSF_DONE_FB1_MASK (0x200U)
428 #define CAM_STA_DMA_TSF_DONE_FB1_SHIFT (9U)
429 #define CAM_STA_DMA_TSF_DONE_FB1_SET(x) (((uint32_t)(x) << CAM_STA_DMA_TSF_DONE_FB1_SHIFT) & CAM_STA_DMA_TSF_DONE_FB1_MASK)
430 #define CAM_STA_DMA_TSF_DONE_FB1_GET(x) (((uint32_t)(x) & CAM_STA_DMA_TSF_DONE_FB1_MASK) >> CAM_STA_DMA_TSF_DONE_FB1_SHIFT)
431 
432 /*
433  * EOF_INT (W1C)
434  *
435  * End of Frame (EOF) Interrupt Status. Indicates when EOF is detected. (Cleared by writing 1)
436  * 0 EOF is not detected.
437  * 1 EOF is detected.
438  */
439 #define CAM_STA_EOF_INT_MASK (0x80U)
440 #define CAM_STA_EOF_INT_SHIFT (7U)
441 #define CAM_STA_EOF_INT_SET(x) (((uint32_t)(x) << CAM_STA_EOF_INT_SHIFT) & CAM_STA_EOF_INT_MASK)
442 #define CAM_STA_EOF_INT_GET(x) (((uint32_t)(x) & CAM_STA_EOF_INT_MASK) >> CAM_STA_EOF_INT_SHIFT)
443 
444 /*
445  * SOF_INT (W1C)
446  *
447  * Start of Frame Interrupt Status. Indicates when SOF is detected. (Cleared by writing 1)
448  * 0 SOF is not detected.
449  * 1 SOF is detected.
450  */
451 #define CAM_STA_SOF_INT_MASK (0x40U)
452 #define CAM_STA_SOF_INT_SHIFT (6U)
453 #define CAM_STA_SOF_INT_SET(x) (((uint32_t)(x) << CAM_STA_SOF_INT_SHIFT) & CAM_STA_SOF_INT_MASK)
454 #define CAM_STA_SOF_INT_GET(x) (((uint32_t)(x) & CAM_STA_SOF_INT_MASK) >> CAM_STA_SOF_INT_SHIFT)
455 
456 /*
457  * HRESP_ERR_INT (W1C)
458  *
459  * Hresponse Error Interrupt Status. Indicates that a hresponse error has been detected. (Cleared by writing
460  * 1)
461  * 0 No hresponse error.
462  * 1 Hresponse error is detected.
463  */
464 #define CAM_STA_HRESP_ERR_INT_MASK (0x4U)
465 #define CAM_STA_HRESP_ERR_INT_SHIFT (2U)
466 #define CAM_STA_HRESP_ERR_INT_SET(x) (((uint32_t)(x) << CAM_STA_HRESP_ERR_INT_SHIFT) & CAM_STA_HRESP_ERR_INT_MASK)
467 #define CAM_STA_HRESP_ERR_INT_GET(x) (((uint32_t)(x) & CAM_STA_HRESP_ERR_INT_MASK) >> CAM_STA_HRESP_ERR_INT_SHIFT)
468 
469 /* Bitfield definition for register: DMASA_FB1 */
470 /*
471  * PTR (RW)
472  *
473  * DMA Start Address in Frame Buffer1. Indicates the start address to write data. The embedded DMA controller will read data from RxFIFO and write it from this address through AHB bus. The address should be double words aligned.
474  * In Two-Plane Mode, Y buffer1
475  */
476 #define CAM_DMASA_FB1_PTR_MASK (0xFFFFFFFCUL)
477 #define CAM_DMASA_FB1_PTR_SHIFT (2U)
478 #define CAM_DMASA_FB1_PTR_SET(x) (((uint32_t)(x) << CAM_DMASA_FB1_PTR_SHIFT) & CAM_DMASA_FB1_PTR_MASK)
479 #define CAM_DMASA_FB1_PTR_GET(x) (((uint32_t)(x) & CAM_DMASA_FB1_PTR_MASK) >> CAM_DMASA_FB1_PTR_SHIFT)
480 
481 /* Bitfield definition for register: DMASA_FB2 */
482 /*
483  * PTR (RW)
484  *
485  * DMA Start Address in Frame Buffer2. Indicates the start address to write data. The embedded DMA controller will read data from RxFIFO and write it from this address through AHB bus. The address should be double words aligned.
486  * In Two-Plane Mode, Y buffer2
487  */
488 #define CAM_DMASA_FB2_PTR_MASK (0xFFFFFFFCUL)
489 #define CAM_DMASA_FB2_PTR_SHIFT (2U)
490 #define CAM_DMASA_FB2_PTR_SET(x) (((uint32_t)(x) << CAM_DMASA_FB2_PTR_SHIFT) & CAM_DMASA_FB2_PTR_MASK)
491 #define CAM_DMASA_FB2_PTR_GET(x) (((uint32_t)(x) & CAM_DMASA_FB2_PTR_MASK) >> CAM_DMASA_FB2_PTR_SHIFT)
492 
493 /* Bitfield definition for register: BUF_PARA */
494 /*
495  * LINEBSP_STRIDE (RW)
496  *
497  * Line Blank Space Stride. Indicates the space between the end of line image storage and the start of a new line storage in the frame buffer.
498  * The width of the line storage in frame buffer(in double words) minus the width of the image(in double words) is the stride. The stride should be double words aligned. The embedded DMA controller will skip the stride before starting to write the next row of the image.
499  */
500 #define CAM_BUF_PARA_LINEBSP_STRIDE_MASK (0xFFFFU)
501 #define CAM_BUF_PARA_LINEBSP_STRIDE_SHIFT (0U)
502 #define CAM_BUF_PARA_LINEBSP_STRIDE_SET(x) (((uint32_t)(x) << CAM_BUF_PARA_LINEBSP_STRIDE_SHIFT) & CAM_BUF_PARA_LINEBSP_STRIDE_MASK)
503 #define CAM_BUF_PARA_LINEBSP_STRIDE_GET(x) (((uint32_t)(x) & CAM_BUF_PARA_LINEBSP_STRIDE_MASK) >> CAM_BUF_PARA_LINEBSP_STRIDE_SHIFT)
504 
505 /* Bitfield definition for register: IDEAL_WN_SIZE */
506 /*
507  * HEIGHT (RW)
508  *
509  * Image Height. Indicates how many active pixels in a column of the image from the sensor.
510  */
511 #define CAM_IDEAL_WN_SIZE_HEIGHT_MASK (0xFFFF0000UL)
512 #define CAM_IDEAL_WN_SIZE_HEIGHT_SHIFT (16U)
513 #define CAM_IDEAL_WN_SIZE_HEIGHT_SET(x) (((uint32_t)(x) << CAM_IDEAL_WN_SIZE_HEIGHT_SHIFT) & CAM_IDEAL_WN_SIZE_HEIGHT_MASK)
514 #define CAM_IDEAL_WN_SIZE_HEIGHT_GET(x) (((uint32_t)(x) & CAM_IDEAL_WN_SIZE_HEIGHT_MASK) >> CAM_IDEAL_WN_SIZE_HEIGHT_SHIFT)
515 
516 /*
517  * WIDTH (RW)
518  *
519  * Image Width. Indicates how many active pixels in a line of the image from the sensor.
520  * The number of bytes to be transferred is re-calculated automatically in hardware based on cr1[color_ext] and cr1[store_mode]. Default value is 2*pixel number.
521  * As the input data from the sensor is 8-bit/pixel format, the IMAGE_WIDTH should be a multiple of 8 pixels.
522  */
523 #define CAM_IDEAL_WN_SIZE_WIDTH_MASK (0xFFFFU)
524 #define CAM_IDEAL_WN_SIZE_WIDTH_SHIFT (0U)
525 #define CAM_IDEAL_WN_SIZE_WIDTH_SET(x) (((uint32_t)(x) << CAM_IDEAL_WN_SIZE_WIDTH_SHIFT) & CAM_IDEAL_WN_SIZE_WIDTH_MASK)
526 #define CAM_IDEAL_WN_SIZE_WIDTH_GET(x) (((uint32_t)(x) & CAM_IDEAL_WN_SIZE_WIDTH_MASK) >> CAM_IDEAL_WN_SIZE_WIDTH_SHIFT)
527 
528 /* Bitfield definition for register: CR18 */
529 /*
530  * CAM_ENABLE (RW)
531  *
532  * CAM global enable signal. Only when this bit is 1, CAM can start to receive the data and store to memory.
533  */
534 #define CAM_CR18_CAM_ENABLE_MASK (0x80000000UL)
535 #define CAM_CR18_CAM_ENABLE_SHIFT (31U)
536 #define CAM_CR18_CAM_ENABLE_SET(x) (((uint32_t)(x) << CAM_CR18_CAM_ENABLE_SHIFT) & CAM_CR18_CAM_ENABLE_MASK)
537 #define CAM_CR18_CAM_ENABLE_GET(x) (((uint32_t)(x) & CAM_CR18_CAM_ENABLE_MASK) >> CAM_CR18_CAM_ENABLE_SHIFT)
538 
539 /*
540  * AWQOS (RW)
541  *
542  * AWQOS for bus fabric arbitration
543  */
544 #define CAM_CR18_AWQOS_MASK (0x780U)
545 #define CAM_CR18_AWQOS_SHIFT (7U)
546 #define CAM_CR18_AWQOS_SET(x) (((uint32_t)(x) << CAM_CR18_AWQOS_SHIFT) & CAM_CR18_AWQOS_MASK)
547 #define CAM_CR18_AWQOS_GET(x) (((uint32_t)(x) & CAM_CR18_AWQOS_MASK) >> CAM_CR18_AWQOS_SHIFT)
548 
549 /* Bitfield definition for register: DMASA_UV1 */
550 /*
551  * PTR (RW)
552  *
553  * Two Plane UV Buffer Start Address 1
554  */
555 #define CAM_DMASA_UV1_PTR_MASK (0xFFFFFFFCUL)
556 #define CAM_DMASA_UV1_PTR_SHIFT (2U)
557 #define CAM_DMASA_UV1_PTR_SET(x) (((uint32_t)(x) << CAM_DMASA_UV1_PTR_SHIFT) & CAM_DMASA_UV1_PTR_MASK)
558 #define CAM_DMASA_UV1_PTR_GET(x) (((uint32_t)(x) & CAM_DMASA_UV1_PTR_MASK) >> CAM_DMASA_UV1_PTR_SHIFT)
559 
560 /* Bitfield definition for register: DMASA_UV2 */
561 /*
562  * PTR (RW)
563  *
564  * Two Plane UV Buffer Start Address 2
565  */
566 #define CAM_DMASA_UV2_PTR_MASK (0xFFFFFFFCUL)
567 #define CAM_DMASA_UV2_PTR_SHIFT (2U)
568 #define CAM_DMASA_UV2_PTR_SET(x) (((uint32_t)(x) << CAM_DMASA_UV2_PTR_SHIFT) & CAM_DMASA_UV2_PTR_MASK)
569 #define CAM_DMASA_UV2_PTR_GET(x) (((uint32_t)(x) & CAM_DMASA_UV2_PTR_MASK) >> CAM_DMASA_UV2_PTR_SHIFT)
570 
571 /* Bitfield definition for register: CR20 */
572 /*
573  * BINARY_EN (RW)
574  *
575  * binary picture output enable
576  */
577 #define CAM_CR20_BINARY_EN_MASK (0x80000000UL)
578 #define CAM_CR20_BINARY_EN_SHIFT (31U)
579 #define CAM_CR20_BINARY_EN_SET(x) (((uint32_t)(x) << CAM_CR20_BINARY_EN_SHIFT) & CAM_CR20_BINARY_EN_MASK)
580 #define CAM_CR20_BINARY_EN_GET(x) (((uint32_t)(x) & CAM_CR20_BINARY_EN_MASK) >> CAM_CR20_BINARY_EN_SHIFT)
581 
582 /*
583  * HISTOGRAM_EN (RW)
584  *
585  * histogarm enable
586  */
587 #define CAM_CR20_HISTOGRAM_EN_MASK (0x40000000UL)
588 #define CAM_CR20_HISTOGRAM_EN_SHIFT (30U)
589 #define CAM_CR20_HISTOGRAM_EN_SET(x) (((uint32_t)(x) << CAM_CR20_HISTOGRAM_EN_SHIFT) & CAM_CR20_HISTOGRAM_EN_MASK)
590 #define CAM_CR20_HISTOGRAM_EN_GET(x) (((uint32_t)(x) & CAM_CR20_HISTOGRAM_EN_MASK) >> CAM_CR20_HISTOGRAM_EN_SHIFT)
591 
592 /*
593  * BIG_END (RW)
594  *
595  * Asserted when binary output is in big-endian type, which mean the right most data is at the LSBs. Take function only inside the 32-bit word.
596  */
597 #define CAM_CR20_BIG_END_MASK (0x100U)
598 #define CAM_CR20_BIG_END_SHIFT (8U)
599 #define CAM_CR20_BIG_END_SET(x) (((uint32_t)(x) << CAM_CR20_BIG_END_SHIFT) & CAM_CR20_BIG_END_MASK)
600 #define CAM_CR20_BIG_END_GET(x) (((uint32_t)(x) & CAM_CR20_BIG_END_MASK) >> CAM_CR20_BIG_END_SHIFT)
601 
602 /*
603  * THRESHOLD (RW)
604  *
605  * Threshold to generate binary color. Bin 1 is output if the pixel is greater than the threshold.
606  */
607 #define CAM_CR20_THRESHOLD_MASK (0xFFU)
608 #define CAM_CR20_THRESHOLD_SHIFT (0U)
609 #define CAM_CR20_THRESHOLD_SET(x) (((uint32_t)(x) << CAM_CR20_THRESHOLD_SHIFT) & CAM_CR20_THRESHOLD_MASK)
610 #define CAM_CR20_THRESHOLD_GET(x) (((uint32_t)(x) & CAM_CR20_THRESHOLD_MASK) >> CAM_CR20_THRESHOLD_SHIFT)
611 
612 /* Bitfield definition for register: CSC_COEF0 */
613 /*
614  * YCBCR_MODE (RW)
615  *
616  * This bit changes the behavior when performing U/V converting.
617  * 0b - Converting YUV to RGB data
618  * 1b - Converting YCbCr to RGB data
619  */
620 #define CAM_CSC_COEF0_YCBCR_MODE_MASK (0x80000000UL)
621 #define CAM_CSC_COEF0_YCBCR_MODE_SHIFT (31U)
622 #define CAM_CSC_COEF0_YCBCR_MODE_SET(x) (((uint32_t)(x) << CAM_CSC_COEF0_YCBCR_MODE_SHIFT) & CAM_CSC_COEF0_YCBCR_MODE_MASK)
623 #define CAM_CSC_COEF0_YCBCR_MODE_GET(x) (((uint32_t)(x) & CAM_CSC_COEF0_YCBCR_MODE_MASK) >> CAM_CSC_COEF0_YCBCR_MODE_SHIFT)
624 
625 /*
626  * ENABLE (RW)
627  *
628  * Enable the CSC unit
629  * 0b - The CSC is bypassed and the input pixels are RGB data already
630  * 1b - The CSC is enabled and the pixels will be converted to RGB data
631  */
632 #define CAM_CSC_COEF0_ENABLE_MASK (0x40000000UL)
633 #define CAM_CSC_COEF0_ENABLE_SHIFT (30U)
634 #define CAM_CSC_COEF0_ENABLE_SET(x) (((uint32_t)(x) << CAM_CSC_COEF0_ENABLE_SHIFT) & CAM_CSC_COEF0_ENABLE_MASK)
635 #define CAM_CSC_COEF0_ENABLE_GET(x) (((uint32_t)(x) & CAM_CSC_COEF0_ENABLE_MASK) >> CAM_CSC_COEF0_ENABLE_SHIFT)
636 
637 /*
638  * C0 (RW)
639  *
640  * Two's compliment Y multiplier coefficient. YUV=0x100 (1.000) YCbCr=0x12A (1.164)
641  */
642 #define CAM_CSC_COEF0_C0_MASK (0x1FFC0000UL)
643 #define CAM_CSC_COEF0_C0_SHIFT (18U)
644 #define CAM_CSC_COEF0_C0_SET(x) (((uint32_t)(x) << CAM_CSC_COEF0_C0_SHIFT) & CAM_CSC_COEF0_C0_MASK)
645 #define CAM_CSC_COEF0_C0_GET(x) (((uint32_t)(x) & CAM_CSC_COEF0_C0_MASK) >> CAM_CSC_COEF0_C0_SHIFT)
646 
647 /*
648  * UV_OFFSET (RW)
649  *
650  * Two's compliment phase offset implicit for CbCr data. Generally used for YCbCr to RGB conversion.
651  * YCbCr=0x180, YUV=0x000 (typically -128 or 0x180 to indicate normalized -0.5 to 0.5 range).
652  */
653 #define CAM_CSC_COEF0_UV_OFFSET_MASK (0x3FE00UL)
654 #define CAM_CSC_COEF0_UV_OFFSET_SHIFT (9U)
655 #define CAM_CSC_COEF0_UV_OFFSET_SET(x) (((uint32_t)(x) << CAM_CSC_COEF0_UV_OFFSET_SHIFT) & CAM_CSC_COEF0_UV_OFFSET_MASK)
656 #define CAM_CSC_COEF0_UV_OFFSET_GET(x) (((uint32_t)(x) & CAM_CSC_COEF0_UV_OFFSET_MASK) >> CAM_CSC_COEF0_UV_OFFSET_SHIFT)
657 
658 /*
659  * Y_OFFSET (RW)
660  *
661  * Two's compliment amplitude offset implicit in the Y data. For YUV, this is typically 0 and for YCbCr, this is
662  * typically -16 (0x1F0).
663  */
664 #define CAM_CSC_COEF0_Y_OFFSET_MASK (0x1FFU)
665 #define CAM_CSC_COEF0_Y_OFFSET_SHIFT (0U)
666 #define CAM_CSC_COEF0_Y_OFFSET_SET(x) (((uint32_t)(x) << CAM_CSC_COEF0_Y_OFFSET_SHIFT) & CAM_CSC_COEF0_Y_OFFSET_MASK)
667 #define CAM_CSC_COEF0_Y_OFFSET_GET(x) (((uint32_t)(x) & CAM_CSC_COEF0_Y_OFFSET_MASK) >> CAM_CSC_COEF0_Y_OFFSET_SHIFT)
668 
669 /* Bitfield definition for register: CSC_COEF1 */
670 /*
671  * C1 (RW)
672  *
673  * Two's compliment Red V/Cr multiplier coefficient. YUV=0x123 (1.140) YCbCr=0x198 (1.596).
674  */
675 #define CAM_CSC_COEF1_C1_MASK (0x7FF0000UL)
676 #define CAM_CSC_COEF1_C1_SHIFT (16U)
677 #define CAM_CSC_COEF1_C1_SET(x) (((uint32_t)(x) << CAM_CSC_COEF1_C1_SHIFT) & CAM_CSC_COEF1_C1_MASK)
678 #define CAM_CSC_COEF1_C1_GET(x) (((uint32_t)(x) & CAM_CSC_COEF1_C1_MASK) >> CAM_CSC_COEF1_C1_SHIFT)
679 
680 /*
681  * C4 (RW)
682  *
683  * Two's compliment Blue U/Cb multiplier coefficient. YUV=0x208 (2.032) YCbCr=0x204 (2.017).
684  */
685 #define CAM_CSC_COEF1_C4_MASK (0x7FFU)
686 #define CAM_CSC_COEF1_C4_SHIFT (0U)
687 #define CAM_CSC_COEF1_C4_SET(x) (((uint32_t)(x) << CAM_CSC_COEF1_C4_SHIFT) & CAM_CSC_COEF1_C4_MASK)
688 #define CAM_CSC_COEF1_C4_GET(x) (((uint32_t)(x) & CAM_CSC_COEF1_C4_MASK) >> CAM_CSC_COEF1_C4_SHIFT)
689 
690 /* Bitfield definition for register: CSC_COEF2 */
691 /*
692  * C2 (RW)
693  *
694  * Two's compliment Green V/Cr multiplier coefficient. YUV=0x76B (-0.581) YCbCr=0x730 (-0.813).
695  */
696 #define CAM_CSC_COEF2_C2_MASK (0x7FF0000UL)
697 #define CAM_CSC_COEF2_C2_SHIFT (16U)
698 #define CAM_CSC_COEF2_C2_SET(x) (((uint32_t)(x) << CAM_CSC_COEF2_C2_SHIFT) & CAM_CSC_COEF2_C2_MASK)
699 #define CAM_CSC_COEF2_C2_GET(x) (((uint32_t)(x) & CAM_CSC_COEF2_C2_MASK) >> CAM_CSC_COEF2_C2_SHIFT)
700 
701 /*
702  * C3 (RW)
703  *
704  * Two's compliment Green U/Cb multiplier coefficient. YUV=0x79C (-0.394) YCbCr=0x79C (-0.392).
705  */
706 #define CAM_CSC_COEF2_C3_MASK (0x7FFU)
707 #define CAM_CSC_COEF2_C3_SHIFT (0U)
708 #define CAM_CSC_COEF2_C3_SET(x) (((uint32_t)(x) << CAM_CSC_COEF2_C3_SHIFT) & CAM_CSC_COEF2_C3_MASK)
709 #define CAM_CSC_COEF2_C3_GET(x) (((uint32_t)(x) & CAM_CSC_COEF2_C3_MASK) >> CAM_CSC_COEF2_C3_SHIFT)
710 
711 /* Bitfield definition for register: CLRKEY_LOW */
712 /*
713  * LIMIT (RW)
714  *
715  * Low range of color key applied to PS buffer. To disable PS colorkeying, set the low colorkey to 0xFFFFFF and the high colorkey to 0x000000.
716  */
717 #define CAM_CLRKEY_LOW_LIMIT_MASK (0xFFFFFFUL)
718 #define CAM_CLRKEY_LOW_LIMIT_SHIFT (0U)
719 #define CAM_CLRKEY_LOW_LIMIT_SET(x) (((uint32_t)(x) << CAM_CLRKEY_LOW_LIMIT_SHIFT) & CAM_CLRKEY_LOW_LIMIT_MASK)
720 #define CAM_CLRKEY_LOW_LIMIT_GET(x) (((uint32_t)(x) & CAM_CLRKEY_LOW_LIMIT_MASK) >> CAM_CLRKEY_LOW_LIMIT_SHIFT)
721 
722 /* Bitfield definition for register: CLRKEY_HIGH */
723 /*
724  * LIMIT (RW)
725  *
726  * Low range of color key applied to PS buffer. To disable PS colorkeying, set the low colorkey to 0xFFFFFF and the high colorkey to 0x000000.
727  */
728 #define CAM_CLRKEY_HIGH_LIMIT_MASK (0xFFFFFFUL)
729 #define CAM_CLRKEY_HIGH_LIMIT_SHIFT (0U)
730 #define CAM_CLRKEY_HIGH_LIMIT_SET(x) (((uint32_t)(x) << CAM_CLRKEY_HIGH_LIMIT_SHIFT) & CAM_CLRKEY_HIGH_LIMIT_MASK)
731 #define CAM_CLRKEY_HIGH_LIMIT_GET(x) (((uint32_t)(x) & CAM_CLRKEY_HIGH_LIMIT_MASK) >> CAM_CLRKEY_HIGH_LIMIT_SHIFT)
732 
733 /* Bitfield definition for register array: HISTOGRAM_FIFO */
734 /*
735  * HIST_Y (RO)
736  *
737  * the appearance of bin x (x=(address-DATA0)/4)
738  */
739 #define CAM_HISTOGRAM_FIFO_HIST_Y_MASK (0xFFFFFFUL)
740 #define CAM_HISTOGRAM_FIFO_HIST_Y_SHIFT (0U)
741 #define CAM_HISTOGRAM_FIFO_HIST_Y_GET(x) (((uint32_t)(x) & CAM_HISTOGRAM_FIFO_HIST_Y_MASK) >> CAM_HISTOGRAM_FIFO_HIST_Y_SHIFT)
742 
743 
744 
745 /* HISTOGRAM_FIFO register group index macro definition */
746 #define CAM_HISTOGRAM_FIFO_DATA0 (0UL)
747 #define CAM_HISTOGRAM_FIFO_DATA1 (1UL)
748 #define CAM_HISTOGRAM_FIFO_DATA2 (2UL)
749 #define CAM_HISTOGRAM_FIFO_DATA3 (3UL)
750 #define CAM_HISTOGRAM_FIFO_DATA4 (4UL)
751 #define CAM_HISTOGRAM_FIFO_DATA5 (5UL)
752 #define CAM_HISTOGRAM_FIFO_DATA6 (6UL)
753 #define CAM_HISTOGRAM_FIFO_DATA7 (7UL)
754 #define CAM_HISTOGRAM_FIFO_DATA8 (8UL)
755 #define CAM_HISTOGRAM_FIFO_DATA9 (9UL)
756 #define CAM_HISTOGRAM_FIFO_DATA10 (10UL)
757 #define CAM_HISTOGRAM_FIFO_DATA11 (11UL)
758 #define CAM_HISTOGRAM_FIFO_DATA12 (12UL)
759 #define CAM_HISTOGRAM_FIFO_DATA13 (13UL)
760 #define CAM_HISTOGRAM_FIFO_DATA14 (14UL)
761 #define CAM_HISTOGRAM_FIFO_DATA15 (15UL)
762 #define CAM_HISTOGRAM_FIFO_DATA16 (16UL)
763 #define CAM_HISTOGRAM_FIFO_DATA17 (17UL)
764 #define CAM_HISTOGRAM_FIFO_DATA18 (18UL)
765 #define CAM_HISTOGRAM_FIFO_DATA19 (19UL)
766 #define CAM_HISTOGRAM_FIFO_DATA20 (20UL)
767 #define CAM_HISTOGRAM_FIFO_DATA21 (21UL)
768 #define CAM_HISTOGRAM_FIFO_DATA22 (22UL)
769 #define CAM_HISTOGRAM_FIFO_DATA23 (23UL)
770 #define CAM_HISTOGRAM_FIFO_DATA24 (24UL)
771 #define CAM_HISTOGRAM_FIFO_DATA25 (25UL)
772 #define CAM_HISTOGRAM_FIFO_DATA26 (26UL)
773 #define CAM_HISTOGRAM_FIFO_DATA27 (27UL)
774 #define CAM_HISTOGRAM_FIFO_DATA28 (28UL)
775 #define CAM_HISTOGRAM_FIFO_DATA29 (29UL)
776 #define CAM_HISTOGRAM_FIFO_DATA30 (30UL)
777 #define CAM_HISTOGRAM_FIFO_DATA31 (31UL)
778 #define CAM_HISTOGRAM_FIFO_DATA32 (32UL)
779 #define CAM_HISTOGRAM_FIFO_DATA33 (33UL)
780 #define CAM_HISTOGRAM_FIFO_DATA34 (34UL)
781 #define CAM_HISTOGRAM_FIFO_DATA35 (35UL)
782 #define CAM_HISTOGRAM_FIFO_DATA36 (36UL)
783 #define CAM_HISTOGRAM_FIFO_DATA37 (37UL)
784 #define CAM_HISTOGRAM_FIFO_DATA38 (38UL)
785 #define CAM_HISTOGRAM_FIFO_DATA39 (39UL)
786 #define CAM_HISTOGRAM_FIFO_DATA40 (40UL)
787 #define CAM_HISTOGRAM_FIFO_DATA41 (41UL)
788 #define CAM_HISTOGRAM_FIFO_DATA42 (42UL)
789 #define CAM_HISTOGRAM_FIFO_DATA43 (43UL)
790 #define CAM_HISTOGRAM_FIFO_DATA44 (44UL)
791 #define CAM_HISTOGRAM_FIFO_DATA45 (45UL)
792 #define CAM_HISTOGRAM_FIFO_DATA46 (46UL)
793 #define CAM_HISTOGRAM_FIFO_DATA47 (47UL)
794 #define CAM_HISTOGRAM_FIFO_DATA48 (48UL)
795 #define CAM_HISTOGRAM_FIFO_DATA49 (49UL)
796 #define CAM_HISTOGRAM_FIFO_DATA50 (50UL)
797 #define CAM_HISTOGRAM_FIFO_DATA51 (51UL)
798 #define CAM_HISTOGRAM_FIFO_DATA52 (52UL)
799 #define CAM_HISTOGRAM_FIFO_DATA53 (53UL)
800 #define CAM_HISTOGRAM_FIFO_DATA54 (54UL)
801 #define CAM_HISTOGRAM_FIFO_DATA55 (55UL)
802 #define CAM_HISTOGRAM_FIFO_DATA56 (56UL)
803 #define CAM_HISTOGRAM_FIFO_DATA57 (57UL)
804 #define CAM_HISTOGRAM_FIFO_DATA58 (58UL)
805 #define CAM_HISTOGRAM_FIFO_DATA59 (59UL)
806 #define CAM_HISTOGRAM_FIFO_DATA60 (60UL)
807 #define CAM_HISTOGRAM_FIFO_DATA61 (61UL)
808 #define CAM_HISTOGRAM_FIFO_DATA62 (62UL)
809 #define CAM_HISTOGRAM_FIFO_DATA63 (63UL)
810 #define CAM_HISTOGRAM_FIFO_DATA64 (64UL)
811 #define CAM_HISTOGRAM_FIFO_DATA65 (65UL)
812 #define CAM_HISTOGRAM_FIFO_DATA66 (66UL)
813 #define CAM_HISTOGRAM_FIFO_DATA67 (67UL)
814 #define CAM_HISTOGRAM_FIFO_DATA68 (68UL)
815 #define CAM_HISTOGRAM_FIFO_DATA69 (69UL)
816 #define CAM_HISTOGRAM_FIFO_DATA70 (70UL)
817 #define CAM_HISTOGRAM_FIFO_DATA71 (71UL)
818 #define CAM_HISTOGRAM_FIFO_DATA72 (72UL)
819 #define CAM_HISTOGRAM_FIFO_DATA73 (73UL)
820 #define CAM_HISTOGRAM_FIFO_DATA74 (74UL)
821 #define CAM_HISTOGRAM_FIFO_DATA75 (75UL)
822 #define CAM_HISTOGRAM_FIFO_DATA76 (76UL)
823 #define CAM_HISTOGRAM_FIFO_DATA77 (77UL)
824 #define CAM_HISTOGRAM_FIFO_DATA78 (78UL)
825 #define CAM_HISTOGRAM_FIFO_DATA79 (79UL)
826 #define CAM_HISTOGRAM_FIFO_DATA80 (80UL)
827 #define CAM_HISTOGRAM_FIFO_DATA81 (81UL)
828 #define CAM_HISTOGRAM_FIFO_DATA82 (82UL)
829 #define CAM_HISTOGRAM_FIFO_DATA83 (83UL)
830 #define CAM_HISTOGRAM_FIFO_DATA84 (84UL)
831 #define CAM_HISTOGRAM_FIFO_DATA85 (85UL)
832 #define CAM_HISTOGRAM_FIFO_DATA86 (86UL)
833 #define CAM_HISTOGRAM_FIFO_DATA87 (87UL)
834 #define CAM_HISTOGRAM_FIFO_DATA88 (88UL)
835 #define CAM_HISTOGRAM_FIFO_DATA89 (89UL)
836 #define CAM_HISTOGRAM_FIFO_DATA90 (90UL)
837 #define CAM_HISTOGRAM_FIFO_DATA91 (91UL)
838 #define CAM_HISTOGRAM_FIFO_DATA92 (92UL)
839 #define CAM_HISTOGRAM_FIFO_DATA93 (93UL)
840 #define CAM_HISTOGRAM_FIFO_DATA94 (94UL)
841 #define CAM_HISTOGRAM_FIFO_DATA95 (95UL)
842 #define CAM_HISTOGRAM_FIFO_DATA96 (96UL)
843 #define CAM_HISTOGRAM_FIFO_DATA97 (97UL)
844 #define CAM_HISTOGRAM_FIFO_DATA98 (98UL)
845 #define CAM_HISTOGRAM_FIFO_DATA99 (99UL)
846 #define CAM_HISTOGRAM_FIFO_DATA100 (100UL)
847 #define CAM_HISTOGRAM_FIFO_DATA101 (101UL)
848 #define CAM_HISTOGRAM_FIFO_DATA102 (102UL)
849 #define CAM_HISTOGRAM_FIFO_DATA103 (103UL)
850 #define CAM_HISTOGRAM_FIFO_DATA104 (104UL)
851 #define CAM_HISTOGRAM_FIFO_DATA105 (105UL)
852 #define CAM_HISTOGRAM_FIFO_DATA106 (106UL)
853 #define CAM_HISTOGRAM_FIFO_DATA107 (107UL)
854 #define CAM_HISTOGRAM_FIFO_DATA108 (108UL)
855 #define CAM_HISTOGRAM_FIFO_DATA109 (109UL)
856 #define CAM_HISTOGRAM_FIFO_DATA110 (110UL)
857 #define CAM_HISTOGRAM_FIFO_DATA111 (111UL)
858 #define CAM_HISTOGRAM_FIFO_DATA112 (112UL)
859 #define CAM_HISTOGRAM_FIFO_DATA113 (113UL)
860 #define CAM_HISTOGRAM_FIFO_DATA114 (114UL)
861 #define CAM_HISTOGRAM_FIFO_DATA115 (115UL)
862 #define CAM_HISTOGRAM_FIFO_DATA116 (116UL)
863 #define CAM_HISTOGRAM_FIFO_DATA117 (117UL)
864 #define CAM_HISTOGRAM_FIFO_DATA118 (118UL)
865 #define CAM_HISTOGRAM_FIFO_DATA119 (119UL)
866 #define CAM_HISTOGRAM_FIFO_DATA120 (120UL)
867 #define CAM_HISTOGRAM_FIFO_DATA121 (121UL)
868 #define CAM_HISTOGRAM_FIFO_DATA122 (122UL)
869 #define CAM_HISTOGRAM_FIFO_DATA123 (123UL)
870 #define CAM_HISTOGRAM_FIFO_DATA124 (124UL)
871 #define CAM_HISTOGRAM_FIFO_DATA125 (125UL)
872 #define CAM_HISTOGRAM_FIFO_DATA126 (126UL)
873 #define CAM_HISTOGRAM_FIFO_DATA127 (127UL)
874 #define CAM_HISTOGRAM_FIFO_DATA128 (128UL)
875 #define CAM_HISTOGRAM_FIFO_DATA129 (129UL)
876 #define CAM_HISTOGRAM_FIFO_DATA130 (130UL)
877 #define CAM_HISTOGRAM_FIFO_DATA131 (131UL)
878 #define CAM_HISTOGRAM_FIFO_DATA132 (132UL)
879 #define CAM_HISTOGRAM_FIFO_DATA133 (133UL)
880 #define CAM_HISTOGRAM_FIFO_DATA134 (134UL)
881 #define CAM_HISTOGRAM_FIFO_DATA135 (135UL)
882 #define CAM_HISTOGRAM_FIFO_DATA136 (136UL)
883 #define CAM_HISTOGRAM_FIFO_DATA137 (137UL)
884 #define CAM_HISTOGRAM_FIFO_DATA138 (138UL)
885 #define CAM_HISTOGRAM_FIFO_DATA139 (139UL)
886 #define CAM_HISTOGRAM_FIFO_DATA140 (140UL)
887 #define CAM_HISTOGRAM_FIFO_DATA141 (141UL)
888 #define CAM_HISTOGRAM_FIFO_DATA142 (142UL)
889 #define CAM_HISTOGRAM_FIFO_DATA143 (143UL)
890 #define CAM_HISTOGRAM_FIFO_DATA144 (144UL)
891 #define CAM_HISTOGRAM_FIFO_DATA145 (145UL)
892 #define CAM_HISTOGRAM_FIFO_DATA146 (146UL)
893 #define CAM_HISTOGRAM_FIFO_DATA147 (147UL)
894 #define CAM_HISTOGRAM_FIFO_DATA148 (148UL)
895 #define CAM_HISTOGRAM_FIFO_DATA149 (149UL)
896 #define CAM_HISTOGRAM_FIFO_DATA150 (150UL)
897 #define CAM_HISTOGRAM_FIFO_DATA151 (151UL)
898 #define CAM_HISTOGRAM_FIFO_DATA152 (152UL)
899 #define CAM_HISTOGRAM_FIFO_DATA153 (153UL)
900 #define CAM_HISTOGRAM_FIFO_DATA154 (154UL)
901 #define CAM_HISTOGRAM_FIFO_DATA155 (155UL)
902 #define CAM_HISTOGRAM_FIFO_DATA156 (156UL)
903 #define CAM_HISTOGRAM_FIFO_DATA157 (157UL)
904 #define CAM_HISTOGRAM_FIFO_DATA158 (158UL)
905 #define CAM_HISTOGRAM_FIFO_DATA159 (159UL)
906 #define CAM_HISTOGRAM_FIFO_DATA160 (160UL)
907 #define CAM_HISTOGRAM_FIFO_DATA161 (161UL)
908 #define CAM_HISTOGRAM_FIFO_DATA162 (162UL)
909 #define CAM_HISTOGRAM_FIFO_DATA163 (163UL)
910 #define CAM_HISTOGRAM_FIFO_DATA164 (164UL)
911 #define CAM_HISTOGRAM_FIFO_DATA165 (165UL)
912 #define CAM_HISTOGRAM_FIFO_DATA166 (166UL)
913 #define CAM_HISTOGRAM_FIFO_DATA167 (167UL)
914 #define CAM_HISTOGRAM_FIFO_DATA168 (168UL)
915 #define CAM_HISTOGRAM_FIFO_DATA169 (169UL)
916 #define CAM_HISTOGRAM_FIFO_DATA170 (170UL)
917 #define CAM_HISTOGRAM_FIFO_DATA171 (171UL)
918 #define CAM_HISTOGRAM_FIFO_DATA172 (172UL)
919 #define CAM_HISTOGRAM_FIFO_DATA173 (173UL)
920 #define CAM_HISTOGRAM_FIFO_DATA174 (174UL)
921 #define CAM_HISTOGRAM_FIFO_DATA175 (175UL)
922 #define CAM_HISTOGRAM_FIFO_DATA176 (176UL)
923 #define CAM_HISTOGRAM_FIFO_DATA177 (177UL)
924 #define CAM_HISTOGRAM_FIFO_DATA178 (178UL)
925 #define CAM_HISTOGRAM_FIFO_DATA179 (179UL)
926 #define CAM_HISTOGRAM_FIFO_DATA180 (180UL)
927 #define CAM_HISTOGRAM_FIFO_DATA181 (181UL)
928 #define CAM_HISTOGRAM_FIFO_DATA182 (182UL)
929 #define CAM_HISTOGRAM_FIFO_DATA183 (183UL)
930 #define CAM_HISTOGRAM_FIFO_DATA184 (184UL)
931 #define CAM_HISTOGRAM_FIFO_DATA185 (185UL)
932 #define CAM_HISTOGRAM_FIFO_DATA186 (186UL)
933 #define CAM_HISTOGRAM_FIFO_DATA187 (187UL)
934 #define CAM_HISTOGRAM_FIFO_DATA188 (188UL)
935 #define CAM_HISTOGRAM_FIFO_DATA189 (189UL)
936 #define CAM_HISTOGRAM_FIFO_DATA190 (190UL)
937 #define CAM_HISTOGRAM_FIFO_DATA191 (191UL)
938 #define CAM_HISTOGRAM_FIFO_DATA192 (192UL)
939 #define CAM_HISTOGRAM_FIFO_DATA193 (193UL)
940 #define CAM_HISTOGRAM_FIFO_DATA194 (194UL)
941 #define CAM_HISTOGRAM_FIFO_DATA195 (195UL)
942 #define CAM_HISTOGRAM_FIFO_DATA196 (196UL)
943 #define CAM_HISTOGRAM_FIFO_DATA197 (197UL)
944 #define CAM_HISTOGRAM_FIFO_DATA198 (198UL)
945 #define CAM_HISTOGRAM_FIFO_DATA199 (199UL)
946 #define CAM_HISTOGRAM_FIFO_DATA200 (200UL)
947 #define CAM_HISTOGRAM_FIFO_DATA201 (201UL)
948 #define CAM_HISTOGRAM_FIFO_DATA202 (202UL)
949 #define CAM_HISTOGRAM_FIFO_DATA203 (203UL)
950 #define CAM_HISTOGRAM_FIFO_DATA204 (204UL)
951 #define CAM_HISTOGRAM_FIFO_DATA205 (205UL)
952 #define CAM_HISTOGRAM_FIFO_DATA206 (206UL)
953 #define CAM_HISTOGRAM_FIFO_DATA207 (207UL)
954 #define CAM_HISTOGRAM_FIFO_DATA208 (208UL)
955 #define CAM_HISTOGRAM_FIFO_DATA209 (209UL)
956 #define CAM_HISTOGRAM_FIFO_DATA210 (210UL)
957 #define CAM_HISTOGRAM_FIFO_DATA211 (211UL)
958 #define CAM_HISTOGRAM_FIFO_DATA212 (212UL)
959 #define CAM_HISTOGRAM_FIFO_DATA213 (213UL)
960 #define CAM_HISTOGRAM_FIFO_DATA214 (214UL)
961 #define CAM_HISTOGRAM_FIFO_DATA215 (215UL)
962 #define CAM_HISTOGRAM_FIFO_DATA216 (216UL)
963 #define CAM_HISTOGRAM_FIFO_DATA217 (217UL)
964 #define CAM_HISTOGRAM_FIFO_DATA218 (218UL)
965 #define CAM_HISTOGRAM_FIFO_DATA219 (219UL)
966 #define CAM_HISTOGRAM_FIFO_DATA220 (220UL)
967 #define CAM_HISTOGRAM_FIFO_DATA221 (221UL)
968 #define CAM_HISTOGRAM_FIFO_DATA222 (222UL)
969 #define CAM_HISTOGRAM_FIFO_DATA223 (223UL)
970 #define CAM_HISTOGRAM_FIFO_DATA224 (224UL)
971 #define CAM_HISTOGRAM_FIFO_DATA225 (225UL)
972 #define CAM_HISTOGRAM_FIFO_DATA226 (226UL)
973 #define CAM_HISTOGRAM_FIFO_DATA227 (227UL)
974 #define CAM_HISTOGRAM_FIFO_DATA228 (228UL)
975 #define CAM_HISTOGRAM_FIFO_DATA229 (229UL)
976 #define CAM_HISTOGRAM_FIFO_DATA230 (230UL)
977 #define CAM_HISTOGRAM_FIFO_DATA231 (231UL)
978 #define CAM_HISTOGRAM_FIFO_DATA232 (232UL)
979 #define CAM_HISTOGRAM_FIFO_DATA233 (233UL)
980 #define CAM_HISTOGRAM_FIFO_DATA234 (234UL)
981 #define CAM_HISTOGRAM_FIFO_DATA235 (235UL)
982 #define CAM_HISTOGRAM_FIFO_DATA236 (236UL)
983 #define CAM_HISTOGRAM_FIFO_DATA237 (237UL)
984 #define CAM_HISTOGRAM_FIFO_DATA238 (238UL)
985 #define CAM_HISTOGRAM_FIFO_DATA239 (239UL)
986 #define CAM_HISTOGRAM_FIFO_DATA240 (240UL)
987 #define CAM_HISTOGRAM_FIFO_DATA241 (241UL)
988 #define CAM_HISTOGRAM_FIFO_DATA242 (242UL)
989 #define CAM_HISTOGRAM_FIFO_DATA243 (243UL)
990 #define CAM_HISTOGRAM_FIFO_DATA244 (244UL)
991 #define CAM_HISTOGRAM_FIFO_DATA245 (245UL)
992 #define CAM_HISTOGRAM_FIFO_DATA246 (246UL)
993 #define CAM_HISTOGRAM_FIFO_DATA247 (247UL)
994 #define CAM_HISTOGRAM_FIFO_DATA248 (248UL)
995 #define CAM_HISTOGRAM_FIFO_DATA249 (249UL)
996 #define CAM_HISTOGRAM_FIFO_DATA250 (250UL)
997 #define CAM_HISTOGRAM_FIFO_DATA251 (251UL)
998 #define CAM_HISTOGRAM_FIFO_DATA252 (252UL)
999 #define CAM_HISTOGRAM_FIFO_DATA253 (253UL)
1000 #define CAM_HISTOGRAM_FIFO_DATA254 (254UL)
1001 #define CAM_HISTOGRAM_FIFO_DATA255 (255UL)
1002 
1003 
1004 #endif /* HPM_CAM_H */
Definition: hpm_cam_regs.h:12