1 /*
2 *
3 * SPDX-License-Identifier: GPL-2.0
4 *
5 * Copyright (C) 2011-2018 ARM or its affiliates
6 *
7 * This program is free software; you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License as published by
9 * the Free Software Foundation; version 2.
10 * This program is distributed in the hope that it will be useful, but
11 * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
12 * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
13 * for more details.
14 * You should have received a copy of the GNU General Public License along
15 * with this program; if not, write to the Free Software Foundation, Inc.,
16 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
17 *
18 */
19
20 #ifndef __ACAMERA_FPGA_CONFIG_H__
21 #define __ACAMERA_FPGA_CONFIG_H__
22
23
24 #include "system_sw_io.h"
25
26 #include "system_hw_io.h"
27
28 // ------------------------------------------------------------------------------ //
29 // Instance 'fpga' of module 'fpga_config_misc'
30 // ------------------------------------------------------------------------------ //
31
32 #define ACAMERA_FPGA_BASE_ADDR (0x209000L)
33 #define ACAMERA_FPGA_SIZE (0x1000)
34
35 // ------------------------------------------------------------------------------ //
36 // Group: FPGA
37 // ------------------------------------------------------------------------------ //
38
39 // ------------------------------------------------------------------------------ //
40 // FPGA
41 // ------------------------------------------------------------------------------ //
42
43 // ------------------------------------------------------------------------------ //
44 // Register: gdc_axi_write_waddr_39_32
45 // ------------------------------------------------------------------------------ //
46
47 // ------------------------------------------------------------------------------ //
48 // Higher part [39:32] of address bus write part of GDC out AXI
49 // ------------------------------------------------------------------------------ //
50
51 #define ACAMERA_FPGA_FPGA_GDC_AXI_WRITE_WADDR_39_32_DEFAULT (0x00)
52 #define ACAMERA_FPGA_FPGA_GDC_AXI_WRITE_WADDR_39_32_DATASIZE (8)
53 #define ACAMERA_FPGA_FPGA_GDC_AXI_WRITE_WADDR_39_32_OFFSET (0x4)
54 #define ACAMERA_FPGA_FPGA_GDC_AXI_WRITE_WADDR_39_32_MASK (0xff)
55
56 // args: data (8-bit)
acamera_fpga_fpga_gdc_axi_write_waddr_39_32_write(uintptr_t base,uint8_t data)57 static __inline void acamera_fpga_fpga_gdc_axi_write_waddr_39_32_write(uintptr_t base, uint8_t data) {
58 uint32_t curr = system_hw_read_32(0x209004L);
59 system_hw_write_32(0x209004L, (((uint32_t) (data & 0xff)) << 0) | (curr & 0xffffff00));
60 }
acamera_fpga_fpga_gdc_axi_write_waddr_39_32_read(uintptr_t base)61 static __inline uint8_t acamera_fpga_fpga_gdc_axi_write_waddr_39_32_read(uintptr_t base) {
62 return (uint8_t)((system_hw_read_32(0x209004L) & 0xff) >> 0);
63 }
64 // ------------------------------------------------------------------------------ //
65 // Register: gdc_axi_read_raddr_39_32
66 // ------------------------------------------------------------------------------ //
67
68 // ------------------------------------------------------------------------------ //
69 // Higher part [39:32] of address bus read part of GDC out AXI
70 // ------------------------------------------------------------------------------ //
71
72 #define ACAMERA_FPGA_FPGA_GDC_AXI_READ_RADDR_39_32_DEFAULT (0x00)
73 #define ACAMERA_FPGA_FPGA_GDC_AXI_READ_RADDR_39_32_DATASIZE (8)
74 #define ACAMERA_FPGA_FPGA_GDC_AXI_READ_RADDR_39_32_OFFSET (0x4)
75 #define ACAMERA_FPGA_FPGA_GDC_AXI_READ_RADDR_39_32_MASK (0xff00)
76
77 // args: data (8-bit)
acamera_fpga_fpga_gdc_axi_read_raddr_39_32_write(uintptr_t base,uint8_t data)78 static __inline void acamera_fpga_fpga_gdc_axi_read_raddr_39_32_write(uintptr_t base, uint8_t data) {
79 uint32_t curr = system_hw_read_32(0x209004L);
80 system_hw_write_32(0x209004L, (((uint32_t) (data & 0xff)) << 8) | (curr & 0xffff00ff));
81 }
acamera_fpga_fpga_gdc_axi_read_raddr_39_32_read(uintptr_t base)82 static __inline uint8_t acamera_fpga_fpga_gdc_axi_read_raddr_39_32_read(uintptr_t base) {
83 return (uint8_t)((system_hw_read_32(0x209004L) & 0xff00) >> 8);
84 }
85 // ------------------------------------------------------------------------------ //
86 // Register: frame_reader_raddr_39_32
87 // ------------------------------------------------------------------------------ //
88
89 // ------------------------------------------------------------------------------ //
90 // Higher part [39:32] of address bus read part of FPGA Frame Reader AXI
91 // ------------------------------------------------------------------------------ //
92
93 #define ACAMERA_FPGA_FPGA_FRAME_READER_RADDR_39_32_DEFAULT (0x00)
94 #define ACAMERA_FPGA_FPGA_FRAME_READER_RADDR_39_32_DATASIZE (8)
95 #define ACAMERA_FPGA_FPGA_FRAME_READER_RADDR_39_32_OFFSET (0x8)
96 #define ACAMERA_FPGA_FPGA_FRAME_READER_RADDR_39_32_MASK (0xff)
97
98 // args: data (8-bit)
acamera_fpga_fpga_frame_reader_raddr_39_32_write(uintptr_t base,uint8_t data)99 static __inline void acamera_fpga_fpga_frame_reader_raddr_39_32_write(uintptr_t base, uint8_t data) {
100 uint32_t curr = system_hw_read_32(0x209008L);
101 system_hw_write_32(0x209008L, (((uint32_t) (data & 0xff)) << 0) | (curr & 0xffffff00));
102 }
acamera_fpga_fpga_frame_reader_raddr_39_32_read(uintptr_t base)103 static __inline uint8_t acamera_fpga_fpga_frame_reader_raddr_39_32_read(uintptr_t base) {
104 return (uint8_t)((system_hw_read_32(0x209008L) & 0xff) >> 0);
105 }
106 // ------------------------------------------------------------------------------ //
107 // Register: dma_wdr_frame_buffer1_highaddr
108 // ------------------------------------------------------------------------------ //
109
110 #define ACAMERA_FPGA_FPGA_DMA_WDR_FRAME_BUFFER1_HIGHADDR_DEFAULT (0x00)
111 #define ACAMERA_FPGA_FPGA_DMA_WDR_FRAME_BUFFER1_HIGHADDR_DATASIZE (8)
112 #define ACAMERA_FPGA_FPGA_DMA_WDR_FRAME_BUFFER1_HIGHADDR_OFFSET (0xc)
113 #define ACAMERA_FPGA_FPGA_DMA_WDR_FRAME_BUFFER1_HIGHADDR_MASK (0xff)
114
115 // args: data (8-bit)
acamera_fpga_fpga_dma_wdr_frame_buffer1_highaddr_write(uintptr_t base,uint8_t data)116 static __inline void acamera_fpga_fpga_dma_wdr_frame_buffer1_highaddr_write(uintptr_t base, uint8_t data) {
117 uint32_t curr = system_hw_read_32(0x20900cL);
118 system_hw_write_32(0x20900cL, (((uint32_t) (data & 0xff)) << 0) | (curr & 0xffffff00));
119 }
acamera_fpga_fpga_dma_wdr_frame_buffer1_highaddr_read(uintptr_t base)120 static __inline uint8_t acamera_fpga_fpga_dma_wdr_frame_buffer1_highaddr_read(uintptr_t base) {
121 return (uint8_t)((system_hw_read_32(0x20900cL) & 0xff) >> 0);
122 }
123 // ------------------------------------------------------------------------------ //
124 // Register: dma_writer1_highaddr
125 // ------------------------------------------------------------------------------ //
126
127 #define ACAMERA_FPGA_FPGA_DMA_WRITER1_HIGHADDR_DEFAULT (0x00)
128 #define ACAMERA_FPGA_FPGA_DMA_WRITER1_HIGHADDR_DATASIZE (8)
129 #define ACAMERA_FPGA_FPGA_DMA_WRITER1_HIGHADDR_OFFSET (0x10)
130 #define ACAMERA_FPGA_FPGA_DMA_WRITER1_HIGHADDR_MASK (0xff)
131
132 // args: data (8-bit)
acamera_fpga_fpga_dma_writer1_highaddr_write(uintptr_t base,uint8_t data)133 static __inline void acamera_fpga_fpga_dma_writer1_highaddr_write(uintptr_t base, uint8_t data) {
134 uint32_t curr = system_hw_read_32(0x209010L);
135 system_hw_write_32(0x209010L, (((uint32_t) (data & 0xff)) << 0) | (curr & 0xffffff00));
136 }
acamera_fpga_fpga_dma_writer1_highaddr_read(uintptr_t base)137 static __inline uint8_t acamera_fpga_fpga_dma_writer1_highaddr_read(uintptr_t base) {
138 return (uint8_t)((system_hw_read_32(0x209010L) & 0xff) >> 0);
139 }
140 // ------------------------------------------------------------------------------ //
141 // Register: dma_writer2_highaddr
142 // ------------------------------------------------------------------------------ //
143
144 #define ACAMERA_FPGA_FPGA_DMA_WRITER2_HIGHADDR_DEFAULT (0x00)
145 #define ACAMERA_FPGA_FPGA_DMA_WRITER2_HIGHADDR_DATASIZE (8)
146 #define ACAMERA_FPGA_FPGA_DMA_WRITER2_HIGHADDR_OFFSET (0x14)
147 #define ACAMERA_FPGA_FPGA_DMA_WRITER2_HIGHADDR_MASK (0xff)
148
149 // args: data (8-bit)
acamera_fpga_fpga_dma_writer2_highaddr_write(uintptr_t base,uint8_t data)150 static __inline void acamera_fpga_fpga_dma_writer2_highaddr_write(uintptr_t base, uint8_t data) {
151 uint32_t curr = system_hw_read_32(0x209014L);
152 system_hw_write_32(0x209014L, (((uint32_t) (data & 0xff)) << 0) | (curr & 0xffffff00));
153 }
acamera_fpga_fpga_dma_writer2_highaddr_read(uintptr_t base)154 static __inline uint8_t acamera_fpga_fpga_dma_writer2_highaddr_read(uintptr_t base) {
155 return (uint8_t)((system_hw_read_32(0x209014L) & 0xff) >> 0);
156 }
157 // ------------------------------------------------------------------------------ //
158 // Register: dma_writer3_highaddr
159 // ------------------------------------------------------------------------------ //
160
161 #define ACAMERA_FPGA_FPGA_DMA_WRITER3_HIGHADDR_DEFAULT (0x00)
162 #define ACAMERA_FPGA_FPGA_DMA_WRITER3_HIGHADDR_DATASIZE (8)
163 #define ACAMERA_FPGA_FPGA_DMA_WRITER3_HIGHADDR_OFFSET (0x18)
164 #define ACAMERA_FPGA_FPGA_DMA_WRITER3_HIGHADDR_MASK (0xff)
165
166 // args: data (8-bit)
acamera_fpga_fpga_dma_writer3_highaddr_write(uintptr_t base,uint8_t data)167 static __inline void acamera_fpga_fpga_dma_writer3_highaddr_write(uintptr_t base, uint8_t data) {
168 uint32_t curr = system_hw_read_32(0x209018L);
169 system_hw_write_32(0x209018L, (((uint32_t) (data & 0xff)) << 0) | (curr & 0xffffff00));
170 }
acamera_fpga_fpga_dma_writer3_highaddr_read(uintptr_t base)171 static __inline uint8_t acamera_fpga_fpga_dma_writer3_highaddr_read(uintptr_t base) {
172 return (uint8_t)((system_hw_read_32(0x209018L) & 0xff) >> 0);
173 }
174 // ------------------------------------------------------------------------------ //
175 // Register: dma_writer4_highaddr
176 // ------------------------------------------------------------------------------ //
177
178 #define ACAMERA_FPGA_FPGA_DMA_WRITER4_HIGHADDR_DEFAULT (0x00)
179 #define ACAMERA_FPGA_FPGA_DMA_WRITER4_HIGHADDR_DATASIZE (8)
180 #define ACAMERA_FPGA_FPGA_DMA_WRITER4_HIGHADDR_OFFSET (0x1c)
181 #define ACAMERA_FPGA_FPGA_DMA_WRITER4_HIGHADDR_MASK (0xff)
182
183 // args: data (8-bit)
acamera_fpga_fpga_dma_writer4_highaddr_write(uintptr_t base,uint8_t data)184 static __inline void acamera_fpga_fpga_dma_writer4_highaddr_write(uintptr_t base, uint8_t data) {
185 uint32_t curr = system_hw_read_32(0x20901cL);
186 system_hw_write_32(0x20901cL, (((uint32_t) (data & 0xff)) << 0) | (curr & 0xffffff00));
187 }
acamera_fpga_fpga_dma_writer4_highaddr_read(uintptr_t base)188 static __inline uint8_t acamera_fpga_fpga_dma_writer4_highaddr_read(uintptr_t base) {
189 return (uint8_t)((system_hw_read_32(0x20901cL) & 0xff) >> 0);
190 }
191 // ------------------------------------------------------------------------------ //
192 // Register: dma_input_highaddr
193 // ------------------------------------------------------------------------------ //
194
195 #define ACAMERA_FPGA_FPGA_DMA_INPUT_HIGHADDR_DEFAULT (0x00)
196 #define ACAMERA_FPGA_FPGA_DMA_INPUT_HIGHADDR_DATASIZE (8)
197 #define ACAMERA_FPGA_FPGA_DMA_INPUT_HIGHADDR_OFFSET (0x20)
198 #define ACAMERA_FPGA_FPGA_DMA_INPUT_HIGHADDR_MASK (0xff)
199
200 // args: data (8-bit)
acamera_fpga_fpga_dma_input_highaddr_write(uintptr_t base,uint8_t data)201 static __inline void acamera_fpga_fpga_dma_input_highaddr_write(uintptr_t base, uint8_t data) {
202 uint32_t curr = system_hw_read_32(0x209020L);
203 system_hw_write_32(0x209020L, (((uint32_t) (data & 0xff)) << 0) | (curr & 0xffffff00));
204 }
acamera_fpga_fpga_dma_input_highaddr_read(uintptr_t base)205 static __inline uint8_t acamera_fpga_fpga_dma_input_highaddr_read(uintptr_t base) {
206 return (uint8_t)((system_hw_read_32(0x209020L) & 0xff) >> 0);
207 }
208 // ------------------------------------------------------------------------------ //
209 // Register: dma_writer_fr_highaddr
210 // ------------------------------------------------------------------------------ //
211
212 #define ACAMERA_FPGA_FPGA_DMA_WRITER_FR_HIGHADDR_DEFAULT (0x00)
213 #define ACAMERA_FPGA_FPGA_DMA_WRITER_FR_HIGHADDR_DATASIZE (8)
214 #define ACAMERA_FPGA_FPGA_DMA_WRITER_FR_HIGHADDR_OFFSET (0x24)
215 #define ACAMERA_FPGA_FPGA_DMA_WRITER_FR_HIGHADDR_MASK (0xff)
216
217 // args: data (8-bit)
acamera_fpga_fpga_dma_writer_fr_highaddr_write(uintptr_t base,uint8_t data)218 static __inline void acamera_fpga_fpga_dma_writer_fr_highaddr_write(uintptr_t base, uint8_t data) {
219 uint32_t curr = system_hw_read_32(0x209024L);
220 system_hw_write_32(0x209024L, (((uint32_t) (data & 0xff)) << 0) | (curr & 0xffffff00));
221 }
acamera_fpga_fpga_dma_writer_fr_highaddr_read(uintptr_t base)222 static __inline uint8_t acamera_fpga_fpga_dma_writer_fr_highaddr_read(uintptr_t base) {
223 return (uint8_t)((system_hw_read_32(0x209024L) & 0xff) >> 0);
224 }
225 // ------------------------------------------------------------------------------ //
226 // Register: dma_writer_fr_uv_highaddr
227 // ------------------------------------------------------------------------------ //
228
229 #define ACAMERA_FPGA_FPGA_DMA_WRITER_FR_UV_HIGHADDR_DEFAULT (0x00)
230 #define ACAMERA_FPGA_FPGA_DMA_WRITER_FR_UV_HIGHADDR_DATASIZE (8)
231 #define ACAMERA_FPGA_FPGA_DMA_WRITER_FR_UV_HIGHADDR_OFFSET (0x28)
232 #define ACAMERA_FPGA_FPGA_DMA_WRITER_FR_UV_HIGHADDR_MASK (0xff)
233
234 // args: data (8-bit)
acamera_fpga_fpga_dma_writer_fr_uv_highaddr_write(uintptr_t base,uint8_t data)235 static __inline void acamera_fpga_fpga_dma_writer_fr_uv_highaddr_write(uintptr_t base, uint8_t data) {
236 uint32_t curr = system_hw_read_32(0x209028L);
237 system_hw_write_32(0x209028L, (((uint32_t) (data & 0xff)) << 0) | (curr & 0xffffff00));
238 }
acamera_fpga_fpga_dma_writer_fr_uv_highaddr_read(uintptr_t base)239 static __inline uint8_t acamera_fpga_fpga_dma_writer_fr_uv_highaddr_read(uintptr_t base) {
240 return (uint8_t)((system_hw_read_32(0x209028L) & 0xff) >> 0);
241 }
242 // ------------------------------------------------------------------------------ //
243 // Register: dma_writer_capture1_highaddr
244 // ------------------------------------------------------------------------------ //
245
246 #define ACAMERA_FPGA_FPGA_DMA_WRITER_CAPTURE1_HIGHADDR_DEFAULT (0x00)
247 #define ACAMERA_FPGA_FPGA_DMA_WRITER_CAPTURE1_HIGHADDR_DATASIZE (8)
248 #define ACAMERA_FPGA_FPGA_DMA_WRITER_CAPTURE1_HIGHADDR_OFFSET (0x2c)
249 #define ACAMERA_FPGA_FPGA_DMA_WRITER_CAPTURE1_HIGHADDR_MASK (0xff)
250
251 // args: data (8-bit)
acamera_fpga_fpga_dma_writer_capture1_highaddr_write(uintptr_t base,uint8_t data)252 static __inline void acamera_fpga_fpga_dma_writer_capture1_highaddr_write(uintptr_t base, uint8_t data) {
253 uint32_t curr = system_hw_read_32(0x20902cL);
254 system_hw_write_32(0x20902cL, (((uint32_t) (data & 0xff)) << 0) | (curr & 0xffffff00));
255 }
acamera_fpga_fpga_dma_writer_capture1_highaddr_read(uintptr_t base)256 static __inline uint8_t acamera_fpga_fpga_dma_writer_capture1_highaddr_read(uintptr_t base) {
257 return (uint8_t)((system_hw_read_32(0x20902cL) & 0xff) >> 0);
258 }
259 // ------------------------------------------------------------------------------ //
260 // Register: dma_writer_capture2_highaddr
261 // ------------------------------------------------------------------------------ //
262
263 #define ACAMERA_FPGA_FPGA_DMA_WRITER_CAPTURE2_HIGHADDR_DEFAULT (0x00)
264 #define ACAMERA_FPGA_FPGA_DMA_WRITER_CAPTURE2_HIGHADDR_DATASIZE (8)
265 #define ACAMERA_FPGA_FPGA_DMA_WRITER_CAPTURE2_HIGHADDR_OFFSET (0x30)
266 #define ACAMERA_FPGA_FPGA_DMA_WRITER_CAPTURE2_HIGHADDR_MASK (0xff)
267
268 // args: data (8-bit)
acamera_fpga_fpga_dma_writer_capture2_highaddr_write(uintptr_t base,uint8_t data)269 static __inline void acamera_fpga_fpga_dma_writer_capture2_highaddr_write(uintptr_t base, uint8_t data) {
270 uint32_t curr = system_hw_read_32(0x209030L);
271 system_hw_write_32(0x209030L, (((uint32_t) (data & 0xff)) << 0) | (curr & 0xffffff00));
272 }
acamera_fpga_fpga_dma_writer_capture2_highaddr_read(uintptr_t base)273 static __inline uint8_t acamera_fpga_fpga_dma_writer_capture2_highaddr_read(uintptr_t base) {
274 return (uint8_t)((system_hw_read_32(0x209030L) & 0xff) >> 0);
275 }
276 // ------------------------------------------------------------------------------ //
277 // Register: dma_writer_capture3_highaddr
278 // ------------------------------------------------------------------------------ //
279
280 #define ACAMERA_FPGA_FPGA_DMA_WRITER_CAPTURE3_HIGHADDR_DEFAULT (0x00)
281 #define ACAMERA_FPGA_FPGA_DMA_WRITER_CAPTURE3_HIGHADDR_DATASIZE (8)
282 #define ACAMERA_FPGA_FPGA_DMA_WRITER_CAPTURE3_HIGHADDR_OFFSET (0x34)
283 #define ACAMERA_FPGA_FPGA_DMA_WRITER_CAPTURE3_HIGHADDR_MASK (0xff)
284
285 // args: data (8-bit)
acamera_fpga_fpga_dma_writer_capture3_highaddr_write(uintptr_t base,uint8_t data)286 static __inline void acamera_fpga_fpga_dma_writer_capture3_highaddr_write(uintptr_t base, uint8_t data) {
287 uint32_t curr = system_hw_read_32(0x209034L);
288 system_hw_write_32(0x209034L, (((uint32_t) (data & 0xff)) << 0) | (curr & 0xffffff00));
289 }
acamera_fpga_fpga_dma_writer_capture3_highaddr_read(uintptr_t base)290 static __inline uint8_t acamera_fpga_fpga_dma_writer_capture3_highaddr_read(uintptr_t base) {
291 return (uint8_t)((system_hw_read_32(0x209034L) & 0xff) >> 0);
292 }
293 // ------------------------------------------------------------------------------ //
294 // Register: Stereo enable
295 // ------------------------------------------------------------------------------ //
296
297 // ------------------------------------------------------------------------------ //
298 // Enable dual stream operation
299 // ------------------------------------------------------------------------------ //
300
301 #define ACAMERA_FPGA_FPGA_STEREO_ENABLE_DEFAULT (0)
302 #define ACAMERA_FPGA_FPGA_STEREO_ENABLE_DATASIZE (1)
303 #define ACAMERA_FPGA_FPGA_STEREO_ENABLE_OFFSET (0x38)
304 #define ACAMERA_FPGA_FPGA_STEREO_ENABLE_MASK (0x1)
305
306 // args: data (1-bit)
acamera_fpga_fpga_stereo_enable_write(uintptr_t base,uint8_t data)307 static __inline void acamera_fpga_fpga_stereo_enable_write(uintptr_t base, uint8_t data) {
308 uint32_t curr = system_hw_read_32(0x209038L);
309 system_hw_write_32(0x209038L, (((uint32_t) (data & 0x1)) << 0) | (curr & 0xfffffffe));
310 }
acamera_fpga_fpga_stereo_enable_read(uintptr_t base)311 static __inline uint8_t acamera_fpga_fpga_stereo_enable_read(uintptr_t base) {
312 return (uint8_t)((system_hw_read_32(0x209038L) & 0x1) >> 0);
313 }
314 // ------------------------------------------------------------------------------ //
315 // Register: Global FSM reset
316 // ------------------------------------------------------------------------------ //
317
318 // ------------------------------------------------------------------------------ //
319 // Global reset of FSMs
320 // ------------------------------------------------------------------------------ //
321
322 #define ACAMERA_FPGA_FPGA_GLOBAL_FSM_RESET_DEFAULT (0x0)
323 #define ACAMERA_FPGA_FPGA_GLOBAL_FSM_RESET_DATASIZE (1)
324 #define ACAMERA_FPGA_FPGA_GLOBAL_FSM_RESET_OFFSET (0x3c)
325 #define ACAMERA_FPGA_FPGA_GLOBAL_FSM_RESET_MASK (0x1)
326
327 // args: data (1-bit)
acamera_fpga_fpga_global_fsm_reset_write(uintptr_t base,uint8_t data)328 static __inline void acamera_fpga_fpga_global_fsm_reset_write(uintptr_t base, uint8_t data) {
329 uint32_t curr = system_hw_read_32(0x20903cL);
330 system_hw_write_32(0x20903cL, (((uint32_t) (data & 0x1)) << 0) | (curr & 0xfffffffe));
331 }
acamera_fpga_fpga_global_fsm_reset_read(uintptr_t base)332 static __inline uint8_t acamera_fpga_fpga_global_fsm_reset_read(uintptr_t base) {
333 return (uint8_t)((system_hw_read_32(0x20903cL) & 0x1) >> 0);
334 }
335 // ------------------------------------------------------------------------------ //
336 // Group: Frame Reader
337 // ------------------------------------------------------------------------------ //
338
339 // ------------------------------------------------------------------------------ //
340 // Register: format
341 // ------------------------------------------------------------------------------ //
342
343 #define ACAMERA_FPGA_FRAME_READER_FORMAT_DEFAULT (0)
344 #define ACAMERA_FPGA_FRAME_READER_FORMAT_DATASIZE (8)
345 #define ACAMERA_FPGA_FRAME_READER_FORMAT_OFFSET (0x40)
346 #define ACAMERA_FPGA_FRAME_READER_FORMAT_MASK (0xff)
347
348 // args: data (8-bit)
acamera_fpga_frame_reader_format_write(uintptr_t base,uint8_t data)349 static __inline void acamera_fpga_frame_reader_format_write(uintptr_t base, uint8_t data) {
350 uint32_t curr = system_hw_read_32(0x209040L);
351 system_hw_write_32(0x209040L, (((uint32_t) (data & 0xff)) << 0) | (curr & 0xffffff00));
352 }
acamera_fpga_frame_reader_format_read(uintptr_t base)353 static __inline uint8_t acamera_fpga_frame_reader_format_read(uintptr_t base) {
354 return (uint8_t)((system_hw_read_32(0x209040L) & 0xff) >> 0);
355 }
356 // ------------------------------------------------------------------------------ //
357 // Register: rbase load
358 // ------------------------------------------------------------------------------ //
359
360 #define ACAMERA_FPGA_FRAME_READER_RBASE_LOAD_DEFAULT (0x0)
361 #define ACAMERA_FPGA_FRAME_READER_RBASE_LOAD_DATASIZE (1)
362 #define ACAMERA_FPGA_FRAME_READER_RBASE_LOAD_OFFSET (0x4c)
363 #define ACAMERA_FPGA_FRAME_READER_RBASE_LOAD_MASK (0x1)
364
365 // args: data (1-bit)
acamera_fpga_frame_reader_rbase_load_write(uintptr_t base,uint8_t data)366 static __inline void acamera_fpga_frame_reader_rbase_load_write(uintptr_t base, uint8_t data) {
367 uint32_t curr = system_hw_read_32(0x20904cL);
368 system_hw_write_32(0x20904cL, (((uint32_t) (data & 0x1)) << 0) | (curr & 0xfffffffe));
369 }
acamera_fpga_frame_reader_rbase_load_read(uintptr_t base)370 static __inline uint8_t acamera_fpga_frame_reader_rbase_load_read(uintptr_t base) {
371 return (uint8_t)((system_hw_read_32(0x20904cL) & 0x1) >> 0);
372 }
373 // ------------------------------------------------------------------------------ //
374 // Register: rbase load sel
375 // ------------------------------------------------------------------------------ //
376
377 // ------------------------------------------------------------------------------ //
378 // Selector for rbase_load strobe: 0-field, 1-configuration bit rbase_load
379 // ------------------------------------------------------------------------------ //
380
381 #define ACAMERA_FPGA_FRAME_READER_RBASE_LOAD_SEL_DEFAULT (0x0)
382 #define ACAMERA_FPGA_FRAME_READER_RBASE_LOAD_SEL_DATASIZE (1)
383 #define ACAMERA_FPGA_FRAME_READER_RBASE_LOAD_SEL_OFFSET (0x4c)
384 #define ACAMERA_FPGA_FRAME_READER_RBASE_LOAD_SEL_MASK (0x10)
385
386 // args: data (1-bit)
acamera_fpga_frame_reader_rbase_load_sel_write(uintptr_t base,uint8_t data)387 static __inline void acamera_fpga_frame_reader_rbase_load_sel_write(uintptr_t base, uint8_t data) {
388 uint32_t curr = system_hw_read_32(0x20904cL);
389 system_hw_write_32(0x20904cL, (((uint32_t) (data & 0x1)) << 4) | (curr & 0xffffffef));
390 }
acamera_fpga_frame_reader_rbase_load_sel_read(uintptr_t base)391 static __inline uint8_t acamera_fpga_frame_reader_rbase_load_sel_read(uintptr_t base) {
392 return (uint8_t)((system_hw_read_32(0x20904cL) & 0x10) >> 4);
393 }
394 // ------------------------------------------------------------------------------ //
395 // Register: rbase
396 // ------------------------------------------------------------------------------ //
397
398 // ------------------------------------------------------------------------------ //
399 // Base address for frame buffer, should be word-aligned
400 // ------------------------------------------------------------------------------ //
401
402 #define ACAMERA_FPGA_FRAME_READER_RBASE_DEFAULT (0x0)
403 #define ACAMERA_FPGA_FRAME_READER_RBASE_DATASIZE (32)
404 #define ACAMERA_FPGA_FRAME_READER_RBASE_OFFSET (0x50)
405 #define ACAMERA_FPGA_FRAME_READER_RBASE_MASK (0xffffffff)
406
407 // args: data (32-bit)
acamera_fpga_frame_reader_rbase_write(uintptr_t base,uint32_t data)408 static __inline void acamera_fpga_frame_reader_rbase_write(uintptr_t base, uint32_t data) {
409 system_hw_write_32(0x209050L, data);
410 }
acamera_fpga_frame_reader_rbase_read(uintptr_t base)411 static __inline uint32_t acamera_fpga_frame_reader_rbase_read(uintptr_t base) {
412 return system_hw_read_32(0x209050L);
413 }
414 // ------------------------------------------------------------------------------ //
415 // Register: Line_offset
416 // ------------------------------------------------------------------------------ //
417
418 // ------------------------------------------------------------------------------ //
419 // Indicates offset in bytes from the start of one line to the next line. Should be word-aligned
420 // ------------------------------------------------------------------------------ //
421
422 #define ACAMERA_FPGA_FRAME_READER_LINE_OFFSET_DEFAULT (0x1000)
423 #define ACAMERA_FPGA_FRAME_READER_LINE_OFFSET_DATASIZE (32)
424 #define ACAMERA_FPGA_FRAME_READER_LINE_OFFSET_OFFSET (0x54)
425 #define ACAMERA_FPGA_FRAME_READER_LINE_OFFSET_MASK (0xffffffff)
426
427 // args: data (32-bit)
acamera_fpga_frame_reader_line_offset_write(uintptr_t base,uint32_t data)428 static __inline void acamera_fpga_frame_reader_line_offset_write(uintptr_t base, uint32_t data) {
429 system_hw_write_32(0x209054L, data);
430 }
acamera_fpga_frame_reader_line_offset_read(uintptr_t base)431 static __inline uint32_t acamera_fpga_frame_reader_line_offset_read(uintptr_t base) {
432 return system_hw_read_32(0x209054L);
433 }
434 // ------------------------------------------------------------------------------ //
435 // Register: axi_port_enable
436 // ------------------------------------------------------------------------------ //
437
438 #define ACAMERA_FPGA_FRAME_READER_AXI_PORT_ENABLE_DEFAULT (0x0)
439 #define ACAMERA_FPGA_FRAME_READER_AXI_PORT_ENABLE_DATASIZE (1)
440 #define ACAMERA_FPGA_FRAME_READER_AXI_PORT_ENABLE_OFFSET (0x58)
441 #define ACAMERA_FPGA_FRAME_READER_AXI_PORT_ENABLE_MASK (0x1)
442
443 // args: data (1-bit)
acamera_fpga_frame_reader_axi_port_enable_write(uintptr_t base,uint8_t data)444 static __inline void acamera_fpga_frame_reader_axi_port_enable_write(uintptr_t base, uint8_t data) {
445 uint32_t curr = system_hw_read_32(0x209058L);
446 system_hw_write_32(0x209058L, (((uint32_t) (data & 0x1)) << 0) | (curr & 0xfffffffe));
447 }
acamera_fpga_frame_reader_axi_port_enable_read(uintptr_t base)448 static __inline uint8_t acamera_fpga_frame_reader_axi_port_enable_read(uintptr_t base) {
449 return (uint8_t)((system_hw_read_32(0x209058L) & 0x1) >> 0);
450 }
451 // ------------------------------------------------------------------------------ //
452 // Register: config
453 // ------------------------------------------------------------------------------ //
454
455 #define ACAMERA_FPGA_FRAME_READER_CONFIG_DEFAULT (0x0000)
456 #define ACAMERA_FPGA_FRAME_READER_CONFIG_DATASIZE (32)
457 #define ACAMERA_FPGA_FRAME_READER_CONFIG_OFFSET (0x60)
458 #define ACAMERA_FPGA_FRAME_READER_CONFIG_MASK (0xffffffff)
459
460 // args: data (32-bit)
acamera_fpga_frame_reader_config_write(uintptr_t base,uint32_t data)461 static __inline void acamera_fpga_frame_reader_config_write(uintptr_t base, uint32_t data) {
462 system_hw_write_32(0x209060L, data);
463 }
acamera_fpga_frame_reader_config_read(uintptr_t base)464 static __inline uint32_t acamera_fpga_frame_reader_config_read(uintptr_t base) {
465 return system_hw_read_32(0x209060L);
466 }
467 // ------------------------------------------------------------------------------ //
468 // Register: status
469 // ------------------------------------------------------------------------------ //
470
471 #define ACAMERA_FPGA_FRAME_READER_STATUS_DEFAULT (0x0000)
472 #define ACAMERA_FPGA_FRAME_READER_STATUS_DATASIZE (32)
473 #define ACAMERA_FPGA_FRAME_READER_STATUS_OFFSET (0x64)
474 #define ACAMERA_FPGA_FRAME_READER_STATUS_MASK (0xffffffff)
475
476 // args: data (32-bit)
acamera_fpga_frame_reader_status_read(uintptr_t base)477 static __inline uint32_t acamera_fpga_frame_reader_status_read(uintptr_t base) {
478 return system_hw_read_32(0x209064L);
479 }
480 // ------------------------------------------------------------------------------ //
481 // Register: active_width
482 // ------------------------------------------------------------------------------ //
483
484 #define ACAMERA_FPGA_FRAME_READER_ACTIVE_WIDTH_DEFAULT (0x0780)
485 #define ACAMERA_FPGA_FRAME_READER_ACTIVE_WIDTH_DATASIZE (16)
486 #define ACAMERA_FPGA_FRAME_READER_ACTIVE_WIDTH_OFFSET (0x68)
487 #define ACAMERA_FPGA_FRAME_READER_ACTIVE_WIDTH_MASK (0xffff)
488
489 // args: data (16-bit)
acamera_fpga_frame_reader_active_width_write(uintptr_t base,uint16_t data)490 static __inline void acamera_fpga_frame_reader_active_width_write(uintptr_t base, uint16_t data) {
491 uint32_t curr = system_hw_read_32(0x209068L);
492 system_hw_write_32(0x209068L, (((uint32_t) (data & 0xffff)) << 0) | (curr & 0xffff0000));
493 }
acamera_fpga_frame_reader_active_width_read(uintptr_t base)494 static __inline uint16_t acamera_fpga_frame_reader_active_width_read(uintptr_t base) {
495 return (uint16_t)((system_hw_read_32(0x209068L) & 0xffff) >> 0);
496 }
497 // ------------------------------------------------------------------------------ //
498 // Register: active_height
499 // ------------------------------------------------------------------------------ //
500
501 #define ACAMERA_FPGA_FRAME_READER_ACTIVE_HEIGHT_DEFAULT (0x0438)
502 #define ACAMERA_FPGA_FRAME_READER_ACTIVE_HEIGHT_DATASIZE (16)
503 #define ACAMERA_FPGA_FRAME_READER_ACTIVE_HEIGHT_OFFSET (0x6c)
504 #define ACAMERA_FPGA_FRAME_READER_ACTIVE_HEIGHT_MASK (0xffff)
505
506 // args: data (16-bit)
acamera_fpga_frame_reader_active_height_write(uintptr_t base,uint16_t data)507 static __inline void acamera_fpga_frame_reader_active_height_write(uintptr_t base, uint16_t data) {
508 uint32_t curr = system_hw_read_32(0x20906cL);
509 system_hw_write_32(0x20906cL, (((uint32_t) (data & 0xffff)) << 0) | (curr & 0xffff0000));
510 }
acamera_fpga_frame_reader_active_height_read(uintptr_t base)511 static __inline uint16_t acamera_fpga_frame_reader_active_height_read(uintptr_t base) {
512 return (uint16_t)((system_hw_read_32(0x20906cL) & 0xffff) >> 0);
513 }
514 // ------------------------------------------------------------------------------ //
515 // Group: Frame Reader UV
516 // ------------------------------------------------------------------------------ //
517
518 // ------------------------------------------------------------------------------ //
519 // Register: format
520 // ------------------------------------------------------------------------------ //
521
522 #define ACAMERA_FPGA_FRAME_READER_UV_FORMAT_DEFAULT (0x0)
523 #define ACAMERA_FPGA_FRAME_READER_UV_FORMAT_DATASIZE (8)
524 #define ACAMERA_FPGA_FRAME_READER_UV_FORMAT_OFFSET (0x80)
525 #define ACAMERA_FPGA_FRAME_READER_UV_FORMAT_MASK (0xff)
526
527 // args: data (8-bit)
acamera_fpga_frame_reader_uv_format_write(uintptr_t base,uint8_t data)528 static __inline void acamera_fpga_frame_reader_uv_format_write(uintptr_t base, uint8_t data) {
529 uint32_t curr = system_hw_read_32(0x209080L);
530 system_hw_write_32(0x209080L, (((uint32_t) (data & 0xff)) << 0) | (curr & 0xffffff00));
531 }
acamera_fpga_frame_reader_uv_format_read(uintptr_t base)532 static __inline uint8_t acamera_fpga_frame_reader_uv_format_read(uintptr_t base) {
533 return (uint8_t)((system_hw_read_32(0x209080L) & 0xff) >> 0);
534 }
535 // ------------------------------------------------------------------------------ //
536 // Register: disable422_uv_interleave
537 // ------------------------------------------------------------------------------ //
538
539 #define ACAMERA_FPGA_FRAME_READER_UV_DISABLE422_UV_INTERLEAVE_DEFAULT (0x0)
540 #define ACAMERA_FPGA_FRAME_READER_UV_DISABLE422_UV_INTERLEAVE_DATASIZE (1)
541 #define ACAMERA_FPGA_FRAME_READER_UV_DISABLE422_UV_INTERLEAVE_OFFSET (0x8c)
542 #define ACAMERA_FPGA_FRAME_READER_UV_DISABLE422_UV_INTERLEAVE_MASK (0x2)
543
544 // args: data (1-bit)
acamera_fpga_frame_reader_uv_disable422_uv_interleave_write(uintptr_t base,uint8_t data)545 static __inline void acamera_fpga_frame_reader_uv_disable422_uv_interleave_write(uintptr_t base, uint8_t data) {
546 uint32_t curr = system_hw_read_32(0x20908cL);
547 system_hw_write_32(0x20908cL, (((uint32_t) (data & 0x1)) << 1) | (curr & 0xfffffffd));
548 }
acamera_fpga_frame_reader_uv_disable422_uv_interleave_read(uintptr_t base)549 static __inline uint8_t acamera_fpga_frame_reader_uv_disable422_uv_interleave_read(uintptr_t base) {
550 return (uint8_t)((system_hw_read_32(0x20908cL) & 0x2) >> 1);
551 }
552 // ------------------------------------------------------------------------------ //
553 // Register: repeat_downsampled_lines
554 // ------------------------------------------------------------------------------ //
555
556 #define ACAMERA_FPGA_FRAME_READER_UV_REPEAT_DOWNSAMPLED_LINES_DEFAULT (0x0)
557 #define ACAMERA_FPGA_FRAME_READER_UV_REPEAT_DOWNSAMPLED_LINES_DATASIZE (1)
558 #define ACAMERA_FPGA_FRAME_READER_UV_REPEAT_DOWNSAMPLED_LINES_OFFSET (0x8c)
559 #define ACAMERA_FPGA_FRAME_READER_UV_REPEAT_DOWNSAMPLED_LINES_MASK (0x4)
560
561 // args: data (1-bit)
acamera_fpga_frame_reader_uv_repeat_downsampled_lines_write(uintptr_t base,uint8_t data)562 static __inline void acamera_fpga_frame_reader_uv_repeat_downsampled_lines_write(uintptr_t base, uint8_t data) {
563 uint32_t curr = system_hw_read_32(0x20908cL);
564 system_hw_write_32(0x20908cL, (((uint32_t) (data & 0x1)) << 2) | (curr & 0xfffffffb));
565 }
acamera_fpga_frame_reader_uv_repeat_downsampled_lines_read(uintptr_t base)566 static __inline uint8_t acamera_fpga_frame_reader_uv_repeat_downsampled_lines_read(uintptr_t base) {
567 return (uint8_t)((system_hw_read_32(0x20908cL) & 0x4) >> 2);
568 }
569 // ------------------------------------------------------------------------------ //
570 // Register: repeat_downsampled_pixels
571 // ------------------------------------------------------------------------------ //
572
573 #define ACAMERA_FPGA_FRAME_READER_UV_REPEAT_DOWNSAMPLED_PIXELS_DEFAULT (0x0)
574 #define ACAMERA_FPGA_FRAME_READER_UV_REPEAT_DOWNSAMPLED_PIXELS_DATASIZE (1)
575 #define ACAMERA_FPGA_FRAME_READER_UV_REPEAT_DOWNSAMPLED_PIXELS_OFFSET (0x8c)
576 #define ACAMERA_FPGA_FRAME_READER_UV_REPEAT_DOWNSAMPLED_PIXELS_MASK (0x8)
577
578 // args: data (1-bit)
acamera_fpga_frame_reader_uv_repeat_downsampled_pixels_write(uintptr_t base,uint8_t data)579 static __inline void acamera_fpga_frame_reader_uv_repeat_downsampled_pixels_write(uintptr_t base, uint8_t data) {
580 uint32_t curr = system_hw_read_32(0x20908cL);
581 system_hw_write_32(0x20908cL, (((uint32_t) (data & 0x1)) << 3) | (curr & 0xfffffff7));
582 }
acamera_fpga_frame_reader_uv_repeat_downsampled_pixels_read(uintptr_t base)583 static __inline uint8_t acamera_fpga_frame_reader_uv_repeat_downsampled_pixels_read(uintptr_t base) {
584 return (uint8_t)((system_hw_read_32(0x20908cL) & 0x8) >> 3);
585 }
586 // ------------------------------------------------------------------------------ //
587 // Register: rbase load
588 // ------------------------------------------------------------------------------ //
589
590 #define ACAMERA_FPGA_FRAME_READER_UV_RBASE_LOAD_DEFAULT (0x0)
591 #define ACAMERA_FPGA_FRAME_READER_UV_RBASE_LOAD_DATASIZE (1)
592 #define ACAMERA_FPGA_FRAME_READER_UV_RBASE_LOAD_OFFSET (0x90)
593 #define ACAMERA_FPGA_FRAME_READER_UV_RBASE_LOAD_MASK (0x1)
594
595 // args: data (1-bit)
acamera_fpga_frame_reader_uv_rbase_load_write(uintptr_t base,uint8_t data)596 static __inline void acamera_fpga_frame_reader_uv_rbase_load_write(uintptr_t base, uint8_t data) {
597 uint32_t curr = system_hw_read_32(0x209090L);
598 system_hw_write_32(0x209090L, (((uint32_t) (data & 0x1)) << 0) | (curr & 0xfffffffe));
599 }
acamera_fpga_frame_reader_uv_rbase_load_read(uintptr_t base)600 static __inline uint8_t acamera_fpga_frame_reader_uv_rbase_load_read(uintptr_t base) {
601 return (uint8_t)((system_hw_read_32(0x209090L) & 0x1) >> 0);
602 }
603 // ------------------------------------------------------------------------------ //
604 // Register: rbase load sel
605 // ------------------------------------------------------------------------------ //
606
607 // ------------------------------------------------------------------------------ //
608 // Selector for rbase_load strobe: 0-field, 1-configuration bit rbase_load
609 // ------------------------------------------------------------------------------ //
610
611 #define ACAMERA_FPGA_FRAME_READER_UV_RBASE_LOAD_SEL_DEFAULT (0x0)
612 #define ACAMERA_FPGA_FRAME_READER_UV_RBASE_LOAD_SEL_DATASIZE (1)
613 #define ACAMERA_FPGA_FRAME_READER_UV_RBASE_LOAD_SEL_OFFSET (0x90)
614 #define ACAMERA_FPGA_FRAME_READER_UV_RBASE_LOAD_SEL_MASK (0x10)
615
616 // args: data (1-bit)
acamera_fpga_frame_reader_uv_rbase_load_sel_write(uintptr_t base,uint8_t data)617 static __inline void acamera_fpga_frame_reader_uv_rbase_load_sel_write(uintptr_t base, uint8_t data) {
618 uint32_t curr = system_hw_read_32(0x209090L);
619 system_hw_write_32(0x209090L, (((uint32_t) (data & 0x1)) << 4) | (curr & 0xffffffef));
620 }
acamera_fpga_frame_reader_uv_rbase_load_sel_read(uintptr_t base)621 static __inline uint8_t acamera_fpga_frame_reader_uv_rbase_load_sel_read(uintptr_t base) {
622 return (uint8_t)((system_hw_read_32(0x209090L) & 0x10) >> 4);
623 }
624 // ------------------------------------------------------------------------------ //
625 // Register: rbase
626 // ------------------------------------------------------------------------------ //
627
628 // ------------------------------------------------------------------------------ //
629 // Base address for frame buffer, should be word-aligned
630 // ------------------------------------------------------------------------------ //
631
632 #define ACAMERA_FPGA_FRAME_READER_UV_RBASE_DEFAULT (0x0)
633 #define ACAMERA_FPGA_FRAME_READER_UV_RBASE_DATASIZE (32)
634 #define ACAMERA_FPGA_FRAME_READER_UV_RBASE_OFFSET (0x94)
635 #define ACAMERA_FPGA_FRAME_READER_UV_RBASE_MASK (0xffffffff)
636
637 // args: data (32-bit)
acamera_fpga_frame_reader_uv_rbase_write(uintptr_t base,uint32_t data)638 static __inline void acamera_fpga_frame_reader_uv_rbase_write(uintptr_t base, uint32_t data) {
639 system_hw_write_32(0x209094L, data);
640 }
acamera_fpga_frame_reader_uv_rbase_read(uintptr_t base)641 static __inline uint32_t acamera_fpga_frame_reader_uv_rbase_read(uintptr_t base) {
642 return system_hw_read_32(0x209094L);
643 }
644 // ------------------------------------------------------------------------------ //
645 // Register: Line_offset
646 // ------------------------------------------------------------------------------ //
647
648 // ------------------------------------------------------------------------------ //
649 // Indicates offset in bytes from the start of one line to the next line. Should be word-aligned
650 // ------------------------------------------------------------------------------ //
651
652 #define ACAMERA_FPGA_FRAME_READER_UV_LINE_OFFSET_DEFAULT (0x1000)
653 #define ACAMERA_FPGA_FRAME_READER_UV_LINE_OFFSET_DATASIZE (32)
654 #define ACAMERA_FPGA_FRAME_READER_UV_LINE_OFFSET_OFFSET (0x98)
655 #define ACAMERA_FPGA_FRAME_READER_UV_LINE_OFFSET_MASK (0xffffffff)
656
657 // args: data (32-bit)
acamera_fpga_frame_reader_uv_line_offset_write(uintptr_t base,uint32_t data)658 static __inline void acamera_fpga_frame_reader_uv_line_offset_write(uintptr_t base, uint32_t data) {
659 system_hw_write_32(0x209098L, data);
660 }
acamera_fpga_frame_reader_uv_line_offset_read(uintptr_t base)661 static __inline uint32_t acamera_fpga_frame_reader_uv_line_offset_read(uintptr_t base) {
662 return system_hw_read_32(0x209098L);
663 }
664 // ------------------------------------------------------------------------------ //
665 // Register: axi_port_enable
666 // ------------------------------------------------------------------------------ //
667
668 #define ACAMERA_FPGA_FRAME_READER_UV_AXI_PORT_ENABLE_DEFAULT (0x0)
669 #define ACAMERA_FPGA_FRAME_READER_UV_AXI_PORT_ENABLE_DATASIZE (1)
670 #define ACAMERA_FPGA_FRAME_READER_UV_AXI_PORT_ENABLE_OFFSET (0x9c)
671 #define ACAMERA_FPGA_FRAME_READER_UV_AXI_PORT_ENABLE_MASK (0x1)
672
673 // args: data (1-bit)
acamera_fpga_frame_reader_uv_axi_port_enable_write(uintptr_t base,uint8_t data)674 static __inline void acamera_fpga_frame_reader_uv_axi_port_enable_write(uintptr_t base, uint8_t data) {
675 uint32_t curr = system_hw_read_32(0x20909cL);
676 system_hw_write_32(0x20909cL, (((uint32_t) (data & 0x1)) << 0) | (curr & 0xfffffffe));
677 }
acamera_fpga_frame_reader_uv_axi_port_enable_read(uintptr_t base)678 static __inline uint8_t acamera_fpga_frame_reader_uv_axi_port_enable_read(uintptr_t base) {
679 return (uint8_t)((system_hw_read_32(0x20909cL) & 0x1) >> 0);
680 }
681 // ------------------------------------------------------------------------------ //
682 // Register: config
683 // ------------------------------------------------------------------------------ //
684
685 #define ACAMERA_FPGA_FRAME_READER_UV_CONFIG_DEFAULT (0x0000)
686 #define ACAMERA_FPGA_FRAME_READER_UV_CONFIG_DATASIZE (32)
687 #define ACAMERA_FPGA_FRAME_READER_UV_CONFIG_OFFSET (0xa0)
688 #define ACAMERA_FPGA_FRAME_READER_UV_CONFIG_MASK (0xffffffff)
689
690 // args: data (32-bit)
acamera_fpga_frame_reader_uv_config_write(uintptr_t base,uint32_t data)691 static __inline void acamera_fpga_frame_reader_uv_config_write(uintptr_t base, uint32_t data) {
692 system_hw_write_32(0x2090a0L, data);
693 }
acamera_fpga_frame_reader_uv_config_read(uintptr_t base)694 static __inline uint32_t acamera_fpga_frame_reader_uv_config_read(uintptr_t base) {
695 return system_hw_read_32(0x2090a0L);
696 }
697 // ------------------------------------------------------------------------------ //
698 // Register: status
699 // ------------------------------------------------------------------------------ //
700
701 #define ACAMERA_FPGA_FRAME_READER_UV_STATUS_DEFAULT (0x0000)
702 #define ACAMERA_FPGA_FRAME_READER_UV_STATUS_DATASIZE (32)
703 #define ACAMERA_FPGA_FRAME_READER_UV_STATUS_OFFSET (0xa4)
704 #define ACAMERA_FPGA_FRAME_READER_UV_STATUS_MASK (0xffffffff)
705
706 // args: data (32-bit)
acamera_fpga_frame_reader_uv_status_read(uintptr_t base)707 static __inline uint32_t acamera_fpga_frame_reader_uv_status_read(uintptr_t base) {
708 return system_hw_read_32(0x2090a4L);
709 }
710 // ------------------------------------------------------------------------------ //
711 // Register: active_width
712 // ------------------------------------------------------------------------------ //
713
714 #define ACAMERA_FPGA_FRAME_READER_UV_ACTIVE_WIDTH_DEFAULT (0x0780)
715 #define ACAMERA_FPGA_FRAME_READER_UV_ACTIVE_WIDTH_DATASIZE (16)
716 #define ACAMERA_FPGA_FRAME_READER_UV_ACTIVE_WIDTH_OFFSET (0xa8)
717 #define ACAMERA_FPGA_FRAME_READER_UV_ACTIVE_WIDTH_MASK (0xffff)
718
719 // args: data (16-bit)
acamera_fpga_frame_reader_uv_active_width_write(uintptr_t base,uint16_t data)720 static __inline void acamera_fpga_frame_reader_uv_active_width_write(uintptr_t base, uint16_t data) {
721 uint32_t curr = system_hw_read_32(0x2090a8L);
722 system_hw_write_32(0x2090a8L, (((uint32_t) (data & 0xffff)) << 0) | (curr & 0xffff0000));
723 }
acamera_fpga_frame_reader_uv_active_width_read(uintptr_t base)724 static __inline uint16_t acamera_fpga_frame_reader_uv_active_width_read(uintptr_t base) {
725 return (uint16_t)((system_hw_read_32(0x2090a8L) & 0xffff) >> 0);
726 }
727 // ------------------------------------------------------------------------------ //
728 // Register: active_height
729 // ------------------------------------------------------------------------------ //
730
731 #define ACAMERA_FPGA_FRAME_READER_UV_ACTIVE_HEIGHT_DEFAULT (0x0438)
732 #define ACAMERA_FPGA_FRAME_READER_UV_ACTIVE_HEIGHT_DATASIZE (16)
733 #define ACAMERA_FPGA_FRAME_READER_UV_ACTIVE_HEIGHT_OFFSET (0xac)
734 #define ACAMERA_FPGA_FRAME_READER_UV_ACTIVE_HEIGHT_MASK (0xffff)
735
736 // args: data (16-bit)
acamera_fpga_frame_reader_uv_active_height_write(uintptr_t base,uint16_t data)737 static __inline void acamera_fpga_frame_reader_uv_active_height_write(uintptr_t base, uint16_t data) {
738 uint32_t curr = system_hw_read_32(0x2090acL);
739 system_hw_write_32(0x2090acL, (((uint32_t) (data & 0xffff)) << 0) | (curr & 0xffff0000));
740 }
acamera_fpga_frame_reader_uv_active_height_read(uintptr_t base)741 static __inline uint16_t acamera_fpga_frame_reader_uv_active_height_read(uintptr_t base) {
742 return (uint16_t)((system_hw_read_32(0x2090acL) & 0xffff) >> 0);
743 }
744 // ------------------------------------------------------------------------------ //
745 // Group: Horizontal Shift
746 // ------------------------------------------------------------------------------ //
747
748 // ------------------------------------------------------------------------------ //
749 // Register: Offset
750 // ------------------------------------------------------------------------------ //
751
752 // ------------------------------------------------------------------------------ //
753 // :Pixel resolution shift offset
754 // ------------------------------------------------------------------------------ //
755
756 #define ACAMERA_FPGA_HORIZONTAL_SHIFT_OFFSET_DEFAULT (0x0)
757 #define ACAMERA_FPGA_HORIZONTAL_SHIFT_OFFSET_DATASIZE (5)
758 #define ACAMERA_FPGA_HORIZONTAL_SHIFT_OFFSET_OFFSET (0x120)
759 #define ACAMERA_FPGA_HORIZONTAL_SHIFT_OFFSET_MASK (0x1f)
760
761 // args: data (5-bit)
acamera_fpga_horizontal_shift_offset_write(uintptr_t base,uint8_t data)762 static __inline void acamera_fpga_horizontal_shift_offset_write(uintptr_t base, uint8_t data) {
763 uint32_t curr = system_hw_read_32(0x209120L);
764 system_hw_write_32(0x209120L, (((uint32_t) (data & 0x1f)) << 0) | (curr & 0xffffffe0));
765 }
acamera_fpga_horizontal_shift_offset_read(uintptr_t base)766 static __inline uint8_t acamera_fpga_horizontal_shift_offset_read(uintptr_t base) {
767 return (uint8_t)((system_hw_read_32(0x209120L) & 0x1f) >> 0);
768 }
769 // ------------------------------------------------------------------------------ //
770 // Register: Enable
771 // ------------------------------------------------------------------------------ //
772
773 #define ACAMERA_FPGA_HORIZONTAL_SHIFT_ENABLE_DEFAULT (0x0)
774 #define ACAMERA_FPGA_HORIZONTAL_SHIFT_ENABLE_DATASIZE (1)
775 #define ACAMERA_FPGA_HORIZONTAL_SHIFT_ENABLE_OFFSET (0x120)
776 #define ACAMERA_FPGA_HORIZONTAL_SHIFT_ENABLE_MASK (0x10000)
777
778 // args: data (1-bit)
acamera_fpga_horizontal_shift_enable_write(uintptr_t base,uint8_t data)779 static __inline void acamera_fpga_horizontal_shift_enable_write(uintptr_t base, uint8_t data) {
780 uint32_t curr = system_hw_read_32(0x209120L);
781 system_hw_write_32(0x209120L, (((uint32_t) (data & 0x1)) << 16) | (curr & 0xfffeffff));
782 }
acamera_fpga_horizontal_shift_enable_read(uintptr_t base)783 static __inline uint8_t acamera_fpga_horizontal_shift_enable_read(uintptr_t base) {
784 return (uint8_t)((system_hw_read_32(0x209120L) & 0x10000) >> 16);
785 }
786 // ------------------------------------------------------------------------------ //
787 // Group: CS YR
788 // ------------------------------------------------------------------------------ //
789
790 // ------------------------------------------------------------------------------ //
791 // Conversion of RGB to YUV data using a 3x3 color matrix plus offsets
792 // ------------------------------------------------------------------------------ //
793
794 // ------------------------------------------------------------------------------ //
795 // Register: Enable matrix
796 // ------------------------------------------------------------------------------ //
797
798 // ------------------------------------------------------------------------------ //
799 // Color matrix enable: 0=off 1=on
800 // ------------------------------------------------------------------------------ //
801
802 #define ACAMERA_FPGA_YR_CS_CONV_ENABLE_MATRIX_DEFAULT (1)
803 #define ACAMERA_FPGA_YR_CS_CONV_ENABLE_MATRIX_DATASIZE (1)
804 #define ACAMERA_FPGA_YR_CS_CONV_ENABLE_MATRIX_OFFSET (0x230)
805 #define ACAMERA_FPGA_YR_CS_CONV_ENABLE_MATRIX_MASK (0x1)
806
807 // args: data (1-bit)
acamera_fpga_yr_cs_conv_enable_matrix_write(uintptr_t base,uint8_t data)808 static __inline void acamera_fpga_yr_cs_conv_enable_matrix_write(uintptr_t base, uint8_t data) {
809 uint32_t curr = system_hw_read_32(0x209230L);
810 system_hw_write_32(0x209230L, (((uint32_t) (data & 0x1)) << 0) | (curr & 0xfffffffe));
811 }
acamera_fpga_yr_cs_conv_enable_matrix_read(uintptr_t base)812 static __inline uint8_t acamera_fpga_yr_cs_conv_enable_matrix_read(uintptr_t base) {
813 return (uint8_t)((system_hw_read_32(0x209230L) & 0x1) >> 0);
814 }
815 // ------------------------------------------------------------------------------ //
816 // Register: Enable Horizontal downsample
817 // ------------------------------------------------------------------------------ //
818
819 // ------------------------------------------------------------------------------ //
820 // Downsample enable: 0=off 1=on
821 // ------------------------------------------------------------------------------ //
822
823 #define ACAMERA_FPGA_YR_CS_CONV_ENABLE_HORIZONTAL_DOWNSAMPLE_DEFAULT (0)
824 #define ACAMERA_FPGA_YR_CS_CONV_ENABLE_HORIZONTAL_DOWNSAMPLE_DATASIZE (1)
825 #define ACAMERA_FPGA_YR_CS_CONV_ENABLE_HORIZONTAL_DOWNSAMPLE_OFFSET (0x230)
826 #define ACAMERA_FPGA_YR_CS_CONV_ENABLE_HORIZONTAL_DOWNSAMPLE_MASK (0x2)
827
828 // args: data (1-bit)
acamera_fpga_yr_cs_conv_enable_horizontal_downsample_write(uintptr_t base,uint8_t data)829 static __inline void acamera_fpga_yr_cs_conv_enable_horizontal_downsample_write(uintptr_t base, uint8_t data) {
830 uint32_t curr = system_hw_read_32(0x209230L);
831 system_hw_write_32(0x209230L, (((uint32_t) (data & 0x1)) << 1) | (curr & 0xfffffffd));
832 }
acamera_fpga_yr_cs_conv_enable_horizontal_downsample_read(uintptr_t base)833 static __inline uint8_t acamera_fpga_yr_cs_conv_enable_horizontal_downsample_read(uintptr_t base) {
834 return (uint8_t)((system_hw_read_32(0x209230L) & 0x2) >> 1);
835 }
836 // ------------------------------------------------------------------------------ //
837 // Register: Enable Vertical downsample
838 // ------------------------------------------------------------------------------ //
839
840 // ------------------------------------------------------------------------------ //
841 // Downsample enable: 0=off 1=on
842 // ------------------------------------------------------------------------------ //
843
844 #define ACAMERA_FPGA_YR_CS_CONV_ENABLE_VERTICAL_DOWNSAMPLE_DEFAULT (0)
845 #define ACAMERA_FPGA_YR_CS_CONV_ENABLE_VERTICAL_DOWNSAMPLE_DATASIZE (1)
846 #define ACAMERA_FPGA_YR_CS_CONV_ENABLE_VERTICAL_DOWNSAMPLE_OFFSET (0x230)
847 #define ACAMERA_FPGA_YR_CS_CONV_ENABLE_VERTICAL_DOWNSAMPLE_MASK (0x4)
848
849 // args: data (1-bit)
acamera_fpga_yr_cs_conv_enable_vertical_downsample_write(uintptr_t base,uint8_t data)850 static __inline void acamera_fpga_yr_cs_conv_enable_vertical_downsample_write(uintptr_t base, uint8_t data) {
851 uint32_t curr = system_hw_read_32(0x209230L);
852 system_hw_write_32(0x209230L, (((uint32_t) (data & 0x1)) << 2) | (curr & 0xfffffffb));
853 }
acamera_fpga_yr_cs_conv_enable_vertical_downsample_read(uintptr_t base)854 static __inline uint8_t acamera_fpga_yr_cs_conv_enable_vertical_downsample_read(uintptr_t base) {
855 return (uint8_t)((system_hw_read_32(0x209230L) & 0x4) >> 2);
856 }
857 // ------------------------------------------------------------------------------ //
858 // Register: Enable filter
859 // ------------------------------------------------------------------------------ //
860
861 // ------------------------------------------------------------------------------ //
862 // Downsample enable: 0=off 1=on
863 // ------------------------------------------------------------------------------ //
864
865 #define ACAMERA_FPGA_YR_CS_CONV_ENABLE_FILTER_DEFAULT (0)
866 #define ACAMERA_FPGA_YR_CS_CONV_ENABLE_FILTER_DATASIZE (1)
867 #define ACAMERA_FPGA_YR_CS_CONV_ENABLE_FILTER_OFFSET (0x230)
868 #define ACAMERA_FPGA_YR_CS_CONV_ENABLE_FILTER_MASK (0x8)
869
870 // args: data (1-bit)
acamera_fpga_yr_cs_conv_enable_filter_write(uintptr_t base,uint8_t data)871 static __inline void acamera_fpga_yr_cs_conv_enable_filter_write(uintptr_t base, uint8_t data) {
872 uint32_t curr = system_hw_read_32(0x209230L);
873 system_hw_write_32(0x209230L, (((uint32_t) (data & 0x1)) << 3) | (curr & 0xfffffff7));
874 }
acamera_fpga_yr_cs_conv_enable_filter_read(uintptr_t base)875 static __inline uint8_t acamera_fpga_yr_cs_conv_enable_filter_read(uintptr_t base) {
876 return (uint8_t)((system_hw_read_32(0x209230L) & 0x8) >> 3);
877 }
878 // ------------------------------------------------------------------------------ //
879 // Register: Coefft 11
880 // ------------------------------------------------------------------------------ //
881
882 // ------------------------------------------------------------------------------ //
883 // Matrix coefficient for R-Y multiplier
884 // ------------------------------------------------------------------------------ //
885
886 #define ACAMERA_FPGA_YR_CS_CONV_COEFFT_11_DEFAULT (0x012A)
887 #define ACAMERA_FPGA_YR_CS_CONV_COEFFT_11_DATASIZE (16)
888 #define ACAMERA_FPGA_YR_CS_CONV_COEFFT_11_OFFSET (0x200)
889 #define ACAMERA_FPGA_YR_CS_CONV_COEFFT_11_MASK (0xffff)
890
891 // args: data (16-bit)
acamera_fpga_yr_cs_conv_coefft_11_write(uintptr_t base,uint16_t data)892 static __inline void acamera_fpga_yr_cs_conv_coefft_11_write(uintptr_t base, uint16_t data) {
893 uint32_t curr = system_hw_read_32(0x209200L);
894 system_hw_write_32(0x209200L, (((uint32_t) (data & 0xffff)) << 0) | (curr & 0xffff0000));
895 }
acamera_fpga_yr_cs_conv_coefft_11_read(uintptr_t base)896 static __inline uint16_t acamera_fpga_yr_cs_conv_coefft_11_read(uintptr_t base) {
897 return (uint16_t)((system_hw_read_32(0x209200L) & 0xffff) >> 0);
898 }
899 // ------------------------------------------------------------------------------ //
900 // Register: Coefft 12
901 // ------------------------------------------------------------------------------ //
902
903 // ------------------------------------------------------------------------------ //
904 // Matrix coefficient for G-Y multiplier
905 // ------------------------------------------------------------------------------ //
906
907 #define ACAMERA_FPGA_YR_CS_CONV_COEFFT_12_DEFAULT (0x0000)
908 #define ACAMERA_FPGA_YR_CS_CONV_COEFFT_12_DATASIZE (16)
909 #define ACAMERA_FPGA_YR_CS_CONV_COEFFT_12_OFFSET (0x204)
910 #define ACAMERA_FPGA_YR_CS_CONV_COEFFT_12_MASK (0xffff)
911
912 // args: data (16-bit)
acamera_fpga_yr_cs_conv_coefft_12_write(uintptr_t base,uint16_t data)913 static __inline void acamera_fpga_yr_cs_conv_coefft_12_write(uintptr_t base, uint16_t data) {
914 uint32_t curr = system_hw_read_32(0x209204L);
915 system_hw_write_32(0x209204L, (((uint32_t) (data & 0xffff)) << 0) | (curr & 0xffff0000));
916 }
acamera_fpga_yr_cs_conv_coefft_12_read(uintptr_t base)917 static __inline uint16_t acamera_fpga_yr_cs_conv_coefft_12_read(uintptr_t base) {
918 return (uint16_t)((system_hw_read_32(0x209204L) & 0xffff) >> 0);
919 }
920 // ------------------------------------------------------------------------------ //
921 // Register: Coefft 13
922 // ------------------------------------------------------------------------------ //
923
924 // ------------------------------------------------------------------------------ //
925 // Matrix coefficient for B-Y multiplier
926 // ------------------------------------------------------------------------------ //
927
928 #define ACAMERA_FPGA_YR_CS_CONV_COEFFT_13_DEFAULT (0x01D2)
929 #define ACAMERA_FPGA_YR_CS_CONV_COEFFT_13_DATASIZE (16)
930 #define ACAMERA_FPGA_YR_CS_CONV_COEFFT_13_OFFSET (0x208)
931 #define ACAMERA_FPGA_YR_CS_CONV_COEFFT_13_MASK (0xffff)
932
933 // args: data (16-bit)
acamera_fpga_yr_cs_conv_coefft_13_write(uintptr_t base,uint16_t data)934 static __inline void acamera_fpga_yr_cs_conv_coefft_13_write(uintptr_t base, uint16_t data) {
935 uint32_t curr = system_hw_read_32(0x209208L);
936 system_hw_write_32(0x209208L, (((uint32_t) (data & 0xffff)) << 0) | (curr & 0xffff0000));
937 }
acamera_fpga_yr_cs_conv_coefft_13_read(uintptr_t base)938 static __inline uint16_t acamera_fpga_yr_cs_conv_coefft_13_read(uintptr_t base) {
939 return (uint16_t)((system_hw_read_32(0x209208L) & 0xffff) >> 0);
940 }
941 // ------------------------------------------------------------------------------ //
942 // Register: Coefft 21
943 // ------------------------------------------------------------------------------ //
944
945 // ------------------------------------------------------------------------------ //
946 // Matrix coefficient for R-Cb multiplier
947 // ------------------------------------------------------------------------------ //
948
949 #define ACAMERA_FPGA_YR_CS_CONV_COEFFT_21_DEFAULT (0x012A)
950 #define ACAMERA_FPGA_YR_CS_CONV_COEFFT_21_DATASIZE (16)
951 #define ACAMERA_FPGA_YR_CS_CONV_COEFFT_21_OFFSET (0x20c)
952 #define ACAMERA_FPGA_YR_CS_CONV_COEFFT_21_MASK (0xffff)
953
954 // args: data (16-bit)
acamera_fpga_yr_cs_conv_coefft_21_write(uintptr_t base,uint16_t data)955 static __inline void acamera_fpga_yr_cs_conv_coefft_21_write(uintptr_t base, uint16_t data) {
956 uint32_t curr = system_hw_read_32(0x20920cL);
957 system_hw_write_32(0x20920cL, (((uint32_t) (data & 0xffff)) << 0) | (curr & 0xffff0000));
958 }
acamera_fpga_yr_cs_conv_coefft_21_read(uintptr_t base)959 static __inline uint16_t acamera_fpga_yr_cs_conv_coefft_21_read(uintptr_t base) {
960 return (uint16_t)((system_hw_read_32(0x20920cL) & 0xffff) >> 0);
961 }
962 // ------------------------------------------------------------------------------ //
963 // Register: Coefft 22
964 // ------------------------------------------------------------------------------ //
965
966 // ------------------------------------------------------------------------------ //
967 // Matrix coefficient for G-Cb multiplier
968 // ------------------------------------------------------------------------------ //
969
970 #define ACAMERA_FPGA_YR_CS_CONV_COEFFT_22_DEFAULT (0x0000)
971 #define ACAMERA_FPGA_YR_CS_CONV_COEFFT_22_DATASIZE (16)
972 #define ACAMERA_FPGA_YR_CS_CONV_COEFFT_22_OFFSET (0x210)
973 #define ACAMERA_FPGA_YR_CS_CONV_COEFFT_22_MASK (0xffff)
974
975 // args: data (16-bit)
acamera_fpga_yr_cs_conv_coefft_22_write(uintptr_t base,uint16_t data)976 static __inline void acamera_fpga_yr_cs_conv_coefft_22_write(uintptr_t base, uint16_t data) {
977 uint32_t curr = system_hw_read_32(0x209210L);
978 system_hw_write_32(0x209210L, (((uint32_t) (data & 0xffff)) << 0) | (curr & 0xffff0000));
979 }
acamera_fpga_yr_cs_conv_coefft_22_read(uintptr_t base)980 static __inline uint16_t acamera_fpga_yr_cs_conv_coefft_22_read(uintptr_t base) {
981 return (uint16_t)((system_hw_read_32(0x209210L) & 0xffff) >> 0);
982 }
983 // ------------------------------------------------------------------------------ //
984 // Register: Coefft 23
985 // ------------------------------------------------------------------------------ //
986
987 // ------------------------------------------------------------------------------ //
988 // Matrix coefficient for B-Cb multiplier
989 // ------------------------------------------------------------------------------ //
990
991 #define ACAMERA_FPGA_YR_CS_CONV_COEFFT_23_DEFAULT (0x8088)
992 #define ACAMERA_FPGA_YR_CS_CONV_COEFFT_23_DATASIZE (16)
993 #define ACAMERA_FPGA_YR_CS_CONV_COEFFT_23_OFFSET (0x214)
994 #define ACAMERA_FPGA_YR_CS_CONV_COEFFT_23_MASK (0xffff)
995
996 // args: data (16-bit)
acamera_fpga_yr_cs_conv_coefft_23_write(uintptr_t base,uint16_t data)997 static __inline void acamera_fpga_yr_cs_conv_coefft_23_write(uintptr_t base, uint16_t data) {
998 uint32_t curr = system_hw_read_32(0x209214L);
999 system_hw_write_32(0x209214L, (((uint32_t) (data & 0xffff)) << 0) | (curr & 0xffff0000));
1000 }
acamera_fpga_yr_cs_conv_coefft_23_read(uintptr_t base)1001 static __inline uint16_t acamera_fpga_yr_cs_conv_coefft_23_read(uintptr_t base) {
1002 return (uint16_t)((system_hw_read_32(0x209214L) & 0xffff) >> 0);
1003 }
1004 // ------------------------------------------------------------------------------ //
1005 // Register: Coefft 31
1006 // ------------------------------------------------------------------------------ //
1007
1008 // ------------------------------------------------------------------------------ //
1009 // Matrix coefficient for R-Cr multiplier
1010 // ------------------------------------------------------------------------------ //
1011
1012 #define ACAMERA_FPGA_YR_CS_CONV_COEFFT_31_DEFAULT (0x012A)
1013 #define ACAMERA_FPGA_YR_CS_CONV_COEFFT_31_DATASIZE (16)
1014 #define ACAMERA_FPGA_YR_CS_CONV_COEFFT_31_OFFSET (0x218)
1015 #define ACAMERA_FPGA_YR_CS_CONV_COEFFT_31_MASK (0xffff)
1016
1017 // args: data (16-bit)
acamera_fpga_yr_cs_conv_coefft_31_write(uintptr_t base,uint16_t data)1018 static __inline void acamera_fpga_yr_cs_conv_coefft_31_write(uintptr_t base, uint16_t data) {
1019 uint32_t curr = system_hw_read_32(0x209218L);
1020 system_hw_write_32(0x209218L, (((uint32_t) (data & 0xffff)) << 0) | (curr & 0xffff0000));
1021 }
acamera_fpga_yr_cs_conv_coefft_31_read(uintptr_t base)1022 static __inline uint16_t acamera_fpga_yr_cs_conv_coefft_31_read(uintptr_t base) {
1023 return (uint16_t)((system_hw_read_32(0x209218L) & 0xffff) >> 0);
1024 }
1025 // ------------------------------------------------------------------------------ //
1026 // Register: Coefft 32
1027 // ------------------------------------------------------------------------------ //
1028
1029 // ------------------------------------------------------------------------------ //
1030 // Matrix coefficient for G-Cr multiplier
1031 // ------------------------------------------------------------------------------ //
1032
1033 #define ACAMERA_FPGA_YR_CS_CONV_COEFFT_32_DEFAULT (0x021D)
1034 #define ACAMERA_FPGA_YR_CS_CONV_COEFFT_32_DATASIZE (16)
1035 #define ACAMERA_FPGA_YR_CS_CONV_COEFFT_32_OFFSET (0x21c)
1036 #define ACAMERA_FPGA_YR_CS_CONV_COEFFT_32_MASK (0xffff)
1037
1038 // args: data (16-bit)
acamera_fpga_yr_cs_conv_coefft_32_write(uintptr_t base,uint16_t data)1039 static __inline void acamera_fpga_yr_cs_conv_coefft_32_write(uintptr_t base, uint16_t data) {
1040 uint32_t curr = system_hw_read_32(0x20921cL);
1041 system_hw_write_32(0x20921cL, (((uint32_t) (data & 0xffff)) << 0) | (curr & 0xffff0000));
1042 }
acamera_fpga_yr_cs_conv_coefft_32_read(uintptr_t base)1043 static __inline uint16_t acamera_fpga_yr_cs_conv_coefft_32_read(uintptr_t base) {
1044 return (uint16_t)((system_hw_read_32(0x20921cL) & 0xffff) >> 0);
1045 }
1046 // ------------------------------------------------------------------------------ //
1047 // Register: Coefft 33
1048 // ------------------------------------------------------------------------------ //
1049
1050 // ------------------------------------------------------------------------------ //
1051 // Matrix coefficient for B-Cr multiplier
1052 // ------------------------------------------------------------------------------ //
1053
1054 #define ACAMERA_FPGA_YR_CS_CONV_COEFFT_33_DEFAULT (0x0000)
1055 #define ACAMERA_FPGA_YR_CS_CONV_COEFFT_33_DATASIZE (16)
1056 #define ACAMERA_FPGA_YR_CS_CONV_COEFFT_33_OFFSET (0x220)
1057 #define ACAMERA_FPGA_YR_CS_CONV_COEFFT_33_MASK (0xffff)
1058
1059 // args: data (16-bit)
acamera_fpga_yr_cs_conv_coefft_33_write(uintptr_t base,uint16_t data)1060 static __inline void acamera_fpga_yr_cs_conv_coefft_33_write(uintptr_t base, uint16_t data) {
1061 uint32_t curr = system_hw_read_32(0x209220L);
1062 system_hw_write_32(0x209220L, (((uint32_t) (data & 0xffff)) << 0) | (curr & 0xffff0000));
1063 }
acamera_fpga_yr_cs_conv_coefft_33_read(uintptr_t base)1064 static __inline uint16_t acamera_fpga_yr_cs_conv_coefft_33_read(uintptr_t base) {
1065 return (uint16_t)((system_hw_read_32(0x209220L) & 0xffff) >> 0);
1066 }
1067 // ------------------------------------------------------------------------------ //
1068 // Register: Coefft o1
1069 // ------------------------------------------------------------------------------ //
1070
1071 // ------------------------------------------------------------------------------ //
1072 // Offset for Y
1073 // ------------------------------------------------------------------------------ //
1074
1075 #define ACAMERA_FPGA_YR_CS_CONV_COEFFT_O1_DEFAULT (0x420)
1076 #define ACAMERA_FPGA_YR_CS_CONV_COEFFT_O1_DATASIZE (11)
1077 #define ACAMERA_FPGA_YR_CS_CONV_COEFFT_O1_OFFSET (0x224)
1078 #define ACAMERA_FPGA_YR_CS_CONV_COEFFT_O1_MASK (0x7ff)
1079
1080 // args: data (11-bit)
acamera_fpga_yr_cs_conv_coefft_o1_write(uintptr_t base,uint16_t data)1081 static __inline void acamera_fpga_yr_cs_conv_coefft_o1_write(uintptr_t base, uint16_t data) {
1082 uint32_t curr = system_hw_read_32(0x209224L);
1083 system_hw_write_32(0x209224L, (((uint32_t) (data & 0x7ff)) << 0) | (curr & 0xfffff800));
1084 }
acamera_fpga_yr_cs_conv_coefft_o1_read(uintptr_t base)1085 static __inline uint16_t acamera_fpga_yr_cs_conv_coefft_o1_read(uintptr_t base) {
1086 return (uint16_t)((system_hw_read_32(0x209224L) & 0x7ff) >> 0);
1087 }
1088 // ------------------------------------------------------------------------------ //
1089 // Register: Coefft o2
1090 // ------------------------------------------------------------------------------ //
1091
1092 // ------------------------------------------------------------------------------ //
1093 // Offset for Cb
1094 // ------------------------------------------------------------------------------ //
1095
1096 #define ACAMERA_FPGA_YR_CS_CONV_COEFFT_O2_DEFAULT (0x134)
1097 #define ACAMERA_FPGA_YR_CS_CONV_COEFFT_O2_DATASIZE (11)
1098 #define ACAMERA_FPGA_YR_CS_CONV_COEFFT_O2_OFFSET (0x228)
1099 #define ACAMERA_FPGA_YR_CS_CONV_COEFFT_O2_MASK (0x7ff)
1100
1101 // args: data (11-bit)
acamera_fpga_yr_cs_conv_coefft_o2_write(uintptr_t base,uint16_t data)1102 static __inline void acamera_fpga_yr_cs_conv_coefft_o2_write(uintptr_t base, uint16_t data) {
1103 uint32_t curr = system_hw_read_32(0x209228L);
1104 system_hw_write_32(0x209228L, (((uint32_t) (data & 0x7ff)) << 0) | (curr & 0xfffff800));
1105 }
acamera_fpga_yr_cs_conv_coefft_o2_read(uintptr_t base)1106 static __inline uint16_t acamera_fpga_yr_cs_conv_coefft_o2_read(uintptr_t base) {
1107 return (uint16_t)((system_hw_read_32(0x209228L) & 0x7ff) >> 0);
1108 }
1109 // ------------------------------------------------------------------------------ //
1110 // Register: Coefft o3
1111 // ------------------------------------------------------------------------------ //
1112
1113 // ------------------------------------------------------------------------------ //
1114 // Offset for Cr
1115 // ------------------------------------------------------------------------------ //
1116
1117 #define ACAMERA_FPGA_YR_CS_CONV_COEFFT_O3_DEFAULT (0x401)
1118 #define ACAMERA_FPGA_YR_CS_CONV_COEFFT_O3_DATASIZE (11)
1119 #define ACAMERA_FPGA_YR_CS_CONV_COEFFT_O3_OFFSET (0x22c)
1120 #define ACAMERA_FPGA_YR_CS_CONV_COEFFT_O3_MASK (0x7ff)
1121
1122 // args: data (11-bit)
acamera_fpga_yr_cs_conv_coefft_o3_write(uintptr_t base,uint16_t data)1123 static __inline void acamera_fpga_yr_cs_conv_coefft_o3_write(uintptr_t base, uint16_t data) {
1124 uint32_t curr = system_hw_read_32(0x20922cL);
1125 system_hw_write_32(0x20922cL, (((uint32_t) (data & 0x7ff)) << 0) | (curr & 0xfffff800));
1126 }
acamera_fpga_yr_cs_conv_coefft_o3_read(uintptr_t base)1127 static __inline uint16_t acamera_fpga_yr_cs_conv_coefft_o3_read(uintptr_t base) {
1128 return (uint16_t)((system_hw_read_32(0x20922cL) & 0x7ff) >> 0);
1129 }
1130 // ------------------------------------------------------------------------------ //
1131 // Register: Clip min Y
1132 // ------------------------------------------------------------------------------ //
1133
1134 // ------------------------------------------------------------------------------ //
1135 // Minimal value for Y. Values below this are clipped.
1136 // ------------------------------------------------------------------------------ //
1137
1138 #define ACAMERA_FPGA_YR_CS_CONV_CLIP_MIN_Y_DEFAULT (0x000)
1139 #define ACAMERA_FPGA_YR_CS_CONV_CLIP_MIN_Y_DATASIZE (10)
1140 #define ACAMERA_FPGA_YR_CS_CONV_CLIP_MIN_Y_OFFSET (0x238)
1141 #define ACAMERA_FPGA_YR_CS_CONV_CLIP_MIN_Y_MASK (0x3ff)
1142
1143 // args: data (10-bit)
acamera_fpga_yr_cs_conv_clip_min_y_write(uintptr_t base,uint16_t data)1144 static __inline void acamera_fpga_yr_cs_conv_clip_min_y_write(uintptr_t base, uint16_t data) {
1145 uint32_t curr = system_hw_read_32(0x209238L);
1146 system_hw_write_32(0x209238L, (((uint32_t) (data & 0x3ff)) << 0) | (curr & 0xfffffc00));
1147 }
acamera_fpga_yr_cs_conv_clip_min_y_read(uintptr_t base)1148 static __inline uint16_t acamera_fpga_yr_cs_conv_clip_min_y_read(uintptr_t base) {
1149 return (uint16_t)((system_hw_read_32(0x209238L) & 0x3ff) >> 0);
1150 }
1151 // ------------------------------------------------------------------------------ //
1152 // Register: Clip max Y
1153 // ------------------------------------------------------------------------------ //
1154
1155 // ------------------------------------------------------------------------------ //
1156 // Maximal value for Y. Values above this are clipped.
1157 // ------------------------------------------------------------------------------ //
1158
1159 #define ACAMERA_FPGA_YR_CS_CONV_CLIP_MAX_Y_DEFAULT (0x3FF)
1160 #define ACAMERA_FPGA_YR_CS_CONV_CLIP_MAX_Y_DATASIZE (10)
1161 #define ACAMERA_FPGA_YR_CS_CONV_CLIP_MAX_Y_OFFSET (0x238)
1162 #define ACAMERA_FPGA_YR_CS_CONV_CLIP_MAX_Y_MASK (0x3ff0000)
1163
1164 // args: data (10-bit)
acamera_fpga_yr_cs_conv_clip_max_y_write(uintptr_t base,uint16_t data)1165 static __inline void acamera_fpga_yr_cs_conv_clip_max_y_write(uintptr_t base, uint16_t data) {
1166 uint32_t curr = system_hw_read_32(0x209238L);
1167 system_hw_write_32(0x209238L, (((uint32_t) (data & 0x3ff)) << 16) | (curr & 0xfc00ffff));
1168 }
acamera_fpga_yr_cs_conv_clip_max_y_read(uintptr_t base)1169 static __inline uint16_t acamera_fpga_yr_cs_conv_clip_max_y_read(uintptr_t base) {
1170 return (uint16_t)((system_hw_read_32(0x209238L) & 0x3ff0000) >> 16);
1171 }
1172 // ------------------------------------------------------------------------------ //
1173 // Register: Clip min UV
1174 // ------------------------------------------------------------------------------ //
1175
1176 // ------------------------------------------------------------------------------ //
1177 // Minimal value for Cb, Cr. Values below this are clipped.
1178 // ------------------------------------------------------------------------------ //
1179
1180 #define ACAMERA_FPGA_YR_CS_CONV_CLIP_MIN_UV_DEFAULT (0x000)
1181 #define ACAMERA_FPGA_YR_CS_CONV_CLIP_MIN_UV_DATASIZE (10)
1182 #define ACAMERA_FPGA_YR_CS_CONV_CLIP_MIN_UV_OFFSET (0x23c)
1183 #define ACAMERA_FPGA_YR_CS_CONV_CLIP_MIN_UV_MASK (0x3ff)
1184
1185 // args: data (10-bit)
acamera_fpga_yr_cs_conv_clip_min_uv_write(uintptr_t base,uint16_t data)1186 static __inline void acamera_fpga_yr_cs_conv_clip_min_uv_write(uintptr_t base, uint16_t data) {
1187 uint32_t curr = system_hw_read_32(0x20923cL);
1188 system_hw_write_32(0x20923cL, (((uint32_t) (data & 0x3ff)) << 0) | (curr & 0xfffffc00));
1189 }
acamera_fpga_yr_cs_conv_clip_min_uv_read(uintptr_t base)1190 static __inline uint16_t acamera_fpga_yr_cs_conv_clip_min_uv_read(uintptr_t base) {
1191 return (uint16_t)((system_hw_read_32(0x20923cL) & 0x3ff) >> 0);
1192 }
1193 // ------------------------------------------------------------------------------ //
1194 // Register: Clip max UV
1195 // ------------------------------------------------------------------------------ //
1196
1197 // ------------------------------------------------------------------------------ //
1198 // Maximal value for Cb, Cr. Values above this are clipped.
1199 // ------------------------------------------------------------------------------ //
1200
1201 #define ACAMERA_FPGA_YR_CS_CONV_CLIP_MAX_UV_DEFAULT (0x3FF)
1202 #define ACAMERA_FPGA_YR_CS_CONV_CLIP_MAX_UV_DATASIZE (10)
1203 #define ACAMERA_FPGA_YR_CS_CONV_CLIP_MAX_UV_OFFSET (0x23c)
1204 #define ACAMERA_FPGA_YR_CS_CONV_CLIP_MAX_UV_MASK (0x3ff0000)
1205
1206 // args: data (10-bit)
acamera_fpga_yr_cs_conv_clip_max_uv_write(uintptr_t base,uint16_t data)1207 static __inline void acamera_fpga_yr_cs_conv_clip_max_uv_write(uintptr_t base, uint16_t data) {
1208 uint32_t curr = system_hw_read_32(0x20923cL);
1209 system_hw_write_32(0x20923cL, (((uint32_t) (data & 0x3ff)) << 16) | (curr & 0xfc00ffff));
1210 }
acamera_fpga_yr_cs_conv_clip_max_uv_read(uintptr_t base)1211 static __inline uint16_t acamera_fpga_yr_cs_conv_clip_max_uv_read(uintptr_t base) {
1212 return (uint16_t)((system_hw_read_32(0x20923cL) & 0x3ff0000) >> 16);
1213 }
1214 // ------------------------------------------------------------------------------ //
1215 // Register: Enable dither
1216 // ------------------------------------------------------------------------------ //
1217
1218 // ------------------------------------------------------------------------------ //
1219 // Enables dithering module
1220 // ------------------------------------------------------------------------------ //
1221
1222 #define ACAMERA_FPGA_YR_CS_CONV_ENABLE_DITHER_DEFAULT (0x0)
1223 #define ACAMERA_FPGA_YR_CS_CONV_ENABLE_DITHER_DATASIZE (1)
1224 #define ACAMERA_FPGA_YR_CS_CONV_ENABLE_DITHER_OFFSET (0x244)
1225 #define ACAMERA_FPGA_YR_CS_CONV_ENABLE_DITHER_MASK (0x1)
1226
1227 // args: data (1-bit)
acamera_fpga_yr_cs_conv_enable_dither_write(uintptr_t base,uint8_t data)1228 static __inline void acamera_fpga_yr_cs_conv_enable_dither_write(uintptr_t base, uint8_t data) {
1229 uint32_t curr = system_hw_read_32(0x209244L);
1230 system_hw_write_32(0x209244L, (((uint32_t) (data & 0x1)) << 0) | (curr & 0xfffffffe));
1231 }
acamera_fpga_yr_cs_conv_enable_dither_read(uintptr_t base)1232 static __inline uint8_t acamera_fpga_yr_cs_conv_enable_dither_read(uintptr_t base) {
1233 return (uint8_t)((system_hw_read_32(0x209244L) & 0x1) >> 0);
1234 }
1235 // ------------------------------------------------------------------------------ //
1236 // Register: Dither amount
1237 // ------------------------------------------------------------------------------ //
1238
1239 // ------------------------------------------------------------------------------ //
1240 // 0= dither to 9 bits; 1=dither to 8 bits; 2=dither to 7 bits; 3=dither to 6 bits
1241 // ------------------------------------------------------------------------------ //
1242
1243 #define ACAMERA_FPGA_YR_CS_CONV_DITHER_AMOUNT_DEFAULT (0x0)
1244 #define ACAMERA_FPGA_YR_CS_CONV_DITHER_AMOUNT_DATASIZE (2)
1245 #define ACAMERA_FPGA_YR_CS_CONV_DITHER_AMOUNT_OFFSET (0x244)
1246 #define ACAMERA_FPGA_YR_CS_CONV_DITHER_AMOUNT_MASK (0x6)
1247
1248 // args: data (2-bit)
acamera_fpga_yr_cs_conv_dither_amount_write(uintptr_t base,uint8_t data)1249 static __inline void acamera_fpga_yr_cs_conv_dither_amount_write(uintptr_t base, uint8_t data) {
1250 uint32_t curr = system_hw_read_32(0x209244L);
1251 system_hw_write_32(0x209244L, (((uint32_t) (data & 0x3)) << 1) | (curr & 0xfffffff9));
1252 }
acamera_fpga_yr_cs_conv_dither_amount_read(uintptr_t base)1253 static __inline uint8_t acamera_fpga_yr_cs_conv_dither_amount_read(uintptr_t base) {
1254 return (uint8_t)((system_hw_read_32(0x209244L) & 0x6) >> 1);
1255 }
1256 // ------------------------------------------------------------------------------ //
1257 // Register: Shift mode
1258 // ------------------------------------------------------------------------------ //
1259
1260 // ------------------------------------------------------------------------------ //
1261 // 0= output is LSB aligned; 1=output is MSB aligned
1262 // ------------------------------------------------------------------------------ //
1263
1264 #define ACAMERA_FPGA_YR_CS_CONV_SHIFT_MODE_DEFAULT (0x0)
1265 #define ACAMERA_FPGA_YR_CS_CONV_SHIFT_MODE_DATASIZE (1)
1266 #define ACAMERA_FPGA_YR_CS_CONV_SHIFT_MODE_OFFSET (0x244)
1267 #define ACAMERA_FPGA_YR_CS_CONV_SHIFT_MODE_MASK (0x10)
1268
1269 // args: data (1-bit)
acamera_fpga_yr_cs_conv_shift_mode_write(uintptr_t base,uint8_t data)1270 static __inline void acamera_fpga_yr_cs_conv_shift_mode_write(uintptr_t base, uint8_t data) {
1271 uint32_t curr = system_hw_read_32(0x209244L);
1272 system_hw_write_32(0x209244L, (((uint32_t) (data & 0x1)) << 4) | (curr & 0xffffffef));
1273 }
acamera_fpga_yr_cs_conv_shift_mode_read(uintptr_t base)1274 static __inline uint8_t acamera_fpga_yr_cs_conv_shift_mode_read(uintptr_t base) {
1275 return (uint8_t)((system_hw_read_32(0x209244L) & 0x10) >> 4);
1276 }
1277 // ------------------------------------------------------------------------------ //
1278 // Register: Data mask RY
1279 // ------------------------------------------------------------------------------ //
1280
1281 // ------------------------------------------------------------------------------ //
1282 // Data mask for channel 1 (R or Y). Bit-wise and of this value and video data.
1283 // ------------------------------------------------------------------------------ //
1284
1285 #define ACAMERA_FPGA_YR_CS_CONV_DATA_MASK_RY_DEFAULT (0x3FF)
1286 #define ACAMERA_FPGA_YR_CS_CONV_DATA_MASK_RY_DATASIZE (10)
1287 #define ACAMERA_FPGA_YR_CS_CONV_DATA_MASK_RY_OFFSET (0x258)
1288 #define ACAMERA_FPGA_YR_CS_CONV_DATA_MASK_RY_MASK (0x3ff)
1289
1290 // args: data (10-bit)
acamera_fpga_yr_cs_conv_data_mask_ry_write(uintptr_t base,uint16_t data)1291 static __inline void acamera_fpga_yr_cs_conv_data_mask_ry_write(uintptr_t base, uint16_t data) {
1292 uint32_t curr = system_hw_read_32(0x209258L);
1293 system_hw_write_32(0x209258L, (((uint32_t) (data & 0x3ff)) << 0) | (curr & 0xfffffc00));
1294 }
acamera_fpga_yr_cs_conv_data_mask_ry_read(uintptr_t base)1295 static __inline uint16_t acamera_fpga_yr_cs_conv_data_mask_ry_read(uintptr_t base) {
1296 return (uint16_t)((system_hw_read_32(0x209258L) & 0x3ff) >> 0);
1297 }
1298 // ------------------------------------------------------------------------------ //
1299 // Register: Data mask GU
1300 // ------------------------------------------------------------------------------ //
1301
1302 // ------------------------------------------------------------------------------ //
1303 // Data mask for channel 2 (G or U). Bit-wise and of this value and video data.
1304 // ------------------------------------------------------------------------------ //
1305
1306 #define ACAMERA_FPGA_YR_CS_CONV_DATA_MASK_GU_DEFAULT (0x3FF)
1307 #define ACAMERA_FPGA_YR_CS_CONV_DATA_MASK_GU_DATASIZE (10)
1308 #define ACAMERA_FPGA_YR_CS_CONV_DATA_MASK_GU_OFFSET (0x258)
1309 #define ACAMERA_FPGA_YR_CS_CONV_DATA_MASK_GU_MASK (0x3ff0000)
1310
1311 // args: data (10-bit)
acamera_fpga_yr_cs_conv_data_mask_gu_write(uintptr_t base,uint16_t data)1312 static __inline void acamera_fpga_yr_cs_conv_data_mask_gu_write(uintptr_t base, uint16_t data) {
1313 uint32_t curr = system_hw_read_32(0x209258L);
1314 system_hw_write_32(0x209258L, (((uint32_t) (data & 0x3ff)) << 16) | (curr & 0xfc00ffff));
1315 }
acamera_fpga_yr_cs_conv_data_mask_gu_read(uintptr_t base)1316 static __inline uint16_t acamera_fpga_yr_cs_conv_data_mask_gu_read(uintptr_t base) {
1317 return (uint16_t)((system_hw_read_32(0x209258L) & 0x3ff0000) >> 16);
1318 }
1319 // ------------------------------------------------------------------------------ //
1320 // Register: Data mask BV
1321 // ------------------------------------------------------------------------------ //
1322
1323 // ------------------------------------------------------------------------------ //
1324 // Data mask for channel 3 (B or V). Bit-wise and of this value and video data.
1325 // ------------------------------------------------------------------------------ //
1326
1327 #define ACAMERA_FPGA_YR_CS_CONV_DATA_MASK_BV_DEFAULT (0x3FF)
1328 #define ACAMERA_FPGA_YR_CS_CONV_DATA_MASK_BV_DATASIZE (10)
1329 #define ACAMERA_FPGA_YR_CS_CONV_DATA_MASK_BV_OFFSET (0x25c)
1330 #define ACAMERA_FPGA_YR_CS_CONV_DATA_MASK_BV_MASK (0x3ff)
1331
1332 // args: data (10-bit)
acamera_fpga_yr_cs_conv_data_mask_bv_write(uintptr_t base,uint16_t data)1333 static __inline void acamera_fpga_yr_cs_conv_data_mask_bv_write(uintptr_t base, uint16_t data) {
1334 uint32_t curr = system_hw_read_32(0x20925cL);
1335 system_hw_write_32(0x20925cL, (((uint32_t) (data & 0x3ff)) << 0) | (curr & 0xfffffc00));
1336 }
acamera_fpga_yr_cs_conv_data_mask_bv_read(uintptr_t base)1337 static __inline uint16_t acamera_fpga_yr_cs_conv_data_mask_bv_read(uintptr_t base) {
1338 return (uint16_t)((system_hw_read_32(0x20925cL) & 0x3ff) >> 0);
1339 }
1340 // ------------------------------------------------------------------------------ //
1341 // Group: Video-Capture-1 Input port
1342 // ------------------------------------------------------------------------------ //
1343
1344 // ------------------------------------------------------------------------------ //
1345 // Controls video input port.
1346 // ------------------------------------------------------------------------------ //
1347
1348 // ------------------------------------------------------------------------------ //
1349 // Register: preset
1350 // ------------------------------------------------------------------------------ //
1351
1352 // ------------------------------------------------------------------------------ //
1353 //
1354 // Allows selection of various input port presets for standard sensor inputs. See ISP Guide for details of available presets.
1355 // 0-14: Frequently used presets. If using one of available presets, remaining bits in registers 0x100 and 0x104 are not used.
1356 // 15: Input port configured according to registers in 0x100 and 0x104. Consult Apical support for special input port requirements.
1357 //
1358 // ------------------------------------------------------------------------------ //
1359
1360 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_PRESET_DEFAULT (2)
1361 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_PRESET_DATASIZE (4)
1362 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_PRESET_OFFSET (0x264)
1363 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_PRESET_MASK (0xf)
1364
1365 // args: data (4-bit)
acamera_fpga_video_capture1_input_port_preset_write(uintptr_t base,uint8_t data)1366 static __inline void acamera_fpga_video_capture1_input_port_preset_write(uintptr_t base, uint8_t data) {
1367 uint32_t curr = system_hw_read_32(0x209264L);
1368 system_hw_write_32(0x209264L, (((uint32_t) (data & 0xf)) << 0) | (curr & 0xfffffff0));
1369 }
acamera_fpga_video_capture1_input_port_preset_read(uintptr_t base)1370 static __inline uint8_t acamera_fpga_video_capture1_input_port_preset_read(uintptr_t base) {
1371 return (uint8_t)((system_hw_read_32(0x209264L) & 0xf) >> 0);
1372 }
1373 // ------------------------------------------------------------------------------ //
1374 // Register: vs_use field
1375 // ------------------------------------------------------------------------------ //
1376
1377 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_VS_USE_FIELD_DEFAULT (0)
1378 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_VS_USE_FIELD_DATASIZE (1)
1379 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_VS_USE_FIELD_OFFSET (0x264)
1380 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_VS_USE_FIELD_MASK (0x100)
1381 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_VS_USE_FIELD_USE_VSYNC_I_PORT_FOR_VERTICAL_SYNC (0)
1382 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_VS_USE_FIELD_USE_FIELD_I_PORT_FOR_VERTICAL_SYNC (1)
1383
1384 // args: data (1-bit)
acamera_fpga_video_capture1_input_port_vs_use_field_write(uintptr_t base,uint8_t data)1385 static __inline void acamera_fpga_video_capture1_input_port_vs_use_field_write(uintptr_t base, uint8_t data) {
1386 uint32_t curr = system_hw_read_32(0x209264L);
1387 system_hw_write_32(0x209264L, (((uint32_t) (data & 0x1)) << 8) | (curr & 0xfffffeff));
1388 }
acamera_fpga_video_capture1_input_port_vs_use_field_read(uintptr_t base)1389 static __inline uint8_t acamera_fpga_video_capture1_input_port_vs_use_field_read(uintptr_t base) {
1390 return (uint8_t)((system_hw_read_32(0x209264L) & 0x100) >> 8);
1391 }
1392 // ------------------------------------------------------------------------------ //
1393 // Register: vs toggle
1394 // ------------------------------------------------------------------------------ //
1395
1396 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_VS_TOGGLE_DEFAULT (0)
1397 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_VS_TOGGLE_DATASIZE (1)
1398 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_VS_TOGGLE_OFFSET (0x264)
1399 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_VS_TOGGLE_MASK (0x200)
1400 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_VS_TOGGLE_VSYNC_IS_PULSETYPE (0)
1401 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_VS_TOGGLE_VSYNC_IS_TOGGLETYPE_FIELD_SIGNAL (1)
1402
1403 // args: data (1-bit)
acamera_fpga_video_capture1_input_port_vs_toggle_write(uintptr_t base,uint8_t data)1404 static __inline void acamera_fpga_video_capture1_input_port_vs_toggle_write(uintptr_t base, uint8_t data) {
1405 uint32_t curr = system_hw_read_32(0x209264L);
1406 system_hw_write_32(0x209264L, (((uint32_t) (data & 0x1)) << 9) | (curr & 0xfffffdff));
1407 }
acamera_fpga_video_capture1_input_port_vs_toggle_read(uintptr_t base)1408 static __inline uint8_t acamera_fpga_video_capture1_input_port_vs_toggle_read(uintptr_t base) {
1409 return (uint8_t)((system_hw_read_32(0x209264L) & 0x200) >> 9);
1410 }
1411 // ------------------------------------------------------------------------------ //
1412 // Register: vs polarity
1413 // ------------------------------------------------------------------------------ //
1414
1415 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_VS_POLARITY_DEFAULT (0)
1416 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_VS_POLARITY_DATASIZE (1)
1417 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_VS_POLARITY_OFFSET (0x264)
1418 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_VS_POLARITY_MASK (0x400)
1419 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_VS_POLARITY_HORIZONTAL_COUNTER_RESET_ON_RISING_EDGE (0)
1420 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_VS_POLARITY_HORIZONTAL_COUNTER_RESET_ON_FALLING_EDGE (1)
1421
1422 // args: data (1-bit)
acamera_fpga_video_capture1_input_port_vs_polarity_write(uintptr_t base,uint8_t data)1423 static __inline void acamera_fpga_video_capture1_input_port_vs_polarity_write(uintptr_t base, uint8_t data) {
1424 uint32_t curr = system_hw_read_32(0x209264L);
1425 system_hw_write_32(0x209264L, (((uint32_t) (data & 0x1)) << 10) | (curr & 0xfffffbff));
1426 }
acamera_fpga_video_capture1_input_port_vs_polarity_read(uintptr_t base)1427 static __inline uint8_t acamera_fpga_video_capture1_input_port_vs_polarity_read(uintptr_t base) {
1428 return (uint8_t)((system_hw_read_32(0x209264L) & 0x400) >> 10);
1429 }
1430 // ------------------------------------------------------------------------------ //
1431 // Register: vs_polarity acl
1432 // ------------------------------------------------------------------------------ //
1433
1434 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_VS_POLARITY_ACL_DEFAULT (0)
1435 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_VS_POLARITY_ACL_DATASIZE (1)
1436 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_VS_POLARITY_ACL_OFFSET (0x264)
1437 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_VS_POLARITY_ACL_MASK (0x800)
1438 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_VS_POLARITY_ACL_DONT_INVERT_POLARITY_FOR_ACL_GATE (0)
1439 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_VS_POLARITY_ACL_INVERT_POLARITY_FOR_ACL_GATE (1)
1440
1441 // args: data (1-bit)
acamera_fpga_video_capture1_input_port_vs_polarity_acl_write(uintptr_t base,uint8_t data)1442 static __inline void acamera_fpga_video_capture1_input_port_vs_polarity_acl_write(uintptr_t base, uint8_t data) {
1443 uint32_t curr = system_hw_read_32(0x209264L);
1444 system_hw_write_32(0x209264L, (((uint32_t) (data & 0x1)) << 11) | (curr & 0xfffff7ff));
1445 }
acamera_fpga_video_capture1_input_port_vs_polarity_acl_read(uintptr_t base)1446 static __inline uint8_t acamera_fpga_video_capture1_input_port_vs_polarity_acl_read(uintptr_t base) {
1447 return (uint8_t)((system_hw_read_32(0x209264L) & 0x800) >> 11);
1448 }
1449 // ------------------------------------------------------------------------------ //
1450 // Register: hs_use acl
1451 // ------------------------------------------------------------------------------ //
1452
1453 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_HS_USE_ACL_DEFAULT (0)
1454 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_HS_USE_ACL_DATASIZE (1)
1455 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_HS_USE_ACL_OFFSET (0x264)
1456 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_HS_USE_ACL_MASK (0x1000)
1457 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_HS_USE_ACL_USE_HSYNC_I_PORT_FOR_ACTIVELINE (0)
1458 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_HS_USE_ACL_USE_ACL_I_PORT_FOR_ACTIVELINE (1)
1459
1460 // args: data (1-bit)
acamera_fpga_video_capture1_input_port_hs_use_acl_write(uintptr_t base,uint8_t data)1461 static __inline void acamera_fpga_video_capture1_input_port_hs_use_acl_write(uintptr_t base, uint8_t data) {
1462 uint32_t curr = system_hw_read_32(0x209264L);
1463 system_hw_write_32(0x209264L, (((uint32_t) (data & 0x1)) << 12) | (curr & 0xffffefff));
1464 }
acamera_fpga_video_capture1_input_port_hs_use_acl_read(uintptr_t base)1465 static __inline uint8_t acamera_fpga_video_capture1_input_port_hs_use_acl_read(uintptr_t base) {
1466 return (uint8_t)((system_hw_read_32(0x209264L) & 0x1000) >> 12);
1467 }
1468 // ------------------------------------------------------------------------------ //
1469 // Register: vc_c select
1470 // ------------------------------------------------------------------------------ //
1471
1472 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_VC_C_SELECT_DEFAULT (0)
1473 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_VC_C_SELECT_DATASIZE (1)
1474 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_VC_C_SELECT_OFFSET (0x264)
1475 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_VC_C_SELECT_MASK (0x4000)
1476 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_VC_C_SELECT_VERTICAL_COUNTER_COUNTS_ON_HS (0)
1477 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_VC_C_SELECT_VERTICAL_COUNTER_COUNTS_ON_HORIZONTAL_COUNTER_OVERFLOW_OR_RESET (1)
1478
1479 // args: data (1-bit)
acamera_fpga_video_capture1_input_port_vc_c_select_write(uintptr_t base,uint8_t data)1480 static __inline void acamera_fpga_video_capture1_input_port_vc_c_select_write(uintptr_t base, uint8_t data) {
1481 uint32_t curr = system_hw_read_32(0x209264L);
1482 system_hw_write_32(0x209264L, (((uint32_t) (data & 0x1)) << 14) | (curr & 0xffffbfff));
1483 }
acamera_fpga_video_capture1_input_port_vc_c_select_read(uintptr_t base)1484 static __inline uint8_t acamera_fpga_video_capture1_input_port_vc_c_select_read(uintptr_t base) {
1485 return (uint8_t)((system_hw_read_32(0x209264L) & 0x4000) >> 14);
1486 }
1487 // ------------------------------------------------------------------------------ //
1488 // Register: vc_r select
1489 // ------------------------------------------------------------------------------ //
1490
1491 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_VC_R_SELECT_DEFAULT (0)
1492 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_VC_R_SELECT_DATASIZE (1)
1493 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_VC_R_SELECT_OFFSET (0x264)
1494 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_VC_R_SELECT_MASK (0x8000)
1495 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_VC_R_SELECT_VERTICAL_COUNTER_IS_RESET_ON_EDGE_OF_VS (0)
1496 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_VC_R_SELECT_VERTICAL_COUNTER_IS_RESET_AFTER_TIMEOUT_ON_HS (1)
1497
1498 // args: data (1-bit)
acamera_fpga_video_capture1_input_port_vc_r_select_write(uintptr_t base,uint8_t data)1499 static __inline void acamera_fpga_video_capture1_input_port_vc_r_select_write(uintptr_t base, uint8_t data) {
1500 uint32_t curr = system_hw_read_32(0x209264L);
1501 system_hw_write_32(0x209264L, (((uint32_t) (data & 0x1)) << 15) | (curr & 0xffff7fff));
1502 }
acamera_fpga_video_capture1_input_port_vc_r_select_read(uintptr_t base)1503 static __inline uint8_t acamera_fpga_video_capture1_input_port_vc_r_select_read(uintptr_t base) {
1504 return (uint8_t)((system_hw_read_32(0x209264L) & 0x8000) >> 15);
1505 }
1506 // ------------------------------------------------------------------------------ //
1507 // Register: hs_xor vs
1508 // ------------------------------------------------------------------------------ //
1509
1510 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_HS_XOR_VS_DEFAULT (0)
1511 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_HS_XOR_VS_DATASIZE (1)
1512 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_HS_XOR_VS_OFFSET (0x264)
1513 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_HS_XOR_VS_MASK (0x10000)
1514 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_HS_XOR_VS_NORMAL_MODE (0)
1515 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_HS_XOR_VS_HVALID__HSYNC_XOR_VSYNC (1)
1516
1517 // args: data (1-bit)
acamera_fpga_video_capture1_input_port_hs_xor_vs_write(uintptr_t base,uint8_t data)1518 static __inline void acamera_fpga_video_capture1_input_port_hs_xor_vs_write(uintptr_t base, uint8_t data) {
1519 uint32_t curr = system_hw_read_32(0x209264L);
1520 system_hw_write_32(0x209264L, (((uint32_t) (data & 0x1)) << 16) | (curr & 0xfffeffff));
1521 }
acamera_fpga_video_capture1_input_port_hs_xor_vs_read(uintptr_t base)1522 static __inline uint8_t acamera_fpga_video_capture1_input_port_hs_xor_vs_read(uintptr_t base) {
1523 return (uint8_t)((system_hw_read_32(0x209264L) & 0x10000) >> 16);
1524 }
1525 // ------------------------------------------------------------------------------ //
1526 // Register: hs polarity
1527 // ------------------------------------------------------------------------------ //
1528
1529 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_HS_POLARITY_DEFAULT (0)
1530 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_HS_POLARITY_DATASIZE (1)
1531 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_HS_POLARITY_OFFSET (0x264)
1532 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_HS_POLARITY_MASK (0x20000)
1533 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_HS_POLARITY_DONT_INVERT_POLARITY_OF_HS_FOR_ACL_GATE (0)
1534 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_HS_POLARITY_INVERT_POLARITY_OF_HS_FOR_ACL_GATE (1)
1535
1536 // args: data (1-bit)
acamera_fpga_video_capture1_input_port_hs_polarity_write(uintptr_t base,uint8_t data)1537 static __inline void acamera_fpga_video_capture1_input_port_hs_polarity_write(uintptr_t base, uint8_t data) {
1538 uint32_t curr = system_hw_read_32(0x209264L);
1539 system_hw_write_32(0x209264L, (((uint32_t) (data & 0x1)) << 17) | (curr & 0xfffdffff));
1540 }
acamera_fpga_video_capture1_input_port_hs_polarity_read(uintptr_t base)1541 static __inline uint8_t acamera_fpga_video_capture1_input_port_hs_polarity_read(uintptr_t base) {
1542 return (uint8_t)((system_hw_read_32(0x209264L) & 0x20000) >> 17);
1543 }
1544 // ------------------------------------------------------------------------------ //
1545 // Register: hs_polarity acl
1546 // ------------------------------------------------------------------------------ //
1547
1548 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_HS_POLARITY_ACL_DEFAULT (0)
1549 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_HS_POLARITY_ACL_DATASIZE (1)
1550 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_HS_POLARITY_ACL_OFFSET (0x264)
1551 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_HS_POLARITY_ACL_MASK (0x40000)
1552 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_HS_POLARITY_ACL_DONT_INVERT_POLARITY_OF_HS_FOR_HS_GATE (0)
1553 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_HS_POLARITY_ACL_INVERT_POLARITY_OF_HS_FOR_HS_GATE (1)
1554
1555 // args: data (1-bit)
acamera_fpga_video_capture1_input_port_hs_polarity_acl_write(uintptr_t base,uint8_t data)1556 static __inline void acamera_fpga_video_capture1_input_port_hs_polarity_acl_write(uintptr_t base, uint8_t data) {
1557 uint32_t curr = system_hw_read_32(0x209264L);
1558 system_hw_write_32(0x209264L, (((uint32_t) (data & 0x1)) << 18) | (curr & 0xfffbffff));
1559 }
acamera_fpga_video_capture1_input_port_hs_polarity_acl_read(uintptr_t base)1560 static __inline uint8_t acamera_fpga_video_capture1_input_port_hs_polarity_acl_read(uintptr_t base) {
1561 return (uint8_t)((system_hw_read_32(0x209264L) & 0x40000) >> 18);
1562 }
1563 // ------------------------------------------------------------------------------ //
1564 // Register: hs_polarity hs
1565 // ------------------------------------------------------------------------------ //
1566
1567 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_HS_POLARITY_HS_DEFAULT (0)
1568 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_HS_POLARITY_HS_DATASIZE (1)
1569 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_HS_POLARITY_HS_OFFSET (0x264)
1570 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_HS_POLARITY_HS_MASK (0x80000)
1571 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_HS_POLARITY_HS_HORIZONTAL_COUNTER_IS_RESET_ON_RISING_EDGE_OF_HS (0)
1572 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_HS_POLARITY_HS_HORIZONTAL_COUNTER_IS_RESET_ON_VSYNC_EG_WHEN_HSYNC_IS_NOT_AVAILABLE (1)
1573
1574 // args: data (1-bit)
acamera_fpga_video_capture1_input_port_hs_polarity_hs_write(uintptr_t base,uint8_t data)1575 static __inline void acamera_fpga_video_capture1_input_port_hs_polarity_hs_write(uintptr_t base, uint8_t data) {
1576 uint32_t curr = system_hw_read_32(0x209264L);
1577 system_hw_write_32(0x209264L, (((uint32_t) (data & 0x1)) << 19) | (curr & 0xfff7ffff));
1578 }
acamera_fpga_video_capture1_input_port_hs_polarity_hs_read(uintptr_t base)1579 static __inline uint8_t acamera_fpga_video_capture1_input_port_hs_polarity_hs_read(uintptr_t base) {
1580 return (uint8_t)((system_hw_read_32(0x209264L) & 0x80000) >> 19);
1581 }
1582 // ------------------------------------------------------------------------------ //
1583 // Register: hs_polarity vc
1584 // ------------------------------------------------------------------------------ //
1585
1586 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_HS_POLARITY_VC_DEFAULT (1)
1587 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_HS_POLARITY_VC_DATASIZE (1)
1588 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_HS_POLARITY_VC_OFFSET (0x264)
1589 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_HS_POLARITY_VC_MASK (0x100000)
1590 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_HS_POLARITY_VC_VERTICAL_COUNTER_INCREMENTS_ON_RISING_EDGE_OF_HS (0)
1591 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_HS_POLARITY_VC_VERTICAL_COUNTER_INCREMENTS_ON_FALLING_EDGE_OF_HS (1)
1592
1593 // args: data (1-bit)
acamera_fpga_video_capture1_input_port_hs_polarity_vc_write(uintptr_t base,uint8_t data)1594 static __inline void acamera_fpga_video_capture1_input_port_hs_polarity_vc_write(uintptr_t base, uint8_t data) {
1595 uint32_t curr = system_hw_read_32(0x209264L);
1596 system_hw_write_32(0x209264L, (((uint32_t) (data & 0x1)) << 20) | (curr & 0xffefffff));
1597 }
acamera_fpga_video_capture1_input_port_hs_polarity_vc_read(uintptr_t base)1598 static __inline uint8_t acamera_fpga_video_capture1_input_port_hs_polarity_vc_read(uintptr_t base) {
1599 return (uint8_t)((system_hw_read_32(0x209264L) & 0x100000) >> 20);
1600 }
1601 // ------------------------------------------------------------------------------ //
1602 // Register: hc_r select
1603 // ------------------------------------------------------------------------------ //
1604
1605 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_HC_R_SELECT_DEFAULT (0)
1606 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_HC_R_SELECT_DATASIZE (1)
1607 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_HC_R_SELECT_OFFSET (0x264)
1608 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_HC_R_SELECT_MASK (0x800000)
1609 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_HC_R_SELECT_VERTICAL_COUNTER_IS_RESET_ON_RISING_EDGE_OF_HS (0)
1610 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_HC_R_SELECT_VERTICAL_COUNTER_IS_RESET_ON_RISING_EDGE_OF_VS (1)
1611
1612 // args: data (1-bit)
acamera_fpga_video_capture1_input_port_hc_r_select_write(uintptr_t base,uint8_t data)1613 static __inline void acamera_fpga_video_capture1_input_port_hc_r_select_write(uintptr_t base, uint8_t data) {
1614 uint32_t curr = system_hw_read_32(0x209264L);
1615 system_hw_write_32(0x209264L, (((uint32_t) (data & 0x1)) << 23) | (curr & 0xff7fffff));
1616 }
acamera_fpga_video_capture1_input_port_hc_r_select_read(uintptr_t base)1617 static __inline uint8_t acamera_fpga_video_capture1_input_port_hc_r_select_read(uintptr_t base) {
1618 return (uint8_t)((system_hw_read_32(0x209264L) & 0x800000) >> 23);
1619 }
1620 // ------------------------------------------------------------------------------ //
1621 // Register: acl polarity
1622 // ------------------------------------------------------------------------------ //
1623
1624 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_ACL_POLARITY_DEFAULT (0)
1625 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_ACL_POLARITY_DATASIZE (1)
1626 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_ACL_POLARITY_OFFSET (0x264)
1627 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_ACL_POLARITY_MASK (0x1000000)
1628 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_ACL_POLARITY_DONT_INVERT_ACL_I_FOR_ACL_GATE (0)
1629 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_ACL_POLARITY_INVERT_ACL_I_FOR_ACL_GATE (1)
1630
1631 // args: data (1-bit)
acamera_fpga_video_capture1_input_port_acl_polarity_write(uintptr_t base,uint8_t data)1632 static __inline void acamera_fpga_video_capture1_input_port_acl_polarity_write(uintptr_t base, uint8_t data) {
1633 uint32_t curr = system_hw_read_32(0x209264L);
1634 system_hw_write_32(0x209264L, (((uint32_t) (data & 0x1)) << 24) | (curr & 0xfeffffff));
1635 }
acamera_fpga_video_capture1_input_port_acl_polarity_read(uintptr_t base)1636 static __inline uint8_t acamera_fpga_video_capture1_input_port_acl_polarity_read(uintptr_t base) {
1637 return (uint8_t)((system_hw_read_32(0x209264L) & 0x1000000) >> 24);
1638 }
1639 // ------------------------------------------------------------------------------ //
1640 // Register: field polarity
1641 // ------------------------------------------------------------------------------ //
1642
1643 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_FIELD_POLARITY_DEFAULT (0)
1644 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_FIELD_POLARITY_DATASIZE (1)
1645 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_FIELD_POLARITY_OFFSET (0x268)
1646 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_FIELD_POLARITY_MASK (0x1)
1647 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_FIELD_POLARITY_DONT_INVERT_FIELD_I_FOR_FIELD_GATE (0)
1648 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_FIELD_POLARITY_INVERT_FIELD_I_FOR_FIELD_GATE (1)
1649
1650 // args: data (1-bit)
acamera_fpga_video_capture1_input_port_field_polarity_write(uintptr_t base,uint8_t data)1651 static __inline void acamera_fpga_video_capture1_input_port_field_polarity_write(uintptr_t base, uint8_t data) {
1652 uint32_t curr = system_hw_read_32(0x209268L);
1653 system_hw_write_32(0x209268L, (((uint32_t) (data & 0x1)) << 0) | (curr & 0xfffffffe));
1654 }
acamera_fpga_video_capture1_input_port_field_polarity_read(uintptr_t base)1655 static __inline uint8_t acamera_fpga_video_capture1_input_port_field_polarity_read(uintptr_t base) {
1656 return (uint8_t)((system_hw_read_32(0x209268L) & 0x1) >> 0);
1657 }
1658 // ------------------------------------------------------------------------------ //
1659 // Register: field toggle
1660 // ------------------------------------------------------------------------------ //
1661
1662 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_FIELD_TOGGLE_DEFAULT (0)
1663 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_FIELD_TOGGLE_DATASIZE (1)
1664 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_FIELD_TOGGLE_OFFSET (0x268)
1665 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_FIELD_TOGGLE_MASK (0x2)
1666 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_FIELD_TOGGLE_FIELD_IS_PULSETYPE (0)
1667 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_FIELD_TOGGLE_FIELD_IS_TOGGLETYPE (1)
1668
1669 // args: data (1-bit)
acamera_fpga_video_capture1_input_port_field_toggle_write(uintptr_t base,uint8_t data)1670 static __inline void acamera_fpga_video_capture1_input_port_field_toggle_write(uintptr_t base, uint8_t data) {
1671 uint32_t curr = system_hw_read_32(0x209268L);
1672 system_hw_write_32(0x209268L, (((uint32_t) (data & 0x1)) << 1) | (curr & 0xfffffffd));
1673 }
acamera_fpga_video_capture1_input_port_field_toggle_read(uintptr_t base)1674 static __inline uint8_t acamera_fpga_video_capture1_input_port_field_toggle_read(uintptr_t base) {
1675 return (uint8_t)((system_hw_read_32(0x209268L) & 0x2) >> 1);
1676 }
1677 // ------------------------------------------------------------------------------ //
1678 // Register: aclg window0
1679 // ------------------------------------------------------------------------------ //
1680
1681 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_ACLG_WINDOW0_DEFAULT (0)
1682 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_ACLG_WINDOW0_DATASIZE (1)
1683 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_ACLG_WINDOW0_OFFSET (0x268)
1684 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_ACLG_WINDOW0_MASK (0x100)
1685 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_ACLG_WINDOW0_EXCLUDE_WINDOW0_SIGNAL_IN_ACL_GATE (0)
1686 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_ACLG_WINDOW0_INCLUDE_WINDOW0_SIGNAL_IN_ACL_GATE (1)
1687
1688 // args: data (1-bit)
acamera_fpga_video_capture1_input_port_aclg_window0_write(uintptr_t base,uint8_t data)1689 static __inline void acamera_fpga_video_capture1_input_port_aclg_window0_write(uintptr_t base, uint8_t data) {
1690 uint32_t curr = system_hw_read_32(0x209268L);
1691 system_hw_write_32(0x209268L, (((uint32_t) (data & 0x1)) << 8) | (curr & 0xfffffeff));
1692 }
acamera_fpga_video_capture1_input_port_aclg_window0_read(uintptr_t base)1693 static __inline uint8_t acamera_fpga_video_capture1_input_port_aclg_window0_read(uintptr_t base) {
1694 return (uint8_t)((system_hw_read_32(0x209268L) & 0x100) >> 8);
1695 }
1696 // ------------------------------------------------------------------------------ //
1697 // Register: aclg hsync
1698 // ------------------------------------------------------------------------------ //
1699
1700 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_ACLG_HSYNC_DEFAULT (0)
1701 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_ACLG_HSYNC_DATASIZE (1)
1702 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_ACLG_HSYNC_OFFSET (0x268)
1703 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_ACLG_HSYNC_MASK (0x200)
1704 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_ACLG_HSYNC_EXCLUDE_HSYNC_SIGNAL_IN_ACL_GATE (0)
1705 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_ACLG_HSYNC_INCLUDE_HSYNC_SIGNAL_IN_ACL_GATE (1)
1706
1707 // args: data (1-bit)
acamera_fpga_video_capture1_input_port_aclg_hsync_write(uintptr_t base,uint8_t data)1708 static __inline void acamera_fpga_video_capture1_input_port_aclg_hsync_write(uintptr_t base, uint8_t data) {
1709 uint32_t curr = system_hw_read_32(0x209268L);
1710 system_hw_write_32(0x209268L, (((uint32_t) (data & 0x1)) << 9) | (curr & 0xfffffdff));
1711 }
acamera_fpga_video_capture1_input_port_aclg_hsync_read(uintptr_t base)1712 static __inline uint8_t acamera_fpga_video_capture1_input_port_aclg_hsync_read(uintptr_t base) {
1713 return (uint8_t)((system_hw_read_32(0x209268L) & 0x200) >> 9);
1714 }
1715 // ------------------------------------------------------------------------------ //
1716 // Register: aclg window2
1717 // ------------------------------------------------------------------------------ //
1718
1719 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_ACLG_WINDOW2_DEFAULT (0)
1720 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_ACLG_WINDOW2_DATASIZE (1)
1721 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_ACLG_WINDOW2_OFFSET (0x268)
1722 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_ACLG_WINDOW2_MASK (0x400)
1723 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_ACLG_WINDOW2_EXCLUDE_WINDOW2_SIGNAL_IN_ACL_GATE (0)
1724 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_ACLG_WINDOW2_INCLUDE_WINDOW2_SIGNAL_IN_ACL_GATE (1)
1725
1726 // args: data (1-bit)
acamera_fpga_video_capture1_input_port_aclg_window2_write(uintptr_t base,uint8_t data)1727 static __inline void acamera_fpga_video_capture1_input_port_aclg_window2_write(uintptr_t base, uint8_t data) {
1728 uint32_t curr = system_hw_read_32(0x209268L);
1729 system_hw_write_32(0x209268L, (((uint32_t) (data & 0x1)) << 10) | (curr & 0xfffffbff));
1730 }
acamera_fpga_video_capture1_input_port_aclg_window2_read(uintptr_t base)1731 static __inline uint8_t acamera_fpga_video_capture1_input_port_aclg_window2_read(uintptr_t base) {
1732 return (uint8_t)((system_hw_read_32(0x209268L) & 0x400) >> 10);
1733 }
1734 // ------------------------------------------------------------------------------ //
1735 // Register: aclg acl
1736 // ------------------------------------------------------------------------------ //
1737
1738 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_ACLG_ACL_DEFAULT (0)
1739 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_ACLG_ACL_DATASIZE (1)
1740 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_ACLG_ACL_OFFSET (0x268)
1741 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_ACLG_ACL_MASK (0x800)
1742 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_ACLG_ACL_EXCLUDE_ACL_I_SIGNAL_IN_ACL_GATE (0)
1743 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_ACLG_ACL_INCLUDE_ACL_I_SIGNAL_IN_ACL_GATE (1)
1744
1745 // args: data (1-bit)
acamera_fpga_video_capture1_input_port_aclg_acl_write(uintptr_t base,uint8_t data)1746 static __inline void acamera_fpga_video_capture1_input_port_aclg_acl_write(uintptr_t base, uint8_t data) {
1747 uint32_t curr = system_hw_read_32(0x209268L);
1748 system_hw_write_32(0x209268L, (((uint32_t) (data & 0x1)) << 11) | (curr & 0xfffff7ff));
1749 }
acamera_fpga_video_capture1_input_port_aclg_acl_read(uintptr_t base)1750 static __inline uint8_t acamera_fpga_video_capture1_input_port_aclg_acl_read(uintptr_t base) {
1751 return (uint8_t)((system_hw_read_32(0x209268L) & 0x800) >> 11);
1752 }
1753 // ------------------------------------------------------------------------------ //
1754 // Register: aclg vsync
1755 // ------------------------------------------------------------------------------ //
1756
1757 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_ACLG_VSYNC_DEFAULT (0)
1758 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_ACLG_VSYNC_DATASIZE (1)
1759 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_ACLG_VSYNC_OFFSET (0x268)
1760 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_ACLG_VSYNC_MASK (0x1000)
1761 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_ACLG_VSYNC_EXCLUDE_VSYNC_SIGNAL_IN_ACL_GATE (0)
1762 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_ACLG_VSYNC_INCLUDE_VSYNC_SIGNAL_IN_ACL_GATE (1)
1763
1764 // args: data (1-bit)
acamera_fpga_video_capture1_input_port_aclg_vsync_write(uintptr_t base,uint8_t data)1765 static __inline void acamera_fpga_video_capture1_input_port_aclg_vsync_write(uintptr_t base, uint8_t data) {
1766 uint32_t curr = system_hw_read_32(0x209268L);
1767 system_hw_write_32(0x209268L, (((uint32_t) (data & 0x1)) << 12) | (curr & 0xffffefff));
1768 }
acamera_fpga_video_capture1_input_port_aclg_vsync_read(uintptr_t base)1769 static __inline uint8_t acamera_fpga_video_capture1_input_port_aclg_vsync_read(uintptr_t base) {
1770 return (uint8_t)((system_hw_read_32(0x209268L) & 0x1000) >> 12);
1771 }
1772 // ------------------------------------------------------------------------------ //
1773 // Register: hsg window1
1774 // ------------------------------------------------------------------------------ //
1775
1776 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_HSG_WINDOW1_DEFAULT (0)
1777 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_HSG_WINDOW1_DATASIZE (1)
1778 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_HSG_WINDOW1_OFFSET (0x268)
1779 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_HSG_WINDOW1_MASK (0x10000)
1780 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_HSG_WINDOW1_EXCLUDE_WINDOW1_SIGNAL_IN_HS_GATE (0)
1781 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_HSG_WINDOW1_INCLUDE_WINDOW1_SIGNAL_IN_HS_GATE (1)
1782
1783 // args: data (1-bit)
acamera_fpga_video_capture1_input_port_hsg_window1_write(uintptr_t base,uint8_t data)1784 static __inline void acamera_fpga_video_capture1_input_port_hsg_window1_write(uintptr_t base, uint8_t data) {
1785 uint32_t curr = system_hw_read_32(0x209268L);
1786 system_hw_write_32(0x209268L, (((uint32_t) (data & 0x1)) << 16) | (curr & 0xfffeffff));
1787 }
acamera_fpga_video_capture1_input_port_hsg_window1_read(uintptr_t base)1788 static __inline uint8_t acamera_fpga_video_capture1_input_port_hsg_window1_read(uintptr_t base) {
1789 return (uint8_t)((system_hw_read_32(0x209268L) & 0x10000) >> 16);
1790 }
1791 // ------------------------------------------------------------------------------ //
1792 // Register: hsg hsync
1793 // ------------------------------------------------------------------------------ //
1794
1795 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_HSG_HSYNC_DEFAULT (0)
1796 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_HSG_HSYNC_DATASIZE (1)
1797 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_HSG_HSYNC_OFFSET (0x268)
1798 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_HSG_HSYNC_MASK (0x20000)
1799 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_HSG_HSYNC_EXCLUDE_HSYNC_SIGNAL_IN_HS_GATE (0)
1800 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_HSG_HSYNC_INCLUDE_HSYNC_SIGNAL_IN_HS_GATE (1)
1801
1802 // args: data (1-bit)
acamera_fpga_video_capture1_input_port_hsg_hsync_write(uintptr_t base,uint8_t data)1803 static __inline void acamera_fpga_video_capture1_input_port_hsg_hsync_write(uintptr_t base, uint8_t data) {
1804 uint32_t curr = system_hw_read_32(0x209268L);
1805 system_hw_write_32(0x209268L, (((uint32_t) (data & 0x1)) << 17) | (curr & 0xfffdffff));
1806 }
acamera_fpga_video_capture1_input_port_hsg_hsync_read(uintptr_t base)1807 static __inline uint8_t acamera_fpga_video_capture1_input_port_hsg_hsync_read(uintptr_t base) {
1808 return (uint8_t)((system_hw_read_32(0x209268L) & 0x20000) >> 17);
1809 }
1810 // ------------------------------------------------------------------------------ //
1811 // Register: hsg vsync
1812 // ------------------------------------------------------------------------------ //
1813
1814 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_HSG_VSYNC_DEFAULT (0)
1815 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_HSG_VSYNC_DATASIZE (1)
1816 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_HSG_VSYNC_OFFSET (0x268)
1817 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_HSG_VSYNC_MASK (0x40000)
1818 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_HSG_VSYNC_EXCLUDE_VSYNC_SIGNAL_IN_HS_GATE (0)
1819 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_HSG_VSYNC_INCLUDE_VSYNC_SIGNAL_IN_HS_GATE (1)
1820
1821 // args: data (1-bit)
acamera_fpga_video_capture1_input_port_hsg_vsync_write(uintptr_t base,uint8_t data)1822 static __inline void acamera_fpga_video_capture1_input_port_hsg_vsync_write(uintptr_t base, uint8_t data) {
1823 uint32_t curr = system_hw_read_32(0x209268L);
1824 system_hw_write_32(0x209268L, (((uint32_t) (data & 0x1)) << 18) | (curr & 0xfffbffff));
1825 }
acamera_fpga_video_capture1_input_port_hsg_vsync_read(uintptr_t base)1826 static __inline uint8_t acamera_fpga_video_capture1_input_port_hsg_vsync_read(uintptr_t base) {
1827 return (uint8_t)((system_hw_read_32(0x209268L) & 0x40000) >> 18);
1828 }
1829 // ------------------------------------------------------------------------------ //
1830 // Register: hsg window2
1831 // ------------------------------------------------------------------------------ //
1832
1833 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_HSG_WINDOW2_DEFAULT (0)
1834 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_HSG_WINDOW2_DATASIZE (1)
1835 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_HSG_WINDOW2_OFFSET (0x268)
1836 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_HSG_WINDOW2_MASK (0x80000)
1837 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_HSG_WINDOW2_EXCLUDE_WINDOW2_SIGNAL_IN_HS_GATE (0)
1838 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_HSG_WINDOW2_INCLUDE_WINDOW2_SIGNAL_IN_HS_GATE_MASK_OUT_SPURIOUS_HS_DURING_BLANK (1)
1839
1840 // args: data (1-bit)
acamera_fpga_video_capture1_input_port_hsg_window2_write(uintptr_t base,uint8_t data)1841 static __inline void acamera_fpga_video_capture1_input_port_hsg_window2_write(uintptr_t base, uint8_t data) {
1842 uint32_t curr = system_hw_read_32(0x209268L);
1843 system_hw_write_32(0x209268L, (((uint32_t) (data & 0x1)) << 19) | (curr & 0xfff7ffff));
1844 }
acamera_fpga_video_capture1_input_port_hsg_window2_read(uintptr_t base)1845 static __inline uint8_t acamera_fpga_video_capture1_input_port_hsg_window2_read(uintptr_t base) {
1846 return (uint8_t)((system_hw_read_32(0x209268L) & 0x80000) >> 19);
1847 }
1848 // ------------------------------------------------------------------------------ //
1849 // Register: fieldg vsync
1850 // ------------------------------------------------------------------------------ //
1851
1852 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_FIELDG_VSYNC_DEFAULT (0)
1853 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_FIELDG_VSYNC_DATASIZE (1)
1854 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_FIELDG_VSYNC_OFFSET (0x268)
1855 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_FIELDG_VSYNC_MASK (0x1000000)
1856 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_FIELDG_VSYNC_EXCLUDE_VSYNC_SIGNAL_IN_FIELD_GATE (0)
1857 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_FIELDG_VSYNC_INCLUDE_VSYNC_SIGNAL_IN_FIELD_GATE (1)
1858
1859 // args: data (1-bit)
acamera_fpga_video_capture1_input_port_fieldg_vsync_write(uintptr_t base,uint8_t data)1860 static __inline void acamera_fpga_video_capture1_input_port_fieldg_vsync_write(uintptr_t base, uint8_t data) {
1861 uint32_t curr = system_hw_read_32(0x209268L);
1862 system_hw_write_32(0x209268L, (((uint32_t) (data & 0x1)) << 24) | (curr & 0xfeffffff));
1863 }
acamera_fpga_video_capture1_input_port_fieldg_vsync_read(uintptr_t base)1864 static __inline uint8_t acamera_fpga_video_capture1_input_port_fieldg_vsync_read(uintptr_t base) {
1865 return (uint8_t)((system_hw_read_32(0x209268L) & 0x1000000) >> 24);
1866 }
1867 // ------------------------------------------------------------------------------ //
1868 // Register: fieldg window2
1869 // ------------------------------------------------------------------------------ //
1870
1871 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_FIELDG_WINDOW2_DEFAULT (0)
1872 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_FIELDG_WINDOW2_DATASIZE (1)
1873 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_FIELDG_WINDOW2_OFFSET (0x268)
1874 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_FIELDG_WINDOW2_MASK (0x2000000)
1875 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_FIELDG_WINDOW2_EXCLUDE_WINDOW2_SIGNAL_IN_FIELD_GATE (0)
1876 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_FIELDG_WINDOW2_INCLUDE_WINDOW2_SIGNAL_IN_FIELD_GATE (1)
1877
1878 // args: data (1-bit)
acamera_fpga_video_capture1_input_port_fieldg_window2_write(uintptr_t base,uint8_t data)1879 static __inline void acamera_fpga_video_capture1_input_port_fieldg_window2_write(uintptr_t base, uint8_t data) {
1880 uint32_t curr = system_hw_read_32(0x209268L);
1881 system_hw_write_32(0x209268L, (((uint32_t) (data & 0x1)) << 25) | (curr & 0xfdffffff));
1882 }
acamera_fpga_video_capture1_input_port_fieldg_window2_read(uintptr_t base)1883 static __inline uint8_t acamera_fpga_video_capture1_input_port_fieldg_window2_read(uintptr_t base) {
1884 return (uint8_t)((system_hw_read_32(0x209268L) & 0x2000000) >> 25);
1885 }
1886 // ------------------------------------------------------------------------------ //
1887 // Register: fieldg field
1888 // ------------------------------------------------------------------------------ //
1889
1890 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_FIELDG_FIELD_DEFAULT (0)
1891 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_FIELDG_FIELD_DATASIZE (1)
1892 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_FIELDG_FIELD_OFFSET (0x268)
1893 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_FIELDG_FIELD_MASK (0x4000000)
1894 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_FIELDG_FIELD_EXCLUDE_FIELD_I_SIGNAL_IN_FIELD_GATE (0)
1895 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_FIELDG_FIELD_INCLUDE_FIELD_I_SIGNAL_IN_FIELD_GATE (1)
1896
1897 // args: data (1-bit)
acamera_fpga_video_capture1_input_port_fieldg_field_write(uintptr_t base,uint8_t data)1898 static __inline void acamera_fpga_video_capture1_input_port_fieldg_field_write(uintptr_t base, uint8_t data) {
1899 uint32_t curr = system_hw_read_32(0x209268L);
1900 system_hw_write_32(0x209268L, (((uint32_t) (data & 0x1)) << 26) | (curr & 0xfbffffff));
1901 }
acamera_fpga_video_capture1_input_port_fieldg_field_read(uintptr_t base)1902 static __inline uint8_t acamera_fpga_video_capture1_input_port_fieldg_field_read(uintptr_t base) {
1903 return (uint8_t)((system_hw_read_32(0x209268L) & 0x4000000) >> 26);
1904 }
1905 // ------------------------------------------------------------------------------ //
1906 // Register: field mode
1907 // ------------------------------------------------------------------------------ //
1908
1909 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_FIELD_MODE_DEFAULT (0)
1910 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_FIELD_MODE_DATASIZE (1)
1911 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_FIELD_MODE_OFFSET (0x268)
1912 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_FIELD_MODE_MASK (0x8000000)
1913 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_FIELD_MODE_PULSE_FIELD (0)
1914 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_FIELD_MODE_TOGGLE_FIELD (1)
1915
1916 // args: data (1-bit)
acamera_fpga_video_capture1_input_port_field_mode_write(uintptr_t base,uint8_t data)1917 static __inline void acamera_fpga_video_capture1_input_port_field_mode_write(uintptr_t base, uint8_t data) {
1918 uint32_t curr = system_hw_read_32(0x209268L);
1919 system_hw_write_32(0x209268L, (((uint32_t) (data & 0x1)) << 27) | (curr & 0xf7ffffff));
1920 }
acamera_fpga_video_capture1_input_port_field_mode_read(uintptr_t base)1921 static __inline uint8_t acamera_fpga_video_capture1_input_port_field_mode_read(uintptr_t base) {
1922 return (uint8_t)((system_hw_read_32(0x209268L) & 0x8000000) >> 27);
1923 }
1924 // ------------------------------------------------------------------------------ //
1925 // Register: hc limit
1926 // ------------------------------------------------------------------------------ //
1927
1928 // ------------------------------------------------------------------------------ //
1929 // horizontal counter limit value (counts: 0,1,...hc_limit-1,hc_limit,0,1,...)
1930 // ------------------------------------------------------------------------------ //
1931
1932 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_HC_LIMIT_DEFAULT (0xFFFF)
1933 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_HC_LIMIT_DATASIZE (16)
1934 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_HC_LIMIT_OFFSET (0x26c)
1935 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_HC_LIMIT_MASK (0xffff)
1936
1937 // args: data (16-bit)
acamera_fpga_video_capture1_input_port_hc_limit_write(uintptr_t base,uint16_t data)1938 static __inline void acamera_fpga_video_capture1_input_port_hc_limit_write(uintptr_t base, uint16_t data) {
1939 uint32_t curr = system_hw_read_32(0x20926cL);
1940 system_hw_write_32(0x20926cL, (((uint32_t) (data & 0xffff)) << 0) | (curr & 0xffff0000));
1941 }
acamera_fpga_video_capture1_input_port_hc_limit_read(uintptr_t base)1942 static __inline uint16_t acamera_fpga_video_capture1_input_port_hc_limit_read(uintptr_t base) {
1943 return (uint16_t)((system_hw_read_32(0x20926cL) & 0xffff) >> 0);
1944 }
1945 // ------------------------------------------------------------------------------ //
1946 // Register: hc start0
1947 // ------------------------------------------------------------------------------ //
1948
1949 // ------------------------------------------------------------------------------ //
1950 // window0 start for ACL gate. See ISP guide for further details.
1951 // ------------------------------------------------------------------------------ //
1952
1953 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_HC_START0_DEFAULT (0)
1954 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_HC_START0_DATASIZE (16)
1955 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_HC_START0_OFFSET (0x270)
1956 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_HC_START0_MASK (0xffff)
1957
1958 // args: data (16-bit)
acamera_fpga_video_capture1_input_port_hc_start0_write(uintptr_t base,uint16_t data)1959 static __inline void acamera_fpga_video_capture1_input_port_hc_start0_write(uintptr_t base, uint16_t data) {
1960 uint32_t curr = system_hw_read_32(0x209270L);
1961 system_hw_write_32(0x209270L, (((uint32_t) (data & 0xffff)) << 0) | (curr & 0xffff0000));
1962 }
acamera_fpga_video_capture1_input_port_hc_start0_read(uintptr_t base)1963 static __inline uint16_t acamera_fpga_video_capture1_input_port_hc_start0_read(uintptr_t base) {
1964 return (uint16_t)((system_hw_read_32(0x209270L) & 0xffff) >> 0);
1965 }
1966 // ------------------------------------------------------------------------------ //
1967 // Register: hc size0
1968 // ------------------------------------------------------------------------------ //
1969
1970 // ------------------------------------------------------------------------------ //
1971 // window0 size for ACL gate. See ISP guide for further details.
1972 // ------------------------------------------------------------------------------ //
1973
1974 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_HC_SIZE0_DEFAULT (0)
1975 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_HC_SIZE0_DATASIZE (16)
1976 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_HC_SIZE0_OFFSET (0x274)
1977 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_HC_SIZE0_MASK (0xffff)
1978
1979 // args: data (16-bit)
acamera_fpga_video_capture1_input_port_hc_size0_write(uintptr_t base,uint16_t data)1980 static __inline void acamera_fpga_video_capture1_input_port_hc_size0_write(uintptr_t base, uint16_t data) {
1981 uint32_t curr = system_hw_read_32(0x209274L);
1982 system_hw_write_32(0x209274L, (((uint32_t) (data & 0xffff)) << 0) | (curr & 0xffff0000));
1983 }
acamera_fpga_video_capture1_input_port_hc_size0_read(uintptr_t base)1984 static __inline uint16_t acamera_fpga_video_capture1_input_port_hc_size0_read(uintptr_t base) {
1985 return (uint16_t)((system_hw_read_32(0x209274L) & 0xffff) >> 0);
1986 }
1987 // ------------------------------------------------------------------------------ //
1988 // Register: hc start1
1989 // ------------------------------------------------------------------------------ //
1990
1991 // ------------------------------------------------------------------------------ //
1992 // window1 start for HS gate. See ISP guide for further details.
1993 // ------------------------------------------------------------------------------ //
1994
1995 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_HC_START1_DEFAULT (0)
1996 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_HC_START1_DATASIZE (16)
1997 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_HC_START1_OFFSET (0x278)
1998 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_HC_START1_MASK (0xffff)
1999
2000 // args: data (16-bit)
acamera_fpga_video_capture1_input_port_hc_start1_write(uintptr_t base,uint16_t data)2001 static __inline void acamera_fpga_video_capture1_input_port_hc_start1_write(uintptr_t base, uint16_t data) {
2002 uint32_t curr = system_hw_read_32(0x209278L);
2003 system_hw_write_32(0x209278L, (((uint32_t) (data & 0xffff)) << 0) | (curr & 0xffff0000));
2004 }
acamera_fpga_video_capture1_input_port_hc_start1_read(uintptr_t base)2005 static __inline uint16_t acamera_fpga_video_capture1_input_port_hc_start1_read(uintptr_t base) {
2006 return (uint16_t)((system_hw_read_32(0x209278L) & 0xffff) >> 0);
2007 }
2008 // ------------------------------------------------------------------------------ //
2009 // Register: hc size1
2010 // ------------------------------------------------------------------------------ //
2011
2012 // ------------------------------------------------------------------------------ //
2013 // window1 size for HS gate. See ISP guide for further details.
2014 // ------------------------------------------------------------------------------ //
2015
2016 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_HC_SIZE1_DEFAULT (0)
2017 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_HC_SIZE1_DATASIZE (16)
2018 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_HC_SIZE1_OFFSET (0x27c)
2019 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_HC_SIZE1_MASK (0xffff)
2020
2021 // args: data (16-bit)
acamera_fpga_video_capture1_input_port_hc_size1_write(uintptr_t base,uint16_t data)2022 static __inline void acamera_fpga_video_capture1_input_port_hc_size1_write(uintptr_t base, uint16_t data) {
2023 uint32_t curr = system_hw_read_32(0x20927cL);
2024 system_hw_write_32(0x20927cL, (((uint32_t) (data & 0xffff)) << 0) | (curr & 0xffff0000));
2025 }
acamera_fpga_video_capture1_input_port_hc_size1_read(uintptr_t base)2026 static __inline uint16_t acamera_fpga_video_capture1_input_port_hc_size1_read(uintptr_t base) {
2027 return (uint16_t)((system_hw_read_32(0x20927cL) & 0xffff) >> 0);
2028 }
2029 // ------------------------------------------------------------------------------ //
2030 // Register: vc limit
2031 // ------------------------------------------------------------------------------ //
2032
2033 // ------------------------------------------------------------------------------ //
2034 // vertical counter limit value (counts: 0,1,...vc_limit-1,vc_limit,0,1,...)
2035 // ------------------------------------------------------------------------------ //
2036
2037 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_VC_LIMIT_DEFAULT (0xFFFF)
2038 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_VC_LIMIT_DATASIZE (16)
2039 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_VC_LIMIT_OFFSET (0x280)
2040 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_VC_LIMIT_MASK (0xffff)
2041
2042 // args: data (16-bit)
acamera_fpga_video_capture1_input_port_vc_limit_write(uintptr_t base,uint16_t data)2043 static __inline void acamera_fpga_video_capture1_input_port_vc_limit_write(uintptr_t base, uint16_t data) {
2044 uint32_t curr = system_hw_read_32(0x209280L);
2045 system_hw_write_32(0x209280L, (((uint32_t) (data & 0xffff)) << 0) | (curr & 0xffff0000));
2046 }
acamera_fpga_video_capture1_input_port_vc_limit_read(uintptr_t base)2047 static __inline uint16_t acamera_fpga_video_capture1_input_port_vc_limit_read(uintptr_t base) {
2048 return (uint16_t)((system_hw_read_32(0x209280L) & 0xffff) >> 0);
2049 }
2050 // ------------------------------------------------------------------------------ //
2051 // Register: vc start
2052 // ------------------------------------------------------------------------------ //
2053
2054 // ------------------------------------------------------------------------------ //
2055 // window2 start for ACL gate. See ISP guide for further details.
2056 // ------------------------------------------------------------------------------ //
2057
2058 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_VC_START_DEFAULT (0)
2059 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_VC_START_DATASIZE (16)
2060 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_VC_START_OFFSET (0x284)
2061 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_VC_START_MASK (0xffff)
2062
2063 // args: data (16-bit)
acamera_fpga_video_capture1_input_port_vc_start_write(uintptr_t base,uint16_t data)2064 static __inline void acamera_fpga_video_capture1_input_port_vc_start_write(uintptr_t base, uint16_t data) {
2065 uint32_t curr = system_hw_read_32(0x209284L);
2066 system_hw_write_32(0x209284L, (((uint32_t) (data & 0xffff)) << 0) | (curr & 0xffff0000));
2067 }
acamera_fpga_video_capture1_input_port_vc_start_read(uintptr_t base)2068 static __inline uint16_t acamera_fpga_video_capture1_input_port_vc_start_read(uintptr_t base) {
2069 return (uint16_t)((system_hw_read_32(0x209284L) & 0xffff) >> 0);
2070 }
2071 // ------------------------------------------------------------------------------ //
2072 // Register: vc size
2073 // ------------------------------------------------------------------------------ //
2074
2075 // ------------------------------------------------------------------------------ //
2076 // window2 size for ACL gate. See ISP guide for further details.
2077 // ------------------------------------------------------------------------------ //
2078
2079 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_VC_SIZE_DEFAULT (0)
2080 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_VC_SIZE_DATASIZE (16)
2081 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_VC_SIZE_OFFSET (0x288)
2082 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_VC_SIZE_MASK (0xffff)
2083
2084 // args: data (16-bit)
acamera_fpga_video_capture1_input_port_vc_size_write(uintptr_t base,uint16_t data)2085 static __inline void acamera_fpga_video_capture1_input_port_vc_size_write(uintptr_t base, uint16_t data) {
2086 uint32_t curr = system_hw_read_32(0x209288L);
2087 system_hw_write_32(0x209288L, (((uint32_t) (data & 0xffff)) << 0) | (curr & 0xffff0000));
2088 }
acamera_fpga_video_capture1_input_port_vc_size_read(uintptr_t base)2089 static __inline uint16_t acamera_fpga_video_capture1_input_port_vc_size_read(uintptr_t base) {
2090 return (uint16_t)((system_hw_read_32(0x209288L) & 0xffff) >> 0);
2091 }
2092 // ------------------------------------------------------------------------------ //
2093 // Register: frame width
2094 // ------------------------------------------------------------------------------ //
2095
2096 // ------------------------------------------------------------------------------ //
2097 // detected frame width. Read only value.
2098 // ------------------------------------------------------------------------------ //
2099
2100 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_FRAME_WIDTH_DEFAULT (0)
2101 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_FRAME_WIDTH_DATASIZE (16)
2102 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_FRAME_WIDTH_OFFSET (0x28c)
2103 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_FRAME_WIDTH_MASK (0xffff)
2104
2105 // args: data (16-bit)
acamera_fpga_video_capture1_input_port_frame_width_read(uintptr_t base)2106 static __inline uint16_t acamera_fpga_video_capture1_input_port_frame_width_read(uintptr_t base) {
2107 return (uint16_t)((system_hw_read_32(0x20928cL) & 0xffff) >> 0);
2108 }
2109 // ------------------------------------------------------------------------------ //
2110 // Register: frame height
2111 // ------------------------------------------------------------------------------ //
2112
2113 // ------------------------------------------------------------------------------ //
2114 // detected frame height. Read only value.
2115 // ------------------------------------------------------------------------------ //
2116
2117 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_FRAME_HEIGHT_DEFAULT (0)
2118 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_FRAME_HEIGHT_DATASIZE (16)
2119 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_FRAME_HEIGHT_OFFSET (0x290)
2120 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_FRAME_HEIGHT_MASK (0xffff)
2121
2122 // args: data (16-bit)
acamera_fpga_video_capture1_input_port_frame_height_read(uintptr_t base)2123 static __inline uint16_t acamera_fpga_video_capture1_input_port_frame_height_read(uintptr_t base) {
2124 return (uint16_t)((system_hw_read_32(0x209290L) & 0xffff) >> 0);
2125 }
2126 // ------------------------------------------------------------------------------ //
2127 // Register: mode request
2128 // ------------------------------------------------------------------------------ //
2129
2130 // ------------------------------------------------------------------------------ //
2131 // Used to stop and start input port. See ISP guide for further details.
2132 // ------------------------------------------------------------------------------ //
2133
2134 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_MODE_REQUEST_DEFAULT (0)
2135 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_MODE_REQUEST_DATASIZE (3)
2136 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_MODE_REQUEST_OFFSET (0x294)
2137 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_MODE_REQUEST_MASK (0x7)
2138 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_MODE_REQUEST_SAFE_STOP (0)
2139 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_MODE_REQUEST_SAFE_START (1)
2140 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_MODE_REQUEST_URGENT_STOP (2)
2141 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_MODE_REQUEST_URGENT_START (3)
2142 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_MODE_REQUEST_RESERVED4 (4)
2143 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_MODE_REQUEST_SAFER_START (5)
2144 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_MODE_REQUEST_RESERVED6 (6)
2145 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_MODE_REQUEST_RESERVED7 (7)
2146
2147 // args: data (3-bit)
acamera_fpga_video_capture1_input_port_mode_request_write(uintptr_t base,uint8_t data)2148 static __inline void acamera_fpga_video_capture1_input_port_mode_request_write(uintptr_t base, uint8_t data) {
2149 uint32_t curr = system_hw_read_32(0x209294L);
2150 system_hw_write_32(0x209294L, (((uint32_t) (data & 0x7)) << 0) | (curr & 0xfffffff8));
2151 }
acamera_fpga_video_capture1_input_port_mode_request_read(uintptr_t base)2152 static __inline uint8_t acamera_fpga_video_capture1_input_port_mode_request_read(uintptr_t base) {
2153 return (uint8_t)((system_hw_read_32(0x209294L) & 0x7) >> 0);
2154 }
2155 // ------------------------------------------------------------------------------ //
2156 // Register: freeze config
2157 // ------------------------------------------------------------------------------ //
2158
2159 // ------------------------------------------------------------------------------ //
2160 // Used to freeze input port configuration. Used when multiple register writes are required to change input port configuration.
2161 // ------------------------------------------------------------------------------ //
2162
2163 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_FREEZE_CONFIG_DEFAULT (0)
2164 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_FREEZE_CONFIG_DATASIZE (1)
2165 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_FREEZE_CONFIG_OFFSET (0x294)
2166 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_FREEZE_CONFIG_MASK (0x80)
2167 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_FREEZE_CONFIG_NORMAL_OPERATION (0)
2168 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_FREEZE_CONFIG_HOLD_PREVIOUS_INPUT_PORT_CONFIG_STATE (1)
2169
2170 // args: data (1-bit)
acamera_fpga_video_capture1_input_port_freeze_config_write(uintptr_t base,uint8_t data)2171 static __inline void acamera_fpga_video_capture1_input_port_freeze_config_write(uintptr_t base, uint8_t data) {
2172 uint32_t curr = system_hw_read_32(0x209294L);
2173 system_hw_write_32(0x209294L, (((uint32_t) (data & 0x1)) << 7) | (curr & 0xffffff7f));
2174 }
acamera_fpga_video_capture1_input_port_freeze_config_read(uintptr_t base)2175 static __inline uint8_t acamera_fpga_video_capture1_input_port_freeze_config_read(uintptr_t base) {
2176 return (uint8_t)((system_hw_read_32(0x209294L) & 0x80) >> 7);
2177 }
2178 // ------------------------------------------------------------------------------ //
2179 // Register: mode status
2180 // ------------------------------------------------------------------------------ //
2181
2182 // ------------------------------------------------------------------------------ //
2183 //
2184 // Used to monitor input port status:
2185 // bit 0: 1=running, 0=stopped, bits 1,2-reserved
2186 //
2187 // ------------------------------------------------------------------------------ //
2188
2189 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_MODE_STATUS_DEFAULT (0)
2190 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_MODE_STATUS_DATASIZE (3)
2191 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_MODE_STATUS_OFFSET (0x298)
2192 #define ACAMERA_FPGA_VIDEO_CAPTURE1_INPUT_PORT_MODE_STATUS_MASK (0x7)
2193
2194 // args: data (3-bit)
acamera_fpga_video_capture1_input_port_mode_status_read(uintptr_t base)2195 static __inline uint8_t acamera_fpga_video_capture1_input_port_mode_status_read(uintptr_t base) {
2196 return (uint8_t)((system_hw_read_32(0x209298L) & 0x7) >> 0);
2197 }
2198 // ------------------------------------------------------------------------------ //
2199 // Group: Video-Capture-1 Frame Stats
2200 // ------------------------------------------------------------------------------ //
2201
2202 // ------------------------------------------------------------------------------ //
2203 // Register: stats reset
2204 // ------------------------------------------------------------------------------ //
2205
2206 #define ACAMERA_FPGA_VIDEO_CAPTURE1_FRAME_STATS_STATS_RESET_DEFAULT (0)
2207 #define ACAMERA_FPGA_VIDEO_CAPTURE1_FRAME_STATS_STATS_RESET_DATASIZE (1)
2208 #define ACAMERA_FPGA_VIDEO_CAPTURE1_FRAME_STATS_STATS_RESET_OFFSET (0x29c)
2209 #define ACAMERA_FPGA_VIDEO_CAPTURE1_FRAME_STATS_STATS_RESET_MASK (0x1)
2210
2211 // args: data (1-bit)
acamera_fpga_video_capture1_frame_stats_stats_reset_write(uintptr_t base,uint8_t data)2212 static __inline void acamera_fpga_video_capture1_frame_stats_stats_reset_write(uintptr_t base, uint8_t data) {
2213 uint32_t curr = system_hw_read_32(0x20929cL);
2214 system_hw_write_32(0x20929cL, (((uint32_t) (data & 0x1)) << 0) | (curr & 0xfffffffe));
2215 }
acamera_fpga_video_capture1_frame_stats_stats_reset_read(uintptr_t base)2216 static __inline uint8_t acamera_fpga_video_capture1_frame_stats_stats_reset_read(uintptr_t base) {
2217 return (uint8_t)((system_hw_read_32(0x20929cL) & 0x1) >> 0);
2218 }
2219 // ------------------------------------------------------------------------------ //
2220 // Register: stats hold
2221 // ------------------------------------------------------------------------------ //
2222
2223 #define ACAMERA_FPGA_VIDEO_CAPTURE1_FRAME_STATS_STATS_HOLD_DEFAULT (0)
2224 #define ACAMERA_FPGA_VIDEO_CAPTURE1_FRAME_STATS_STATS_HOLD_DATASIZE (1)
2225 #define ACAMERA_FPGA_VIDEO_CAPTURE1_FRAME_STATS_STATS_HOLD_OFFSET (0x2a0)
2226 #define ACAMERA_FPGA_VIDEO_CAPTURE1_FRAME_STATS_STATS_HOLD_MASK (0x1)
2227
2228 // args: data (1-bit)
acamera_fpga_video_capture1_frame_stats_stats_hold_write(uintptr_t base,uint8_t data)2229 static __inline void acamera_fpga_video_capture1_frame_stats_stats_hold_write(uintptr_t base, uint8_t data) {
2230 uint32_t curr = system_hw_read_32(0x2092a0L);
2231 system_hw_write_32(0x2092a0L, (((uint32_t) (data & 0x1)) << 0) | (curr & 0xfffffffe));
2232 }
acamera_fpga_video_capture1_frame_stats_stats_hold_read(uintptr_t base)2233 static __inline uint8_t acamera_fpga_video_capture1_frame_stats_stats_hold_read(uintptr_t base) {
2234 return (uint8_t)((system_hw_read_32(0x2092a0L) & 0x1) >> 0);
2235 }
2236 // ------------------------------------------------------------------------------ //
2237 // Register: active width min
2238 // ------------------------------------------------------------------------------ //
2239
2240 #define ACAMERA_FPGA_VIDEO_CAPTURE1_FRAME_STATS_ACTIVE_WIDTH_MIN_DEFAULT (0x0)
2241 #define ACAMERA_FPGA_VIDEO_CAPTURE1_FRAME_STATS_ACTIVE_WIDTH_MIN_DATASIZE (32)
2242 #define ACAMERA_FPGA_VIDEO_CAPTURE1_FRAME_STATS_ACTIVE_WIDTH_MIN_OFFSET (0x2ac)
2243 #define ACAMERA_FPGA_VIDEO_CAPTURE1_FRAME_STATS_ACTIVE_WIDTH_MIN_MASK (0xffffffff)
2244
2245 // args: data (32-bit)
acamera_fpga_video_capture1_frame_stats_active_width_min_read(uintptr_t base)2246 static __inline uint32_t acamera_fpga_video_capture1_frame_stats_active_width_min_read(uintptr_t base) {
2247 return system_hw_read_32(0x2092acL);
2248 }
2249 // ------------------------------------------------------------------------------ //
2250 // Register: active width max
2251 // ------------------------------------------------------------------------------ //
2252
2253 #define ACAMERA_FPGA_VIDEO_CAPTURE1_FRAME_STATS_ACTIVE_WIDTH_MAX_DEFAULT (0x0)
2254 #define ACAMERA_FPGA_VIDEO_CAPTURE1_FRAME_STATS_ACTIVE_WIDTH_MAX_DATASIZE (32)
2255 #define ACAMERA_FPGA_VIDEO_CAPTURE1_FRAME_STATS_ACTIVE_WIDTH_MAX_OFFSET (0x2b0)
2256 #define ACAMERA_FPGA_VIDEO_CAPTURE1_FRAME_STATS_ACTIVE_WIDTH_MAX_MASK (0xffffffff)
2257
2258 // args: data (32-bit)
acamera_fpga_video_capture1_frame_stats_active_width_max_read(uintptr_t base)2259 static __inline uint32_t acamera_fpga_video_capture1_frame_stats_active_width_max_read(uintptr_t base) {
2260 return system_hw_read_32(0x2092b0L);
2261 }
2262 // ------------------------------------------------------------------------------ //
2263 // Register: active width sum
2264 // ------------------------------------------------------------------------------ //
2265
2266 #define ACAMERA_FPGA_VIDEO_CAPTURE1_FRAME_STATS_ACTIVE_WIDTH_SUM_DEFAULT (0x0)
2267 #define ACAMERA_FPGA_VIDEO_CAPTURE1_FRAME_STATS_ACTIVE_WIDTH_SUM_DATASIZE (32)
2268 #define ACAMERA_FPGA_VIDEO_CAPTURE1_FRAME_STATS_ACTIVE_WIDTH_SUM_OFFSET (0x2b4)
2269 #define ACAMERA_FPGA_VIDEO_CAPTURE1_FRAME_STATS_ACTIVE_WIDTH_SUM_MASK (0xffffffff)
2270
2271 // args: data (32-bit)
acamera_fpga_video_capture1_frame_stats_active_width_sum_read(uintptr_t base)2272 static __inline uint32_t acamera_fpga_video_capture1_frame_stats_active_width_sum_read(uintptr_t base) {
2273 return system_hw_read_32(0x2092b4L);
2274 }
2275 // ------------------------------------------------------------------------------ //
2276 // Register: active width num
2277 // ------------------------------------------------------------------------------ //
2278
2279 #define ACAMERA_FPGA_VIDEO_CAPTURE1_FRAME_STATS_ACTIVE_WIDTH_NUM_DEFAULT (0x0)
2280 #define ACAMERA_FPGA_VIDEO_CAPTURE1_FRAME_STATS_ACTIVE_WIDTH_NUM_DATASIZE (32)
2281 #define ACAMERA_FPGA_VIDEO_CAPTURE1_FRAME_STATS_ACTIVE_WIDTH_NUM_OFFSET (0x2b8)
2282 #define ACAMERA_FPGA_VIDEO_CAPTURE1_FRAME_STATS_ACTIVE_WIDTH_NUM_MASK (0xffffffff)
2283
2284 // args: data (32-bit)
acamera_fpga_video_capture1_frame_stats_active_width_num_read(uintptr_t base)2285 static __inline uint32_t acamera_fpga_video_capture1_frame_stats_active_width_num_read(uintptr_t base) {
2286 return system_hw_read_32(0x2092b8L);
2287 }
2288 // ------------------------------------------------------------------------------ //
2289 // Register: active height min
2290 // ------------------------------------------------------------------------------ //
2291
2292 #define ACAMERA_FPGA_VIDEO_CAPTURE1_FRAME_STATS_ACTIVE_HEIGHT_MIN_DEFAULT (0x0)
2293 #define ACAMERA_FPGA_VIDEO_CAPTURE1_FRAME_STATS_ACTIVE_HEIGHT_MIN_DATASIZE (32)
2294 #define ACAMERA_FPGA_VIDEO_CAPTURE1_FRAME_STATS_ACTIVE_HEIGHT_MIN_OFFSET (0x2bc)
2295 #define ACAMERA_FPGA_VIDEO_CAPTURE1_FRAME_STATS_ACTIVE_HEIGHT_MIN_MASK (0xffffffff)
2296
2297 // args: data (32-bit)
acamera_fpga_video_capture1_frame_stats_active_height_min_read(uintptr_t base)2298 static __inline uint32_t acamera_fpga_video_capture1_frame_stats_active_height_min_read(uintptr_t base) {
2299 return system_hw_read_32(0x2092bcL);
2300 }
2301 // ------------------------------------------------------------------------------ //
2302 // Register: active height max
2303 // ------------------------------------------------------------------------------ //
2304
2305 #define ACAMERA_FPGA_VIDEO_CAPTURE1_FRAME_STATS_ACTIVE_HEIGHT_MAX_DEFAULT (0x0)
2306 #define ACAMERA_FPGA_VIDEO_CAPTURE1_FRAME_STATS_ACTIVE_HEIGHT_MAX_DATASIZE (32)
2307 #define ACAMERA_FPGA_VIDEO_CAPTURE1_FRAME_STATS_ACTIVE_HEIGHT_MAX_OFFSET (0x2c0)
2308 #define ACAMERA_FPGA_VIDEO_CAPTURE1_FRAME_STATS_ACTIVE_HEIGHT_MAX_MASK (0xffffffff)
2309
2310 // args: data (32-bit)
acamera_fpga_video_capture1_frame_stats_active_height_max_read(uintptr_t base)2311 static __inline uint32_t acamera_fpga_video_capture1_frame_stats_active_height_max_read(uintptr_t base) {
2312 return system_hw_read_32(0x2092c0L);
2313 }
2314 // ------------------------------------------------------------------------------ //
2315 // Register: active height sum
2316 // ------------------------------------------------------------------------------ //
2317
2318 #define ACAMERA_FPGA_VIDEO_CAPTURE1_FRAME_STATS_ACTIVE_HEIGHT_SUM_DEFAULT (0x0)
2319 #define ACAMERA_FPGA_VIDEO_CAPTURE1_FRAME_STATS_ACTIVE_HEIGHT_SUM_DATASIZE (32)
2320 #define ACAMERA_FPGA_VIDEO_CAPTURE1_FRAME_STATS_ACTIVE_HEIGHT_SUM_OFFSET (0x2c4)
2321 #define ACAMERA_FPGA_VIDEO_CAPTURE1_FRAME_STATS_ACTIVE_HEIGHT_SUM_MASK (0xffffffff)
2322
2323 // args: data (32-bit)
acamera_fpga_video_capture1_frame_stats_active_height_sum_read(uintptr_t base)2324 static __inline uint32_t acamera_fpga_video_capture1_frame_stats_active_height_sum_read(uintptr_t base) {
2325 return system_hw_read_32(0x2092c4L);
2326 }
2327 // ------------------------------------------------------------------------------ //
2328 // Register: active height num
2329 // ------------------------------------------------------------------------------ //
2330
2331 #define ACAMERA_FPGA_VIDEO_CAPTURE1_FRAME_STATS_ACTIVE_HEIGHT_NUM_DEFAULT (0x0)
2332 #define ACAMERA_FPGA_VIDEO_CAPTURE1_FRAME_STATS_ACTIVE_HEIGHT_NUM_DATASIZE (32)
2333 #define ACAMERA_FPGA_VIDEO_CAPTURE1_FRAME_STATS_ACTIVE_HEIGHT_NUM_OFFSET (0x2c8)
2334 #define ACAMERA_FPGA_VIDEO_CAPTURE1_FRAME_STATS_ACTIVE_HEIGHT_NUM_MASK (0xffffffff)
2335
2336 // args: data (32-bit)
acamera_fpga_video_capture1_frame_stats_active_height_num_read(uintptr_t base)2337 static __inline uint32_t acamera_fpga_video_capture1_frame_stats_active_height_num_read(uintptr_t base) {
2338 return system_hw_read_32(0x2092c8L);
2339 }
2340 // ------------------------------------------------------------------------------ //
2341 // Register: hblank min
2342 // ------------------------------------------------------------------------------ //
2343
2344 #define ACAMERA_FPGA_VIDEO_CAPTURE1_FRAME_STATS_HBLANK_MIN_DEFAULT (0x0)
2345 #define ACAMERA_FPGA_VIDEO_CAPTURE1_FRAME_STATS_HBLANK_MIN_DATASIZE (32)
2346 #define ACAMERA_FPGA_VIDEO_CAPTURE1_FRAME_STATS_HBLANK_MIN_OFFSET (0x2cc)
2347 #define ACAMERA_FPGA_VIDEO_CAPTURE1_FRAME_STATS_HBLANK_MIN_MASK (0xffffffff)
2348
2349 // args: data (32-bit)
acamera_fpga_video_capture1_frame_stats_hblank_min_read(uintptr_t base)2350 static __inline uint32_t acamera_fpga_video_capture1_frame_stats_hblank_min_read(uintptr_t base) {
2351 return system_hw_read_32(0x2092ccL);
2352 }
2353 // ------------------------------------------------------------------------------ //
2354 // Register: hblank max
2355 // ------------------------------------------------------------------------------ //
2356
2357 #define ACAMERA_FPGA_VIDEO_CAPTURE1_FRAME_STATS_HBLANK_MAX_DEFAULT (0x0)
2358 #define ACAMERA_FPGA_VIDEO_CAPTURE1_FRAME_STATS_HBLANK_MAX_DATASIZE (32)
2359 #define ACAMERA_FPGA_VIDEO_CAPTURE1_FRAME_STATS_HBLANK_MAX_OFFSET (0x2d0)
2360 #define ACAMERA_FPGA_VIDEO_CAPTURE1_FRAME_STATS_HBLANK_MAX_MASK (0xffffffff)
2361
2362 // args: data (32-bit)
acamera_fpga_video_capture1_frame_stats_hblank_max_read(uintptr_t base)2363 static __inline uint32_t acamera_fpga_video_capture1_frame_stats_hblank_max_read(uintptr_t base) {
2364 return system_hw_read_32(0x2092d0L);
2365 }
2366 // ------------------------------------------------------------------------------ //
2367 // Register: hblank sum
2368 // ------------------------------------------------------------------------------ //
2369
2370 #define ACAMERA_FPGA_VIDEO_CAPTURE1_FRAME_STATS_HBLANK_SUM_DEFAULT (0x0)
2371 #define ACAMERA_FPGA_VIDEO_CAPTURE1_FRAME_STATS_HBLANK_SUM_DATASIZE (32)
2372 #define ACAMERA_FPGA_VIDEO_CAPTURE1_FRAME_STATS_HBLANK_SUM_OFFSET (0x2d4)
2373 #define ACAMERA_FPGA_VIDEO_CAPTURE1_FRAME_STATS_HBLANK_SUM_MASK (0xffffffff)
2374
2375 // args: data (32-bit)
acamera_fpga_video_capture1_frame_stats_hblank_sum_read(uintptr_t base)2376 static __inline uint32_t acamera_fpga_video_capture1_frame_stats_hblank_sum_read(uintptr_t base) {
2377 return system_hw_read_32(0x2092d4L);
2378 }
2379 // ------------------------------------------------------------------------------ //
2380 // Register: hblank num
2381 // ------------------------------------------------------------------------------ //
2382
2383 #define ACAMERA_FPGA_VIDEO_CAPTURE1_FRAME_STATS_HBLANK_NUM_DEFAULT (0x0)
2384 #define ACAMERA_FPGA_VIDEO_CAPTURE1_FRAME_STATS_HBLANK_NUM_DATASIZE (32)
2385 #define ACAMERA_FPGA_VIDEO_CAPTURE1_FRAME_STATS_HBLANK_NUM_OFFSET (0x2d8)
2386 #define ACAMERA_FPGA_VIDEO_CAPTURE1_FRAME_STATS_HBLANK_NUM_MASK (0xffffffff)
2387
2388 // args: data (32-bit)
acamera_fpga_video_capture1_frame_stats_hblank_num_read(uintptr_t base)2389 static __inline uint32_t acamera_fpga_video_capture1_frame_stats_hblank_num_read(uintptr_t base) {
2390 return system_hw_read_32(0x2092d8L);
2391 }
2392 // ------------------------------------------------------------------------------ //
2393 // Register: vblank min
2394 // ------------------------------------------------------------------------------ //
2395
2396 #define ACAMERA_FPGA_VIDEO_CAPTURE1_FRAME_STATS_VBLANK_MIN_DEFAULT (0x0)
2397 #define ACAMERA_FPGA_VIDEO_CAPTURE1_FRAME_STATS_VBLANK_MIN_DATASIZE (32)
2398 #define ACAMERA_FPGA_VIDEO_CAPTURE1_FRAME_STATS_VBLANK_MIN_OFFSET (0x2dc)
2399 #define ACAMERA_FPGA_VIDEO_CAPTURE1_FRAME_STATS_VBLANK_MIN_MASK (0xffffffff)
2400
2401 // args: data (32-bit)
acamera_fpga_video_capture1_frame_stats_vblank_min_read(uintptr_t base)2402 static __inline uint32_t acamera_fpga_video_capture1_frame_stats_vblank_min_read(uintptr_t base) {
2403 return system_hw_read_32(0x2092dcL);
2404 }
2405 // ------------------------------------------------------------------------------ //
2406 // Register: vblank max
2407 // ------------------------------------------------------------------------------ //
2408
2409 #define ACAMERA_FPGA_VIDEO_CAPTURE1_FRAME_STATS_VBLANK_MAX_DEFAULT (0x0)
2410 #define ACAMERA_FPGA_VIDEO_CAPTURE1_FRAME_STATS_VBLANK_MAX_DATASIZE (32)
2411 #define ACAMERA_FPGA_VIDEO_CAPTURE1_FRAME_STATS_VBLANK_MAX_OFFSET (0x2e0)
2412 #define ACAMERA_FPGA_VIDEO_CAPTURE1_FRAME_STATS_VBLANK_MAX_MASK (0xffffffff)
2413
2414 // args: data (32-bit)
acamera_fpga_video_capture1_frame_stats_vblank_max_read(uintptr_t base)2415 static __inline uint32_t acamera_fpga_video_capture1_frame_stats_vblank_max_read(uintptr_t base) {
2416 return system_hw_read_32(0x2092e0L);
2417 }
2418 // ------------------------------------------------------------------------------ //
2419 // Register: vblank sum
2420 // ------------------------------------------------------------------------------ //
2421
2422 #define ACAMERA_FPGA_VIDEO_CAPTURE1_FRAME_STATS_VBLANK_SUM_DEFAULT (0x0)
2423 #define ACAMERA_FPGA_VIDEO_CAPTURE1_FRAME_STATS_VBLANK_SUM_DATASIZE (32)
2424 #define ACAMERA_FPGA_VIDEO_CAPTURE1_FRAME_STATS_VBLANK_SUM_OFFSET (0x2e4)
2425 #define ACAMERA_FPGA_VIDEO_CAPTURE1_FRAME_STATS_VBLANK_SUM_MASK (0xffffffff)
2426
2427 // args: data (32-bit)
acamera_fpga_video_capture1_frame_stats_vblank_sum_read(uintptr_t base)2428 static __inline uint32_t acamera_fpga_video_capture1_frame_stats_vblank_sum_read(uintptr_t base) {
2429 return system_hw_read_32(0x2092e4L);
2430 }
2431 // ------------------------------------------------------------------------------ //
2432 // Register: vblank num
2433 // ------------------------------------------------------------------------------ //
2434
2435 #define ACAMERA_FPGA_VIDEO_CAPTURE1_FRAME_STATS_VBLANK_NUM_DEFAULT (0x0)
2436 #define ACAMERA_FPGA_VIDEO_CAPTURE1_FRAME_STATS_VBLANK_NUM_DATASIZE (32)
2437 #define ACAMERA_FPGA_VIDEO_CAPTURE1_FRAME_STATS_VBLANK_NUM_OFFSET (0x2e8)
2438 #define ACAMERA_FPGA_VIDEO_CAPTURE1_FRAME_STATS_VBLANK_NUM_MASK (0xffffffff)
2439
2440 // args: data (32-bit)
acamera_fpga_video_capture1_frame_stats_vblank_num_read(uintptr_t base)2441 static __inline uint32_t acamera_fpga_video_capture1_frame_stats_vblank_num_read(uintptr_t base) {
2442 return system_hw_read_32(0x2092e8L);
2443 }
2444 // ------------------------------------------------------------------------------ //
2445 // Group: Video-Capture-1 video test gen
2446 // ------------------------------------------------------------------------------ //
2447
2448 // ------------------------------------------------------------------------------ //
2449 // Video test generator controls. See ISP Guide for further details
2450 // ------------------------------------------------------------------------------ //
2451
2452 // ------------------------------------------------------------------------------ //
2453 // Register: test_pattern_off on
2454 // ------------------------------------------------------------------------------ //
2455
2456 // ------------------------------------------------------------------------------ //
2457 // Test pattern off-on: 0=off, 1=on
2458 // ------------------------------------------------------------------------------ //
2459
2460 #define ACAMERA_FPGA_VIDEO_CAPTURE1_VIDEO_TEST_GEN_TEST_PATTERN_OFF_ON_DEFAULT (0)
2461 #define ACAMERA_FPGA_VIDEO_CAPTURE1_VIDEO_TEST_GEN_TEST_PATTERN_OFF_ON_DATASIZE (1)
2462 #define ACAMERA_FPGA_VIDEO_CAPTURE1_VIDEO_TEST_GEN_TEST_PATTERN_OFF_ON_OFFSET (0x2f0)
2463 #define ACAMERA_FPGA_VIDEO_CAPTURE1_VIDEO_TEST_GEN_TEST_PATTERN_OFF_ON_MASK (0x1)
2464
2465 // args: data (1-bit)
acamera_fpga_video_capture1_video_test_gen_test_pattern_off_on_write(uintptr_t base,uint8_t data)2466 static __inline void acamera_fpga_video_capture1_video_test_gen_test_pattern_off_on_write(uintptr_t base, uint8_t data) {
2467 uint32_t curr = system_hw_read_32(0x2092f0L);
2468 system_hw_write_32(0x2092f0L, (((uint32_t) (data & 0x1)) << 0) | (curr & 0xfffffffe));
2469 }
acamera_fpga_video_capture1_video_test_gen_test_pattern_off_on_read(uintptr_t base)2470 static __inline uint8_t acamera_fpga_video_capture1_video_test_gen_test_pattern_off_on_read(uintptr_t base) {
2471 return (uint8_t)((system_hw_read_32(0x2092f0L) & 0x1) >> 0);
2472 }
2473 // ------------------------------------------------------------------------------ //
2474 // Register: bayer_rgb_i sel
2475 // ------------------------------------------------------------------------------ //
2476
2477 // ------------------------------------------------------------------------------ //
2478 // Bayer or rgb select for input video: 0=bayer, 1=rgb
2479 // ------------------------------------------------------------------------------ //
2480
2481 #define ACAMERA_FPGA_VIDEO_CAPTURE1_VIDEO_TEST_GEN_BAYER_RGB_I_SEL_DEFAULT (0)
2482 #define ACAMERA_FPGA_VIDEO_CAPTURE1_VIDEO_TEST_GEN_BAYER_RGB_I_SEL_DATASIZE (1)
2483 #define ACAMERA_FPGA_VIDEO_CAPTURE1_VIDEO_TEST_GEN_BAYER_RGB_I_SEL_OFFSET (0x2f0)
2484 #define ACAMERA_FPGA_VIDEO_CAPTURE1_VIDEO_TEST_GEN_BAYER_RGB_I_SEL_MASK (0x2)
2485
2486 // args: data (1-bit)
acamera_fpga_video_capture1_video_test_gen_bayer_rgb_i_sel_write(uintptr_t base,uint8_t data)2487 static __inline void acamera_fpga_video_capture1_video_test_gen_bayer_rgb_i_sel_write(uintptr_t base, uint8_t data) {
2488 uint32_t curr = system_hw_read_32(0x2092f0L);
2489 system_hw_write_32(0x2092f0L, (((uint32_t) (data & 0x1)) << 1) | (curr & 0xfffffffd));
2490 }
acamera_fpga_video_capture1_video_test_gen_bayer_rgb_i_sel_read(uintptr_t base)2491 static __inline uint8_t acamera_fpga_video_capture1_video_test_gen_bayer_rgb_i_sel_read(uintptr_t base) {
2492 return (uint8_t)((system_hw_read_32(0x2092f0L) & 0x2) >> 1);
2493 }
2494 // ------------------------------------------------------------------------------ //
2495 // Register: bayer_rgb_o sel
2496 // ------------------------------------------------------------------------------ //
2497
2498 // ------------------------------------------------------------------------------ //
2499 // Bayer or rgb select for output video: 0=bayer, 1=rgb
2500 // ------------------------------------------------------------------------------ //
2501
2502 #define ACAMERA_FPGA_VIDEO_CAPTURE1_VIDEO_TEST_GEN_BAYER_RGB_O_SEL_DEFAULT (0)
2503 #define ACAMERA_FPGA_VIDEO_CAPTURE1_VIDEO_TEST_GEN_BAYER_RGB_O_SEL_DATASIZE (1)
2504 #define ACAMERA_FPGA_VIDEO_CAPTURE1_VIDEO_TEST_GEN_BAYER_RGB_O_SEL_OFFSET (0x2f0)
2505 #define ACAMERA_FPGA_VIDEO_CAPTURE1_VIDEO_TEST_GEN_BAYER_RGB_O_SEL_MASK (0x4)
2506
2507 // args: data (1-bit)
acamera_fpga_video_capture1_video_test_gen_bayer_rgb_o_sel_write(uintptr_t base,uint8_t data)2508 static __inline void acamera_fpga_video_capture1_video_test_gen_bayer_rgb_o_sel_write(uintptr_t base, uint8_t data) {
2509 uint32_t curr = system_hw_read_32(0x2092f0L);
2510 system_hw_write_32(0x2092f0L, (((uint32_t) (data & 0x1)) << 2) | (curr & 0xfffffffb));
2511 }
acamera_fpga_video_capture1_video_test_gen_bayer_rgb_o_sel_read(uintptr_t base)2512 static __inline uint8_t acamera_fpga_video_capture1_video_test_gen_bayer_rgb_o_sel_read(uintptr_t base) {
2513 return (uint8_t)((system_hw_read_32(0x2092f0L) & 0x4) >> 2);
2514 }
2515 // ------------------------------------------------------------------------------ //
2516 // Register: pattern type
2517 // ------------------------------------------------------------------------------ //
2518
2519 // ------------------------------------------------------------------------------ //
2520 // Pattern type select: 0=Flat field,1=Horizontal gradient,2=Vertical Gradient,3=Vertical Bars,4=Rectangle,5-255=Default white frame on black
2521 // ------------------------------------------------------------------------------ //
2522
2523 #define ACAMERA_FPGA_VIDEO_CAPTURE1_VIDEO_TEST_GEN_PATTERN_TYPE_DEFAULT (0x03)
2524 #define ACAMERA_FPGA_VIDEO_CAPTURE1_VIDEO_TEST_GEN_PATTERN_TYPE_DATASIZE (8)
2525 #define ACAMERA_FPGA_VIDEO_CAPTURE1_VIDEO_TEST_GEN_PATTERN_TYPE_OFFSET (0x2f4)
2526 #define ACAMERA_FPGA_VIDEO_CAPTURE1_VIDEO_TEST_GEN_PATTERN_TYPE_MASK (0xff)
2527
2528 // args: data (8-bit)
acamera_fpga_video_capture1_video_test_gen_pattern_type_write(uintptr_t base,uint8_t data)2529 static __inline void acamera_fpga_video_capture1_video_test_gen_pattern_type_write(uintptr_t base, uint8_t data) {
2530 uint32_t curr = system_hw_read_32(0x2092f4L);
2531 system_hw_write_32(0x2092f4L, (((uint32_t) (data & 0xff)) << 0) | (curr & 0xffffff00));
2532 }
acamera_fpga_video_capture1_video_test_gen_pattern_type_read(uintptr_t base)2533 static __inline uint8_t acamera_fpga_video_capture1_video_test_gen_pattern_type_read(uintptr_t base) {
2534 return (uint8_t)((system_hw_read_32(0x2092f4L) & 0xff) >> 0);
2535 }
2536 // ------------------------------------------------------------------------------ //
2537 // Register: r backgnd
2538 // ------------------------------------------------------------------------------ //
2539
2540 // ------------------------------------------------------------------------------ //
2541 // Red background value 16bit, MSB aligned to used width
2542 // ------------------------------------------------------------------------------ //
2543
2544 #define ACAMERA_FPGA_VIDEO_CAPTURE1_VIDEO_TEST_GEN_R_BACKGND_DEFAULT (0xFFFF)
2545 #define ACAMERA_FPGA_VIDEO_CAPTURE1_VIDEO_TEST_GEN_R_BACKGND_DATASIZE (16)
2546 #define ACAMERA_FPGA_VIDEO_CAPTURE1_VIDEO_TEST_GEN_R_BACKGND_OFFSET (0x2f8)
2547 #define ACAMERA_FPGA_VIDEO_CAPTURE1_VIDEO_TEST_GEN_R_BACKGND_MASK (0xffff)
2548
2549 // args: data (16-bit)
acamera_fpga_video_capture1_video_test_gen_r_backgnd_write(uintptr_t base,uint16_t data)2550 static __inline void acamera_fpga_video_capture1_video_test_gen_r_backgnd_write(uintptr_t base, uint16_t data) {
2551 uint32_t curr = system_hw_read_32(0x2092f8L);
2552 system_hw_write_32(0x2092f8L, (((uint32_t) (data & 0xffff)) << 0) | (curr & 0xffff0000));
2553 }
acamera_fpga_video_capture1_video_test_gen_r_backgnd_read(uintptr_t base)2554 static __inline uint16_t acamera_fpga_video_capture1_video_test_gen_r_backgnd_read(uintptr_t base) {
2555 return (uint16_t)((system_hw_read_32(0x2092f8L) & 0xffff) >> 0);
2556 }
2557 // ------------------------------------------------------------------------------ //
2558 // Register: g backgnd
2559 // ------------------------------------------------------------------------------ //
2560
2561 // ------------------------------------------------------------------------------ //
2562 // Green background value 16bit, MSB aligned to used width
2563 // ------------------------------------------------------------------------------ //
2564
2565 #define ACAMERA_FPGA_VIDEO_CAPTURE1_VIDEO_TEST_GEN_G_BACKGND_DEFAULT (0xFFFF)
2566 #define ACAMERA_FPGA_VIDEO_CAPTURE1_VIDEO_TEST_GEN_G_BACKGND_DATASIZE (16)
2567 #define ACAMERA_FPGA_VIDEO_CAPTURE1_VIDEO_TEST_GEN_G_BACKGND_OFFSET (0x2fc)
2568 #define ACAMERA_FPGA_VIDEO_CAPTURE1_VIDEO_TEST_GEN_G_BACKGND_MASK (0xffff)
2569
2570 // args: data (16-bit)
acamera_fpga_video_capture1_video_test_gen_g_backgnd_write(uintptr_t base,uint16_t data)2571 static __inline void acamera_fpga_video_capture1_video_test_gen_g_backgnd_write(uintptr_t base, uint16_t data) {
2572 uint32_t curr = system_hw_read_32(0x2092fcL);
2573 system_hw_write_32(0x2092fcL, (((uint32_t) (data & 0xffff)) << 0) | (curr & 0xffff0000));
2574 }
acamera_fpga_video_capture1_video_test_gen_g_backgnd_read(uintptr_t base)2575 static __inline uint16_t acamera_fpga_video_capture1_video_test_gen_g_backgnd_read(uintptr_t base) {
2576 return (uint16_t)((system_hw_read_32(0x2092fcL) & 0xffff) >> 0);
2577 }
2578 // ------------------------------------------------------------------------------ //
2579 // Register: b backgnd
2580 // ------------------------------------------------------------------------------ //
2581
2582 // ------------------------------------------------------------------------------ //
2583 // Blue background value 16bit, MSB aligned to used width
2584 // ------------------------------------------------------------------------------ //
2585
2586 #define ACAMERA_FPGA_VIDEO_CAPTURE1_VIDEO_TEST_GEN_B_BACKGND_DEFAULT (0xFFFF)
2587 #define ACAMERA_FPGA_VIDEO_CAPTURE1_VIDEO_TEST_GEN_B_BACKGND_DATASIZE (16)
2588 #define ACAMERA_FPGA_VIDEO_CAPTURE1_VIDEO_TEST_GEN_B_BACKGND_OFFSET (0x300)
2589 #define ACAMERA_FPGA_VIDEO_CAPTURE1_VIDEO_TEST_GEN_B_BACKGND_MASK (0xffff)
2590
2591 // args: data (16-bit)
acamera_fpga_video_capture1_video_test_gen_b_backgnd_write(uintptr_t base,uint16_t data)2592 static __inline void acamera_fpga_video_capture1_video_test_gen_b_backgnd_write(uintptr_t base, uint16_t data) {
2593 uint32_t curr = system_hw_read_32(0x209300L);
2594 system_hw_write_32(0x209300L, (((uint32_t) (data & 0xffff)) << 0) | (curr & 0xffff0000));
2595 }
acamera_fpga_video_capture1_video_test_gen_b_backgnd_read(uintptr_t base)2596 static __inline uint16_t acamera_fpga_video_capture1_video_test_gen_b_backgnd_read(uintptr_t base) {
2597 return (uint16_t)((system_hw_read_32(0x209300L) & 0xffff) >> 0);
2598 }
2599 // ------------------------------------------------------------------------------ //
2600 // Register: r foregnd
2601 // ------------------------------------------------------------------------------ //
2602
2603 // ------------------------------------------------------------------------------ //
2604 // Red foreground value 16bit, MSB aligned to used width
2605 // ------------------------------------------------------------------------------ //
2606
2607 #define ACAMERA_FPGA_VIDEO_CAPTURE1_VIDEO_TEST_GEN_R_FOREGND_DEFAULT (0x8FFF)
2608 #define ACAMERA_FPGA_VIDEO_CAPTURE1_VIDEO_TEST_GEN_R_FOREGND_DATASIZE (16)
2609 #define ACAMERA_FPGA_VIDEO_CAPTURE1_VIDEO_TEST_GEN_R_FOREGND_OFFSET (0x304)
2610 #define ACAMERA_FPGA_VIDEO_CAPTURE1_VIDEO_TEST_GEN_R_FOREGND_MASK (0xffff)
2611
2612 // args: data (16-bit)
acamera_fpga_video_capture1_video_test_gen_r_foregnd_write(uintptr_t base,uint16_t data)2613 static __inline void acamera_fpga_video_capture1_video_test_gen_r_foregnd_write(uintptr_t base, uint16_t data) {
2614 uint32_t curr = system_hw_read_32(0x209304L);
2615 system_hw_write_32(0x209304L, (((uint32_t) (data & 0xffff)) << 0) | (curr & 0xffff0000));
2616 }
acamera_fpga_video_capture1_video_test_gen_r_foregnd_read(uintptr_t base)2617 static __inline uint16_t acamera_fpga_video_capture1_video_test_gen_r_foregnd_read(uintptr_t base) {
2618 return (uint16_t)((system_hw_read_32(0x209304L) & 0xffff) >> 0);
2619 }
2620 // ------------------------------------------------------------------------------ //
2621 // Register: g foregnd
2622 // ------------------------------------------------------------------------------ //
2623
2624 // ------------------------------------------------------------------------------ //
2625 // Green foreground value 16bit, MSB aligned to used width
2626 // ------------------------------------------------------------------------------ //
2627
2628 #define ACAMERA_FPGA_VIDEO_CAPTURE1_VIDEO_TEST_GEN_G_FOREGND_DEFAULT (0x8FFF)
2629 #define ACAMERA_FPGA_VIDEO_CAPTURE1_VIDEO_TEST_GEN_G_FOREGND_DATASIZE (16)
2630 #define ACAMERA_FPGA_VIDEO_CAPTURE1_VIDEO_TEST_GEN_G_FOREGND_OFFSET (0x308)
2631 #define ACAMERA_FPGA_VIDEO_CAPTURE1_VIDEO_TEST_GEN_G_FOREGND_MASK (0xffff)
2632
2633 // args: data (16-bit)
acamera_fpga_video_capture1_video_test_gen_g_foregnd_write(uintptr_t base,uint16_t data)2634 static __inline void acamera_fpga_video_capture1_video_test_gen_g_foregnd_write(uintptr_t base, uint16_t data) {
2635 uint32_t curr = system_hw_read_32(0x209308L);
2636 system_hw_write_32(0x209308L, (((uint32_t) (data & 0xffff)) << 0) | (curr & 0xffff0000));
2637 }
acamera_fpga_video_capture1_video_test_gen_g_foregnd_read(uintptr_t base)2638 static __inline uint16_t acamera_fpga_video_capture1_video_test_gen_g_foregnd_read(uintptr_t base) {
2639 return (uint16_t)((system_hw_read_32(0x209308L) & 0xffff) >> 0);
2640 }
2641 // ------------------------------------------------------------------------------ //
2642 // Register: b foregnd
2643 // ------------------------------------------------------------------------------ //
2644
2645 // ------------------------------------------------------------------------------ //
2646 // Blue foreground value 16bit, MSB aligned to used width
2647 // ------------------------------------------------------------------------------ //
2648
2649 #define ACAMERA_FPGA_VIDEO_CAPTURE1_VIDEO_TEST_GEN_B_FOREGND_DEFAULT (0x8FFF)
2650 #define ACAMERA_FPGA_VIDEO_CAPTURE1_VIDEO_TEST_GEN_B_FOREGND_DATASIZE (16)
2651 #define ACAMERA_FPGA_VIDEO_CAPTURE1_VIDEO_TEST_GEN_B_FOREGND_OFFSET (0x30c)
2652 #define ACAMERA_FPGA_VIDEO_CAPTURE1_VIDEO_TEST_GEN_B_FOREGND_MASK (0xffff)
2653
2654 // args: data (16-bit)
acamera_fpga_video_capture1_video_test_gen_b_foregnd_write(uintptr_t base,uint16_t data)2655 static __inline void acamera_fpga_video_capture1_video_test_gen_b_foregnd_write(uintptr_t base, uint16_t data) {
2656 uint32_t curr = system_hw_read_32(0x20930cL);
2657 system_hw_write_32(0x20930cL, (((uint32_t) (data & 0xffff)) << 0) | (curr & 0xffff0000));
2658 }
acamera_fpga_video_capture1_video_test_gen_b_foregnd_read(uintptr_t base)2659 static __inline uint16_t acamera_fpga_video_capture1_video_test_gen_b_foregnd_read(uintptr_t base) {
2660 return (uint16_t)((system_hw_read_32(0x20930cL) & 0xffff) >> 0);
2661 }
2662 // ------------------------------------------------------------------------------ //
2663 // Register: rgb gradient
2664 // ------------------------------------------------------------------------------ //
2665
2666 // ------------------------------------------------------------------------------ //
2667 // RGB gradient increment per pixel (0-15)
2668 // ------------------------------------------------------------------------------ //
2669
2670 #define ACAMERA_FPGA_VIDEO_CAPTURE1_VIDEO_TEST_GEN_RGB_GRADIENT_DEFAULT (0x3CAA)
2671 #define ACAMERA_FPGA_VIDEO_CAPTURE1_VIDEO_TEST_GEN_RGB_GRADIENT_DATASIZE (16)
2672 #define ACAMERA_FPGA_VIDEO_CAPTURE1_VIDEO_TEST_GEN_RGB_GRADIENT_OFFSET (0x310)
2673 #define ACAMERA_FPGA_VIDEO_CAPTURE1_VIDEO_TEST_GEN_RGB_GRADIENT_MASK (0xffff)
2674
2675 // args: data (16-bit)
acamera_fpga_video_capture1_video_test_gen_rgb_gradient_write(uintptr_t base,uint16_t data)2676 static __inline void acamera_fpga_video_capture1_video_test_gen_rgb_gradient_write(uintptr_t base, uint16_t data) {
2677 uint32_t curr = system_hw_read_32(0x209310L);
2678 system_hw_write_32(0x209310L, (((uint32_t) (data & 0xffff)) << 0) | (curr & 0xffff0000));
2679 }
acamera_fpga_video_capture1_video_test_gen_rgb_gradient_read(uintptr_t base)2680 static __inline uint16_t acamera_fpga_video_capture1_video_test_gen_rgb_gradient_read(uintptr_t base) {
2681 return (uint16_t)((system_hw_read_32(0x209310L) & 0xffff) >> 0);
2682 }
2683 // ------------------------------------------------------------------------------ //
2684 // Register: rgb_gradient start
2685 // ------------------------------------------------------------------------------ //
2686
2687 // ------------------------------------------------------------------------------ //
2688 // RGB gradient start value 16bit, MSB aligned to used width
2689 // ------------------------------------------------------------------------------ //
2690
2691 #define ACAMERA_FPGA_VIDEO_CAPTURE1_VIDEO_TEST_GEN_RGB_GRADIENT_START_DEFAULT (0x0000)
2692 #define ACAMERA_FPGA_VIDEO_CAPTURE1_VIDEO_TEST_GEN_RGB_GRADIENT_START_DATASIZE (16)
2693 #define ACAMERA_FPGA_VIDEO_CAPTURE1_VIDEO_TEST_GEN_RGB_GRADIENT_START_OFFSET (0x314)
2694 #define ACAMERA_FPGA_VIDEO_CAPTURE1_VIDEO_TEST_GEN_RGB_GRADIENT_START_MASK (0xffff)
2695
2696 // args: data (16-bit)
acamera_fpga_video_capture1_video_test_gen_rgb_gradient_start_write(uintptr_t base,uint16_t data)2697 static __inline void acamera_fpga_video_capture1_video_test_gen_rgb_gradient_start_write(uintptr_t base, uint16_t data) {
2698 uint32_t curr = system_hw_read_32(0x209314L);
2699 system_hw_write_32(0x209314L, (((uint32_t) (data & 0xffff)) << 0) | (curr & 0xffff0000));
2700 }
acamera_fpga_video_capture1_video_test_gen_rgb_gradient_start_read(uintptr_t base)2701 static __inline uint16_t acamera_fpga_video_capture1_video_test_gen_rgb_gradient_start_read(uintptr_t base) {
2702 return (uint16_t)((system_hw_read_32(0x209314L) & 0xffff) >> 0);
2703 }
2704 // ------------------------------------------------------------------------------ //
2705 // Register: rect top
2706 // ------------------------------------------------------------------------------ //
2707
2708 // ------------------------------------------------------------------------------ //
2709 // Rectangle top line number 1-n
2710 // ------------------------------------------------------------------------------ //
2711
2712 #define ACAMERA_FPGA_VIDEO_CAPTURE1_VIDEO_TEST_GEN_RECT_TOP_DEFAULT (0x0001)
2713 #define ACAMERA_FPGA_VIDEO_CAPTURE1_VIDEO_TEST_GEN_RECT_TOP_DATASIZE (14)
2714 #define ACAMERA_FPGA_VIDEO_CAPTURE1_VIDEO_TEST_GEN_RECT_TOP_OFFSET (0x318)
2715 #define ACAMERA_FPGA_VIDEO_CAPTURE1_VIDEO_TEST_GEN_RECT_TOP_MASK (0x3fff)
2716
2717 // args: data (14-bit)
acamera_fpga_video_capture1_video_test_gen_rect_top_write(uintptr_t base,uint16_t data)2718 static __inline void acamera_fpga_video_capture1_video_test_gen_rect_top_write(uintptr_t base, uint16_t data) {
2719 uint32_t curr = system_hw_read_32(0x209318L);
2720 system_hw_write_32(0x209318L, (((uint32_t) (data & 0x3fff)) << 0) | (curr & 0xffffc000));
2721 }
acamera_fpga_video_capture1_video_test_gen_rect_top_read(uintptr_t base)2722 static __inline uint16_t acamera_fpga_video_capture1_video_test_gen_rect_top_read(uintptr_t base) {
2723 return (uint16_t)((system_hw_read_32(0x209318L) & 0x3fff) >> 0);
2724 }
2725 // ------------------------------------------------------------------------------ //
2726 // Register: rect bot
2727 // ------------------------------------------------------------------------------ //
2728
2729 // ------------------------------------------------------------------------------ //
2730 // Rectangle bottom line number 1-n
2731 // ------------------------------------------------------------------------------ //
2732
2733 #define ACAMERA_FPGA_VIDEO_CAPTURE1_VIDEO_TEST_GEN_RECT_BOT_DEFAULT (0x0100)
2734 #define ACAMERA_FPGA_VIDEO_CAPTURE1_VIDEO_TEST_GEN_RECT_BOT_DATASIZE (14)
2735 #define ACAMERA_FPGA_VIDEO_CAPTURE1_VIDEO_TEST_GEN_RECT_BOT_OFFSET (0x31c)
2736 #define ACAMERA_FPGA_VIDEO_CAPTURE1_VIDEO_TEST_GEN_RECT_BOT_MASK (0x3fff)
2737
2738 // args: data (14-bit)
acamera_fpga_video_capture1_video_test_gen_rect_bot_write(uintptr_t base,uint16_t data)2739 static __inline void acamera_fpga_video_capture1_video_test_gen_rect_bot_write(uintptr_t base, uint16_t data) {
2740 uint32_t curr = system_hw_read_32(0x20931cL);
2741 system_hw_write_32(0x20931cL, (((uint32_t) (data & 0x3fff)) << 0) | (curr & 0xffffc000));
2742 }
acamera_fpga_video_capture1_video_test_gen_rect_bot_read(uintptr_t base)2743 static __inline uint16_t acamera_fpga_video_capture1_video_test_gen_rect_bot_read(uintptr_t base) {
2744 return (uint16_t)((system_hw_read_32(0x20931cL) & 0x3fff) >> 0);
2745 }
2746 // ------------------------------------------------------------------------------ //
2747 // Register: rect left
2748 // ------------------------------------------------------------------------------ //
2749
2750 // ------------------------------------------------------------------------------ //
2751 // Rectangle left pixel number 1-n
2752 // ------------------------------------------------------------------------------ //
2753
2754 #define ACAMERA_FPGA_VIDEO_CAPTURE1_VIDEO_TEST_GEN_RECT_LEFT_DEFAULT (0x0001)
2755 #define ACAMERA_FPGA_VIDEO_CAPTURE1_VIDEO_TEST_GEN_RECT_LEFT_DATASIZE (14)
2756 #define ACAMERA_FPGA_VIDEO_CAPTURE1_VIDEO_TEST_GEN_RECT_LEFT_OFFSET (0x320)
2757 #define ACAMERA_FPGA_VIDEO_CAPTURE1_VIDEO_TEST_GEN_RECT_LEFT_MASK (0x3fff)
2758
2759 // args: data (14-bit)
acamera_fpga_video_capture1_video_test_gen_rect_left_write(uintptr_t base,uint16_t data)2760 static __inline void acamera_fpga_video_capture1_video_test_gen_rect_left_write(uintptr_t base, uint16_t data) {
2761 uint32_t curr = system_hw_read_32(0x209320L);
2762 system_hw_write_32(0x209320L, (((uint32_t) (data & 0x3fff)) << 0) | (curr & 0xffffc000));
2763 }
acamera_fpga_video_capture1_video_test_gen_rect_left_read(uintptr_t base)2764 static __inline uint16_t acamera_fpga_video_capture1_video_test_gen_rect_left_read(uintptr_t base) {
2765 return (uint16_t)((system_hw_read_32(0x209320L) & 0x3fff) >> 0);
2766 }
2767 // ------------------------------------------------------------------------------ //
2768 // Register: rect right
2769 // ------------------------------------------------------------------------------ //
2770
2771 // ------------------------------------------------------------------------------ //
2772 // Rectangle right pixel number 1-n
2773 // ------------------------------------------------------------------------------ //
2774
2775 #define ACAMERA_FPGA_VIDEO_CAPTURE1_VIDEO_TEST_GEN_RECT_RIGHT_DEFAULT (0x0100)
2776 #define ACAMERA_FPGA_VIDEO_CAPTURE1_VIDEO_TEST_GEN_RECT_RIGHT_DATASIZE (14)
2777 #define ACAMERA_FPGA_VIDEO_CAPTURE1_VIDEO_TEST_GEN_RECT_RIGHT_OFFSET (0x328)
2778 #define ACAMERA_FPGA_VIDEO_CAPTURE1_VIDEO_TEST_GEN_RECT_RIGHT_MASK (0x3fff)
2779
2780 // args: data (14-bit)
acamera_fpga_video_capture1_video_test_gen_rect_right_write(uintptr_t base,uint16_t data)2781 static __inline void acamera_fpga_video_capture1_video_test_gen_rect_right_write(uintptr_t base, uint16_t data) {
2782 uint32_t curr = system_hw_read_32(0x209328L);
2783 system_hw_write_32(0x209328L, (((uint32_t) (data & 0x3fff)) << 0) | (curr & 0xffffc000));
2784 }
acamera_fpga_video_capture1_video_test_gen_rect_right_read(uintptr_t base)2785 static __inline uint16_t acamera_fpga_video_capture1_video_test_gen_rect_right_read(uintptr_t base) {
2786 return (uint16_t)((system_hw_read_32(0x209328L) & 0x3fff) >> 0);
2787 }
2788 // ------------------------------------------------------------------------------ //
2789 // Group: Video-Capture-1 DMA Writer
2790 // ------------------------------------------------------------------------------ //
2791
2792 // ------------------------------------------------------------------------------ //
2793 // Video-Capture DMA writer controls
2794 // ------------------------------------------------------------------------------ //
2795
2796 // ------------------------------------------------------------------------------ //
2797 // Register: Format
2798 // ------------------------------------------------------------------------------ //
2799
2800 // ------------------------------------------------------------------------------ //
2801 // Format
2802 // ------------------------------------------------------------------------------ //
2803
2804 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_FORMAT_DEFAULT (0x0)
2805 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_FORMAT_DATASIZE (8)
2806 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_FORMAT_OFFSET (0x32c)
2807 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_FORMAT_MASK (0xff)
2808
2809 // args: data (8-bit)
acamera_fpga_video_capture1_dma_writer_format_write(uintptr_t base,uint8_t data)2810 static __inline void acamera_fpga_video_capture1_dma_writer_format_write(uintptr_t base, uint8_t data) {
2811 uint32_t curr = system_hw_read_32(0x20932cL);
2812 system_hw_write_32(0x20932cL, (((uint32_t) (data & 0xff)) << 0) | (curr & 0xffffff00));
2813 }
acamera_fpga_video_capture1_dma_writer_format_read(uintptr_t base)2814 static __inline uint8_t acamera_fpga_video_capture1_dma_writer_format_read(uintptr_t base) {
2815 return (uint8_t)((system_hw_read_32(0x20932cL) & 0xff) >> 0);
2816 }
2817 // ------------------------------------------------------------------------------ //
2818 // Register: Base mode
2819 // ------------------------------------------------------------------------------ //
2820
2821 // ------------------------------------------------------------------------------ //
2822 // Base DMA packing mode for RGB/RAW/YUV etc (see ISP guide)
2823 // ------------------------------------------------------------------------------ //
2824
2825 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_BASE_MODE_DEFAULT (0x0D)
2826 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_BASE_MODE_DATASIZE (4)
2827 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_BASE_MODE_OFFSET (0x32c)
2828 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_BASE_MODE_MASK (0xf)
2829
2830 // args: data (4-bit)
acamera_fpga_video_capture1_dma_writer_base_mode_write(uintptr_t base,uint8_t data)2831 static __inline void acamera_fpga_video_capture1_dma_writer_base_mode_write(uintptr_t base, uint8_t data) {
2832 uint32_t curr = system_hw_read_32(0x20932cL);
2833 system_hw_write_32(0x20932cL, (((uint32_t) (data & 0xf)) << 0) | (curr & 0xfffffff0));
2834 }
acamera_fpga_video_capture1_dma_writer_base_mode_read(uintptr_t base)2835 static __inline uint8_t acamera_fpga_video_capture1_dma_writer_base_mode_read(uintptr_t base) {
2836 return (uint8_t)((system_hw_read_32(0x20932cL) & 0xf) >> 0);
2837 }
2838 // ------------------------------------------------------------------------------ //
2839 // Register: Plane select
2840 // ------------------------------------------------------------------------------ //
2841
2842 // ------------------------------------------------------------------------------ //
2843 // Plane select for planar base modes. Only used if planar outputs required. Not used. Should be set to 0
2844 // ------------------------------------------------------------------------------ //
2845
2846 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_PLANE_SELECT_DEFAULT (0x0)
2847 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_PLANE_SELECT_DATASIZE (2)
2848 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_PLANE_SELECT_OFFSET (0x32c)
2849 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_PLANE_SELECT_MASK (0xc0)
2850
2851 // args: data (2-bit)
acamera_fpga_video_capture1_dma_writer_plane_select_write(uintptr_t base,uint8_t data)2852 static __inline void acamera_fpga_video_capture1_dma_writer_plane_select_write(uintptr_t base, uint8_t data) {
2853 uint32_t curr = system_hw_read_32(0x20932cL);
2854 system_hw_write_32(0x20932cL, (((uint32_t) (data & 0x3)) << 6) | (curr & 0xffffff3f));
2855 }
acamera_fpga_video_capture1_dma_writer_plane_select_read(uintptr_t base)2856 static __inline uint8_t acamera_fpga_video_capture1_dma_writer_plane_select_read(uintptr_t base) {
2857 return (uint8_t)((system_hw_read_32(0x20932cL) & 0xc0) >> 6);
2858 }
2859 // ------------------------------------------------------------------------------ //
2860 // Register: single frame
2861 // ------------------------------------------------------------------------------ //
2862
2863 // ------------------------------------------------------------------------------ //
2864 // 0 = All frames are written(after frame_write_on= 1), 1= only 1st frame written ( after frame_write_on =1)
2865 // ------------------------------------------------------------------------------ //
2866
2867 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_SINGLE_FRAME_DEFAULT (0)
2868 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_SINGLE_FRAME_DATASIZE (1)
2869 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_SINGLE_FRAME_OFFSET (0x330)
2870 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_SINGLE_FRAME_MASK (0x1)
2871
2872 // args: data (1-bit)
acamera_fpga_video_capture1_dma_writer_single_frame_write(uintptr_t base,uint8_t data)2873 static __inline void acamera_fpga_video_capture1_dma_writer_single_frame_write(uintptr_t base, uint8_t data) {
2874 uint32_t curr = system_hw_read_32(0x209330L);
2875 system_hw_write_32(0x209330L, (((uint32_t) (data & 0x1)) << 0) | (curr & 0xfffffffe));
2876 }
acamera_fpga_video_capture1_dma_writer_single_frame_read(uintptr_t base)2877 static __inline uint8_t acamera_fpga_video_capture1_dma_writer_single_frame_read(uintptr_t base) {
2878 return (uint8_t)((system_hw_read_32(0x209330L) & 0x1) >> 0);
2879 }
2880 // ------------------------------------------------------------------------------ //
2881 // Register: frame write on
2882 // ------------------------------------------------------------------------------ //
2883
2884 // ------------------------------------------------------------------------------ //
2885 //
2886 // 0 = no frames written(when switched from 1, current frame completes writing before stopping),
2887 // 1= write frame(s) (write single or continous frame(s) )
2888 //
2889 // ------------------------------------------------------------------------------ //
2890
2891 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_FRAME_WRITE_ON_DEFAULT (0)
2892 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_FRAME_WRITE_ON_DATASIZE (1)
2893 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_FRAME_WRITE_ON_OFFSET (0x330)
2894 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_FRAME_WRITE_ON_MASK (0x2)
2895
2896 // args: data (1-bit)
acamera_fpga_video_capture1_dma_writer_frame_write_on_write(uintptr_t base,uint8_t data)2897 static __inline void acamera_fpga_video_capture1_dma_writer_frame_write_on_write(uintptr_t base, uint8_t data) {
2898 uint32_t curr = system_hw_read_32(0x209330L);
2899 system_hw_write_32(0x209330L, (((uint32_t) (data & 0x1)) << 1) | (curr & 0xfffffffd));
2900 }
acamera_fpga_video_capture1_dma_writer_frame_write_on_read(uintptr_t base)2901 static __inline uint8_t acamera_fpga_video_capture1_dma_writer_frame_write_on_read(uintptr_t base) {
2902 return (uint8_t)((system_hw_read_32(0x209330L) & 0x2) >> 1);
2903 }
2904 // ------------------------------------------------------------------------------ //
2905 // Register: half irate
2906 // ------------------------------------------------------------------------------ //
2907
2908 // ------------------------------------------------------------------------------ //
2909 // 0 = normal operation , 1= write half(alternate) of input frames( only valid for continuous mode)
2910 // ------------------------------------------------------------------------------ //
2911
2912 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_HALF_IRATE_DEFAULT (0)
2913 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_HALF_IRATE_DATASIZE (1)
2914 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_HALF_IRATE_OFFSET (0x330)
2915 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_HALF_IRATE_MASK (0x4)
2916
2917 // args: data (1-bit)
acamera_fpga_video_capture1_dma_writer_half_irate_write(uintptr_t base,uint8_t data)2918 static __inline void acamera_fpga_video_capture1_dma_writer_half_irate_write(uintptr_t base, uint8_t data) {
2919 uint32_t curr = system_hw_read_32(0x209330L);
2920 system_hw_write_32(0x209330L, (((uint32_t) (data & 0x1)) << 2) | (curr & 0xfffffffb));
2921 }
acamera_fpga_video_capture1_dma_writer_half_irate_read(uintptr_t base)2922 static __inline uint8_t acamera_fpga_video_capture1_dma_writer_half_irate_read(uintptr_t base) {
2923 return (uint8_t)((system_hw_read_32(0x209330L) & 0x4) >> 2);
2924 }
2925 // ------------------------------------------------------------------------------ //
2926 // Register: axi xact comp
2927 // ------------------------------------------------------------------------------ //
2928
2929 // ------------------------------------------------------------------------------ //
2930 // 0 = dont wait for axi transaction completion at end of frame(just all transfers accepted). 1 = wait for all transactions completed
2931 // ------------------------------------------------------------------------------ //
2932
2933 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_AXI_XACT_COMP_DEFAULT (0)
2934 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_AXI_XACT_COMP_DATASIZE (1)
2935 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_AXI_XACT_COMP_OFFSET (0x330)
2936 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_AXI_XACT_COMP_MASK (0x8)
2937
2938 // args: data (1-bit)
acamera_fpga_video_capture1_dma_writer_axi_xact_comp_write(uintptr_t base,uint8_t data)2939 static __inline void acamera_fpga_video_capture1_dma_writer_axi_xact_comp_write(uintptr_t base, uint8_t data) {
2940 uint32_t curr = system_hw_read_32(0x209330L);
2941 system_hw_write_32(0x209330L, (((uint32_t) (data & 0x1)) << 3) | (curr & 0xfffffff7));
2942 }
acamera_fpga_video_capture1_dma_writer_axi_xact_comp_read(uintptr_t base)2943 static __inline uint8_t acamera_fpga_video_capture1_dma_writer_axi_xact_comp_read(uintptr_t base) {
2944 return (uint8_t)((system_hw_read_32(0x209330L) & 0x8) >> 3);
2945 }
2946 // ------------------------------------------------------------------------------ //
2947 // Register: active width
2948 // ------------------------------------------------------------------------------ //
2949
2950 // ------------------------------------------------------------------------------ //
2951 // Active video width in pixels 128-8000
2952 // ------------------------------------------------------------------------------ //
2953
2954 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_ACTIVE_WIDTH_DEFAULT (0x780)
2955 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_ACTIVE_WIDTH_DATASIZE (16)
2956 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_ACTIVE_WIDTH_OFFSET (0x334)
2957 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_ACTIVE_WIDTH_MASK (0xffff)
2958
2959 // args: data (16-bit)
acamera_fpga_video_capture1_dma_writer_active_width_write(uintptr_t base,uint16_t data)2960 static __inline void acamera_fpga_video_capture1_dma_writer_active_width_write(uintptr_t base, uint16_t data) {
2961 uint32_t curr = system_hw_read_32(0x209334L);
2962 system_hw_write_32(0x209334L, (((uint32_t) (data & 0xffff)) << 0) | (curr & 0xffff0000));
2963 }
acamera_fpga_video_capture1_dma_writer_active_width_read(uintptr_t base)2964 static __inline uint16_t acamera_fpga_video_capture1_dma_writer_active_width_read(uintptr_t base) {
2965 return (uint16_t)((system_hw_read_32(0x209334L) & 0xffff) >> 0);
2966 }
2967 // ------------------------------------------------------------------------------ //
2968 // Register: active height
2969 // ------------------------------------------------------------------------------ //
2970
2971 // ------------------------------------------------------------------------------ //
2972 // Active video height in lines 128-8000
2973 // ------------------------------------------------------------------------------ //
2974
2975 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_ACTIVE_HEIGHT_DEFAULT (0x438)
2976 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_ACTIVE_HEIGHT_DATASIZE (16)
2977 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_ACTIVE_HEIGHT_OFFSET (0x338)
2978 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_ACTIVE_HEIGHT_MASK (0xffff)
2979
2980 // args: data (16-bit)
acamera_fpga_video_capture1_dma_writer_active_height_write(uintptr_t base,uint16_t data)2981 static __inline void acamera_fpga_video_capture1_dma_writer_active_height_write(uintptr_t base, uint16_t data) {
2982 uint32_t curr = system_hw_read_32(0x209338L);
2983 system_hw_write_32(0x209338L, (((uint32_t) (data & 0xffff)) << 0) | (curr & 0xffff0000));
2984 }
acamera_fpga_video_capture1_dma_writer_active_height_read(uintptr_t base)2985 static __inline uint16_t acamera_fpga_video_capture1_dma_writer_active_height_read(uintptr_t base) {
2986 return (uint16_t)((system_hw_read_32(0x209338L) & 0xffff) >> 0);
2987 }
2988 // ------------------------------------------------------------------------------ //
2989 // Register: bank0_base
2990 // ------------------------------------------------------------------------------ //
2991
2992 // ------------------------------------------------------------------------------ //
2993 // bank 0 base address for frame buffer, should be word-aligned
2994 // ------------------------------------------------------------------------------ //
2995
2996 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_BANK0_BASE_DEFAULT (0x0)
2997 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_BANK0_BASE_DATASIZE (32)
2998 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_BANK0_BASE_OFFSET (0x33c)
2999 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_BANK0_BASE_MASK (0xffffffff)
3000
3001 // args: data (32-bit)
acamera_fpga_video_capture1_dma_writer_bank0_base_write(uintptr_t base,uint32_t data)3002 static __inline void acamera_fpga_video_capture1_dma_writer_bank0_base_write(uintptr_t base, uint32_t data) {
3003 system_hw_write_32(0x20933cL, data);
3004 }
acamera_fpga_video_capture1_dma_writer_bank0_base_read(uintptr_t base)3005 static __inline uint32_t acamera_fpga_video_capture1_dma_writer_bank0_base_read(uintptr_t base) {
3006 return system_hw_read_32(0x20933cL);
3007 }
3008 // ------------------------------------------------------------------------------ //
3009 // Register: bank1_base
3010 // ------------------------------------------------------------------------------ //
3011
3012 // ------------------------------------------------------------------------------ //
3013 // bank 1 base address for frame buffer, should be word-aligned
3014 // ------------------------------------------------------------------------------ //
3015
3016 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_BANK1_BASE_DEFAULT (0x0)
3017 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_BANK1_BASE_DATASIZE (32)
3018 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_BANK1_BASE_OFFSET (0x340)
3019 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_BANK1_BASE_MASK (0xffffffff)
3020
3021 // args: data (32-bit)
acamera_fpga_video_capture1_dma_writer_bank1_base_write(uintptr_t base,uint32_t data)3022 static __inline void acamera_fpga_video_capture1_dma_writer_bank1_base_write(uintptr_t base, uint32_t data) {
3023 system_hw_write_32(0x209340L, data);
3024 }
acamera_fpga_video_capture1_dma_writer_bank1_base_read(uintptr_t base)3025 static __inline uint32_t acamera_fpga_video_capture1_dma_writer_bank1_base_read(uintptr_t base) {
3026 return system_hw_read_32(0x209340L);
3027 }
3028 // ------------------------------------------------------------------------------ //
3029 // Register: bank2_base
3030 // ------------------------------------------------------------------------------ //
3031
3032 // ------------------------------------------------------------------------------ //
3033 // bank 2 base address for frame buffer, should be word-aligned
3034 // ------------------------------------------------------------------------------ //
3035
3036 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_BANK2_BASE_DEFAULT (0x0)
3037 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_BANK2_BASE_DATASIZE (32)
3038 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_BANK2_BASE_OFFSET (0x344)
3039 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_BANK2_BASE_MASK (0xffffffff)
3040
3041 // args: data (32-bit)
acamera_fpga_video_capture1_dma_writer_bank2_base_write(uintptr_t base,uint32_t data)3042 static __inline void acamera_fpga_video_capture1_dma_writer_bank2_base_write(uintptr_t base, uint32_t data) {
3043 system_hw_write_32(0x209344L, data);
3044 }
acamera_fpga_video_capture1_dma_writer_bank2_base_read(uintptr_t base)3045 static __inline uint32_t acamera_fpga_video_capture1_dma_writer_bank2_base_read(uintptr_t base) {
3046 return system_hw_read_32(0x209344L);
3047 }
3048 // ------------------------------------------------------------------------------ //
3049 // Register: bank3_base
3050 // ------------------------------------------------------------------------------ //
3051
3052 // ------------------------------------------------------------------------------ //
3053 // bank 3 base address for frame buffer, should be word-aligned
3054 // ------------------------------------------------------------------------------ //
3055
3056 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_BANK3_BASE_DEFAULT (0x0)
3057 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_BANK3_BASE_DATASIZE (32)
3058 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_BANK3_BASE_OFFSET (0x348)
3059 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_BANK3_BASE_MASK (0xffffffff)
3060
3061 // args: data (32-bit)
acamera_fpga_video_capture1_dma_writer_bank3_base_write(uintptr_t base,uint32_t data)3062 static __inline void acamera_fpga_video_capture1_dma_writer_bank3_base_write(uintptr_t base, uint32_t data) {
3063 system_hw_write_32(0x209348L, data);
3064 }
acamera_fpga_video_capture1_dma_writer_bank3_base_read(uintptr_t base)3065 static __inline uint32_t acamera_fpga_video_capture1_dma_writer_bank3_base_read(uintptr_t base) {
3066 return system_hw_read_32(0x209348L);
3067 }
3068 // ------------------------------------------------------------------------------ //
3069 // Register: bank4_base
3070 // ------------------------------------------------------------------------------ //
3071
3072 // ------------------------------------------------------------------------------ //
3073 // bank 4 base address for frame buffer, should be word-aligned
3074 // ------------------------------------------------------------------------------ //
3075
3076 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_BANK4_BASE_DEFAULT (0x0)
3077 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_BANK4_BASE_DATASIZE (32)
3078 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_BANK4_BASE_OFFSET (0x34c)
3079 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_BANK4_BASE_MASK (0xffffffff)
3080
3081 // args: data (32-bit)
acamera_fpga_video_capture1_dma_writer_bank4_base_write(uintptr_t base,uint32_t data)3082 static __inline void acamera_fpga_video_capture1_dma_writer_bank4_base_write(uintptr_t base, uint32_t data) {
3083 system_hw_write_32(0x20934cL, data);
3084 }
acamera_fpga_video_capture1_dma_writer_bank4_base_read(uintptr_t base)3085 static __inline uint32_t acamera_fpga_video_capture1_dma_writer_bank4_base_read(uintptr_t base) {
3086 return system_hw_read_32(0x20934cL);
3087 }
3088 // ------------------------------------------------------------------------------ //
3089 // Register: max bank
3090 // ------------------------------------------------------------------------------ //
3091
3092 // ------------------------------------------------------------------------------ //
3093 // highest bank*_base to use for frame writes before recycling to bank0_base, only 0 to 4 are valid
3094 // ------------------------------------------------------------------------------ //
3095
3096 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_MAX_BANK_DEFAULT (0x0)
3097 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_MAX_BANK_DATASIZE (3)
3098 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_MAX_BANK_OFFSET (0x350)
3099 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_MAX_BANK_MASK (0x7)
3100
3101 // args: data (3-bit)
acamera_fpga_video_capture1_dma_writer_max_bank_write(uintptr_t base,uint8_t data)3102 static __inline void acamera_fpga_video_capture1_dma_writer_max_bank_write(uintptr_t base, uint8_t data) {
3103 uint32_t curr = system_hw_read_32(0x209350L);
3104 system_hw_write_32(0x209350L, (((uint32_t) (data & 0x7)) << 0) | (curr & 0xfffffff8));
3105 }
acamera_fpga_video_capture1_dma_writer_max_bank_read(uintptr_t base)3106 static __inline uint8_t acamera_fpga_video_capture1_dma_writer_max_bank_read(uintptr_t base) {
3107 return (uint8_t)((system_hw_read_32(0x209350L) & 0x7) >> 0);
3108 }
3109 // ------------------------------------------------------------------------------ //
3110 // Register: bank0 restart
3111 // ------------------------------------------------------------------------------ //
3112
3113 // ------------------------------------------------------------------------------ //
3114 // 0 = normal operation, 1= restart bank counter to bank0 for next frame write
3115 // ------------------------------------------------------------------------------ //
3116
3117 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_BANK0_RESTART_DEFAULT (0)
3118 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_BANK0_RESTART_DATASIZE (1)
3119 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_BANK0_RESTART_OFFSET (0x350)
3120 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_BANK0_RESTART_MASK (0x8)
3121
3122 // args: data (1-bit)
acamera_fpga_video_capture1_dma_writer_bank0_restart_write(uintptr_t base,uint8_t data)3123 static __inline void acamera_fpga_video_capture1_dma_writer_bank0_restart_write(uintptr_t base, uint8_t data) {
3124 uint32_t curr = system_hw_read_32(0x209350L);
3125 system_hw_write_32(0x209350L, (((uint32_t) (data & 0x1)) << 3) | (curr & 0xfffffff7));
3126 }
acamera_fpga_video_capture1_dma_writer_bank0_restart_read(uintptr_t base)3127 static __inline uint8_t acamera_fpga_video_capture1_dma_writer_bank0_restart_read(uintptr_t base) {
3128 return (uint8_t)((system_hw_read_32(0x209350L) & 0x8) >> 3);
3129 }
3130 // ------------------------------------------------------------------------------ //
3131 // Register: Line_offset
3132 // ------------------------------------------------------------------------------ //
3133
3134 // ------------------------------------------------------------------------------ //
3135 //
3136 // Indicates the offset in bytes from the start of one line to the next line.
3137 // This value should be equal to or larger than one line of image data and should be word-aligned
3138 //
3139 // ------------------------------------------------------------------------------ //
3140
3141 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_LINE_OFFSET_DEFAULT (0x4000)
3142 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_LINE_OFFSET_DATASIZE (32)
3143 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_LINE_OFFSET_OFFSET (0x354)
3144 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_LINE_OFFSET_MASK (0xffffffff)
3145
3146 // args: data (32-bit)
acamera_fpga_video_capture1_dma_writer_line_offset_write(uintptr_t base,uint32_t data)3147 static __inline void acamera_fpga_video_capture1_dma_writer_line_offset_write(uintptr_t base, uint32_t data) {
3148 system_hw_write_32(0x209354L, data);
3149 }
acamera_fpga_video_capture1_dma_writer_line_offset_read(uintptr_t base)3150 static __inline uint32_t acamera_fpga_video_capture1_dma_writer_line_offset_read(uintptr_t base) {
3151 return system_hw_read_32(0x209354L);
3152 }
3153 // ------------------------------------------------------------------------------ //
3154 // Register: frame write cancel
3155 // ------------------------------------------------------------------------------ //
3156
3157 // ------------------------------------------------------------------------------ //
3158 // 0 = normal operation, 1= cancel current/future frame write(s), any unstarted AXI bursts cancelled and fifo flushed
3159 // ------------------------------------------------------------------------------ //
3160
3161 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_FRAME_WRITE_CANCEL_DEFAULT (0)
3162 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_FRAME_WRITE_CANCEL_DATASIZE (1)
3163 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_FRAME_WRITE_CANCEL_OFFSET (0x358)
3164 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_FRAME_WRITE_CANCEL_MASK (0x1)
3165
3166 // args: data (1-bit)
acamera_fpga_video_capture1_dma_writer_frame_write_cancel_write(uintptr_t base,uint8_t data)3167 static __inline void acamera_fpga_video_capture1_dma_writer_frame_write_cancel_write(uintptr_t base, uint8_t data) {
3168 uint32_t curr = system_hw_read_32(0x209358L);
3169 system_hw_write_32(0x209358L, (((uint32_t) (data & 0x1)) << 0) | (curr & 0xfffffffe));
3170 }
acamera_fpga_video_capture1_dma_writer_frame_write_cancel_read(uintptr_t base)3171 static __inline uint8_t acamera_fpga_video_capture1_dma_writer_frame_write_cancel_read(uintptr_t base) {
3172 return (uint8_t)((system_hw_read_32(0x209358L) & 0x1) >> 0);
3173 }
3174 // ------------------------------------------------------------------------------ //
3175 // Register: axi_port_enable
3176 // ------------------------------------------------------------------------------ //
3177
3178 // ------------------------------------------------------------------------------ //
3179 // enables axi, active high, 1=enables axi write transfers, 0= reset axi domain( via reset synchroniser)
3180 // ------------------------------------------------------------------------------ //
3181
3182 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_AXI_PORT_ENABLE_DEFAULT (0)
3183 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_AXI_PORT_ENABLE_DATASIZE (1)
3184 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_AXI_PORT_ENABLE_OFFSET (0x358)
3185 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_AXI_PORT_ENABLE_MASK (0x2)
3186
3187 // args: data (1-bit)
acamera_fpga_video_capture1_dma_writer_axi_port_enable_write(uintptr_t base,uint8_t data)3188 static __inline void acamera_fpga_video_capture1_dma_writer_axi_port_enable_write(uintptr_t base, uint8_t data) {
3189 uint32_t curr = system_hw_read_32(0x209358L);
3190 system_hw_write_32(0x209358L, (((uint32_t) (data & 0x1)) << 1) | (curr & 0xfffffffd));
3191 }
acamera_fpga_video_capture1_dma_writer_axi_port_enable_read(uintptr_t base)3192 static __inline uint8_t acamera_fpga_video_capture1_dma_writer_axi_port_enable_read(uintptr_t base) {
3193 return (uint8_t)((system_hw_read_32(0x209358L) & 0x2) >> 1);
3194 }
3195 // ------------------------------------------------------------------------------ //
3196 // Register: wbank curr
3197 // ------------------------------------------------------------------------------ //
3198
3199 // ------------------------------------------------------------------------------ //
3200 // write bank currently active. valid values =0-4. updated at start of frame write
3201 // ------------------------------------------------------------------------------ //
3202
3203 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_WBANK_CURR_DEFAULT (0x0)
3204 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_WBANK_CURR_DATASIZE (3)
3205 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_WBANK_CURR_OFFSET (0x35c)
3206 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_WBANK_CURR_MASK (0x7)
3207
3208 // args: data (3-bit)
acamera_fpga_video_capture1_dma_writer_wbank_curr_read(uintptr_t base)3209 static __inline uint8_t acamera_fpga_video_capture1_dma_writer_wbank_curr_read(uintptr_t base) {
3210 return (uint8_t)((system_hw_read_32(0x20935cL) & 0x7) >> 0);
3211 }
3212 // ------------------------------------------------------------------------------ //
3213 // Register: wbank last
3214 // ------------------------------------------------------------------------------ //
3215
3216 // ------------------------------------------------------------------------------ //
3217 // write bank last active. valid values = 0-4. updated at start of frame write
3218 // ------------------------------------------------------------------------------ //
3219
3220 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_WBANK_LAST_DEFAULT (0x0)
3221 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_WBANK_LAST_DATASIZE (3)
3222 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_WBANK_LAST_OFFSET (0x35c)
3223 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_WBANK_LAST_MASK (0x38)
3224
3225 // args: data (3-bit)
acamera_fpga_video_capture1_dma_writer_wbank_last_read(uintptr_t base)3226 static __inline uint8_t acamera_fpga_video_capture1_dma_writer_wbank_last_read(uintptr_t base) {
3227 return (uint8_t)((system_hw_read_32(0x20935cL) & 0x38) >> 3);
3228 }
3229 // ------------------------------------------------------------------------------ //
3230 // Register: wbank active
3231 // ------------------------------------------------------------------------------ //
3232
3233 // ------------------------------------------------------------------------------ //
3234 // 1 = wbank_curr is being written to. Goes high at start of writes, low at last write transfer/completion on axi.
3235 // ------------------------------------------------------------------------------ //
3236
3237 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_WBANK_ACTIVE_DEFAULT (0x0)
3238 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_WBANK_ACTIVE_DATASIZE (1)
3239 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_WBANK_ACTIVE_OFFSET (0x360)
3240 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_WBANK_ACTIVE_MASK (0x1)
3241
3242 // args: data (1-bit)
acamera_fpga_video_capture1_dma_writer_wbank_active_read(uintptr_t base)3243 static __inline uint8_t acamera_fpga_video_capture1_dma_writer_wbank_active_read(uintptr_t base) {
3244 return (uint8_t)((system_hw_read_32(0x209360L) & 0x1) >> 0);
3245 }
3246 // ------------------------------------------------------------------------------ //
3247 // Register: wbank start
3248 // ------------------------------------------------------------------------------ //
3249
3250 // ------------------------------------------------------------------------------ //
3251 // 1 = High pulse at start of frame write to bank.
3252 // ------------------------------------------------------------------------------ //
3253
3254 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_WBANK_START_DEFAULT (0x0)
3255 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_WBANK_START_DATASIZE (1)
3256 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_WBANK_START_OFFSET (0x360)
3257 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_WBANK_START_MASK (0x2)
3258
3259 // args: data (1-bit)
acamera_fpga_video_capture1_dma_writer_wbank_start_read(uintptr_t base)3260 static __inline uint8_t acamera_fpga_video_capture1_dma_writer_wbank_start_read(uintptr_t base) {
3261 return (uint8_t)((system_hw_read_32(0x209360L) & 0x2) >> 1);
3262 }
3263 // ------------------------------------------------------------------------------ //
3264 // Register: wbank stop
3265 // ------------------------------------------------------------------------------ //
3266
3267 // ------------------------------------------------------------------------------ //
3268 // 1 = High pulse at end of frame write to bank.
3269 // ------------------------------------------------------------------------------ //
3270
3271 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_WBANK_STOP_DEFAULT (0x0)
3272 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_WBANK_STOP_DATASIZE (1)
3273 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_WBANK_STOP_OFFSET (0x360)
3274 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_WBANK_STOP_MASK (0x4)
3275
3276 // args: data (1-bit)
acamera_fpga_video_capture1_dma_writer_wbank_stop_read(uintptr_t base)3277 static __inline uint8_t acamera_fpga_video_capture1_dma_writer_wbank_stop_read(uintptr_t base) {
3278 return (uint8_t)((system_hw_read_32(0x209360L) & 0x4) >> 2);
3279 }
3280 // ------------------------------------------------------------------------------ //
3281 // Register: wbase curr
3282 // ------------------------------------------------------------------------------ //
3283
3284 // ------------------------------------------------------------------------------ //
3285 // currently active bank base addr - in bytes. updated at start of frame write
3286 // ------------------------------------------------------------------------------ //
3287
3288 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_WBASE_CURR_DEFAULT (0x0)
3289 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_WBASE_CURR_DATASIZE (32)
3290 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_WBASE_CURR_OFFSET (0x364)
3291 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_WBASE_CURR_MASK (0xffffffff)
3292
3293 // args: data (32-bit)
acamera_fpga_video_capture1_dma_writer_wbase_curr_read(uintptr_t base)3294 static __inline uint32_t acamera_fpga_video_capture1_dma_writer_wbase_curr_read(uintptr_t base) {
3295 return system_hw_read_32(0x209364L);
3296 }
3297 // ------------------------------------------------------------------------------ //
3298 // Register: wbase last
3299 // ------------------------------------------------------------------------------ //
3300
3301 // ------------------------------------------------------------------------------ //
3302 // last active bank base addr - in bytes. Updated at start of frame write
3303 // ------------------------------------------------------------------------------ //
3304
3305 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_WBASE_LAST_DEFAULT (0x0)
3306 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_WBASE_LAST_DATASIZE (32)
3307 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_WBASE_LAST_OFFSET (0x368)
3308 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_WBASE_LAST_MASK (0xffffffff)
3309
3310 // args: data (32-bit)
acamera_fpga_video_capture1_dma_writer_wbase_last_read(uintptr_t base)3311 static __inline uint32_t acamera_fpga_video_capture1_dma_writer_wbase_last_read(uintptr_t base) {
3312 return system_hw_read_32(0x209368L);
3313 }
3314 // ------------------------------------------------------------------------------ //
3315 // Register: frame icount
3316 // ------------------------------------------------------------------------------ //
3317
3318 // ------------------------------------------------------------------------------ //
3319 // count of incomming frames (starts) to vdma_writer on video input, non resetable, rolls over, updates at pixel 1 of new frame on video in
3320 // ------------------------------------------------------------------------------ //
3321
3322 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_FRAME_ICOUNT_DEFAULT (0x0)
3323 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_FRAME_ICOUNT_DATASIZE (16)
3324 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_FRAME_ICOUNT_OFFSET (0x36c)
3325 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_FRAME_ICOUNT_MASK (0xffff)
3326
3327 // args: data (16-bit)
acamera_fpga_video_capture1_dma_writer_frame_icount_read(uintptr_t base)3328 static __inline uint16_t acamera_fpga_video_capture1_dma_writer_frame_icount_read(uintptr_t base) {
3329 return (uint16_t)((system_hw_read_32(0x20936cL) & 0xffff) >> 0);
3330 }
3331 // ------------------------------------------------------------------------------ //
3332 // Register: frame wcount
3333 // ------------------------------------------------------------------------------ //
3334
3335 // ------------------------------------------------------------------------------ //
3336 // count of outgoing frame writes (starts) from vdma_writer sent to AXI output, non resetable, rolls over, updates at pixel 1 of new frame on video in
3337 // ------------------------------------------------------------------------------ //
3338
3339 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_FRAME_WCOUNT_DEFAULT (0x0)
3340 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_FRAME_WCOUNT_DATASIZE (16)
3341 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_FRAME_WCOUNT_OFFSET (0x370)
3342 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_FRAME_WCOUNT_MASK (0xffff)
3343
3344 // args: data (16-bit)
acamera_fpga_video_capture1_dma_writer_frame_wcount_read(uintptr_t base)3345 static __inline uint16_t acamera_fpga_video_capture1_dma_writer_frame_wcount_read(uintptr_t base) {
3346 return (uint16_t)((system_hw_read_32(0x209370L) & 0xffff) >> 0);
3347 }
3348 // ------------------------------------------------------------------------------ //
3349 // Register: clear alarms
3350 // ------------------------------------------------------------------------------ //
3351
3352 // ------------------------------------------------------------------------------ //
3353 // 0>1 transition(synchronous detection) causes local axi/video alarm clear
3354 // ------------------------------------------------------------------------------ //
3355
3356 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_CLEAR_ALARMS_DEFAULT (0)
3357 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_CLEAR_ALARMS_DATASIZE (1)
3358 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_CLEAR_ALARMS_OFFSET (0x374)
3359 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_CLEAR_ALARMS_MASK (0x1)
3360
3361 // args: data (1-bit)
acamera_fpga_video_capture1_dma_writer_clear_alarms_write(uintptr_t base,uint8_t data)3362 static __inline void acamera_fpga_video_capture1_dma_writer_clear_alarms_write(uintptr_t base, uint8_t data) {
3363 uint32_t curr = system_hw_read_32(0x209374L);
3364 system_hw_write_32(0x209374L, (((uint32_t) (data & 0x1)) << 0) | (curr & 0xfffffffe));
3365 }
acamera_fpga_video_capture1_dma_writer_clear_alarms_read(uintptr_t base)3366 static __inline uint8_t acamera_fpga_video_capture1_dma_writer_clear_alarms_read(uintptr_t base) {
3367 return (uint8_t)((system_hw_read_32(0x209374L) & 0x1) >> 0);
3368 }
3369 // ------------------------------------------------------------------------------ //
3370 // Register: max_burst_length_is_8
3371 // ------------------------------------------------------------------------------ //
3372
3373 // ------------------------------------------------------------------------------ //
3374 // 1= Reduce default AXI max_burst_length from 16 to 8, 0= Dont reduce
3375 // ------------------------------------------------------------------------------ //
3376
3377 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_MAX_BURST_LENGTH_IS_8_DEFAULT (0)
3378 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_MAX_BURST_LENGTH_IS_8_DATASIZE (1)
3379 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_MAX_BURST_LENGTH_IS_8_OFFSET (0x374)
3380 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_MAX_BURST_LENGTH_IS_8_MASK (0x2)
3381
3382 // args: data (1-bit)
acamera_fpga_video_capture1_dma_writer_max_burst_length_is_8_write(uintptr_t base,uint8_t data)3383 static __inline void acamera_fpga_video_capture1_dma_writer_max_burst_length_is_8_write(uintptr_t base, uint8_t data) {
3384 uint32_t curr = system_hw_read_32(0x209374L);
3385 system_hw_write_32(0x209374L, (((uint32_t) (data & 0x1)) << 1) | (curr & 0xfffffffd));
3386 }
acamera_fpga_video_capture1_dma_writer_max_burst_length_is_8_read(uintptr_t base)3387 static __inline uint8_t acamera_fpga_video_capture1_dma_writer_max_burst_length_is_8_read(uintptr_t base) {
3388 return (uint8_t)((system_hw_read_32(0x209374L) & 0x2) >> 1);
3389 }
3390 // ------------------------------------------------------------------------------ //
3391 // Register: max_burst_length_is_4
3392 // ------------------------------------------------------------------------------ //
3393
3394 // ------------------------------------------------------------------------------ //
3395 // 1= Reduce default AXI max_burst_length from 16 to 4, 0= Dont reduce( has priority overmax_burst_length_is_8!)
3396 // ------------------------------------------------------------------------------ //
3397
3398 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_MAX_BURST_LENGTH_IS_4_DEFAULT (0)
3399 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_MAX_BURST_LENGTH_IS_4_DATASIZE (1)
3400 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_MAX_BURST_LENGTH_IS_4_OFFSET (0x374)
3401 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_MAX_BURST_LENGTH_IS_4_MASK (0x4)
3402
3403 // args: data (1-bit)
acamera_fpga_video_capture1_dma_writer_max_burst_length_is_4_write(uintptr_t base,uint8_t data)3404 static __inline void acamera_fpga_video_capture1_dma_writer_max_burst_length_is_4_write(uintptr_t base, uint8_t data) {
3405 uint32_t curr = system_hw_read_32(0x209374L);
3406 system_hw_write_32(0x209374L, (((uint32_t) (data & 0x1)) << 2) | (curr & 0xfffffffb));
3407 }
acamera_fpga_video_capture1_dma_writer_max_burst_length_is_4_read(uintptr_t base)3408 static __inline uint8_t acamera_fpga_video_capture1_dma_writer_max_burst_length_is_4_read(uintptr_t base) {
3409 return (uint8_t)((system_hw_read_32(0x209374L) & 0x4) >> 2);
3410 }
3411 // ------------------------------------------------------------------------------ //
3412 // Register: write timeout disable
3413 // ------------------------------------------------------------------------------ //
3414
3415 // ------------------------------------------------------------------------------ //
3416 //
3417 // At end of frame an optional timeout is applied to wait for AXI writes to completed/accepted befotre caneclling and flushing.
3418 // 0= Timeout Enabled, timeout count can decrement.
3419 // 1 = Disable timeout, timeout count can't decrement.
3420 //
3421 // ------------------------------------------------------------------------------ //
3422
3423 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_WRITE_TIMEOUT_DISABLE_DEFAULT (0)
3424 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_WRITE_TIMEOUT_DISABLE_DATASIZE (1)
3425 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_WRITE_TIMEOUT_DISABLE_OFFSET (0x374)
3426 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_WRITE_TIMEOUT_DISABLE_MASK (0x8)
3427
3428 // args: data (1-bit)
acamera_fpga_video_capture1_dma_writer_write_timeout_disable_write(uintptr_t base,uint8_t data)3429 static __inline void acamera_fpga_video_capture1_dma_writer_write_timeout_disable_write(uintptr_t base, uint8_t data) {
3430 uint32_t curr = system_hw_read_32(0x209374L);
3431 system_hw_write_32(0x209374L, (((uint32_t) (data & 0x1)) << 3) | (curr & 0xfffffff7));
3432 }
acamera_fpga_video_capture1_dma_writer_write_timeout_disable_read(uintptr_t base)3433 static __inline uint8_t acamera_fpga_video_capture1_dma_writer_write_timeout_disable_read(uintptr_t base) {
3434 return (uint8_t)((system_hw_read_32(0x209374L) & 0x8) >> 3);
3435 }
3436 // ------------------------------------------------------------------------------ //
3437 // Register: awmaxwait_limit
3438 // ------------------------------------------------------------------------------ //
3439
3440 // ------------------------------------------------------------------------------ //
3441 // awvalid maxwait limit(cycles) to raise axi_fail_awmaxwait alarm . zero disables alarm raise.
3442 // ------------------------------------------------------------------------------ //
3443
3444 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_AWMAXWAIT_LIMIT_DEFAULT (0x00)
3445 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_AWMAXWAIT_LIMIT_DATASIZE (8)
3446 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_AWMAXWAIT_LIMIT_OFFSET (0x378)
3447 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_AWMAXWAIT_LIMIT_MASK (0xff)
3448
3449 // args: data (8-bit)
acamera_fpga_video_capture1_dma_writer_awmaxwait_limit_write(uintptr_t base,uint8_t data)3450 static __inline void acamera_fpga_video_capture1_dma_writer_awmaxwait_limit_write(uintptr_t base, uint8_t data) {
3451 uint32_t curr = system_hw_read_32(0x209378L);
3452 system_hw_write_32(0x209378L, (((uint32_t) (data & 0xff)) << 0) | (curr & 0xffffff00));
3453 }
acamera_fpga_video_capture1_dma_writer_awmaxwait_limit_read(uintptr_t base)3454 static __inline uint8_t acamera_fpga_video_capture1_dma_writer_awmaxwait_limit_read(uintptr_t base) {
3455 return (uint8_t)((system_hw_read_32(0x209378L) & 0xff) >> 0);
3456 }
3457 // ------------------------------------------------------------------------------ //
3458 // Register: wmaxwait_limit
3459 // ------------------------------------------------------------------------------ //
3460
3461 // ------------------------------------------------------------------------------ //
3462 // wvalid maxwait limit(cycles) to raise axi_fail_wmaxwait alarm . zero disables alarm raise
3463 // ------------------------------------------------------------------------------ //
3464
3465 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_WMAXWAIT_LIMIT_DEFAULT (0x00)
3466 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_WMAXWAIT_LIMIT_DATASIZE (8)
3467 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_WMAXWAIT_LIMIT_OFFSET (0x37c)
3468 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_WMAXWAIT_LIMIT_MASK (0xff)
3469
3470 // args: data (8-bit)
acamera_fpga_video_capture1_dma_writer_wmaxwait_limit_write(uintptr_t base,uint8_t data)3471 static __inline void acamera_fpga_video_capture1_dma_writer_wmaxwait_limit_write(uintptr_t base, uint8_t data) {
3472 uint32_t curr = system_hw_read_32(0x20937cL);
3473 system_hw_write_32(0x20937cL, (((uint32_t) (data & 0xff)) << 0) | (curr & 0xffffff00));
3474 }
acamera_fpga_video_capture1_dma_writer_wmaxwait_limit_read(uintptr_t base)3475 static __inline uint8_t acamera_fpga_video_capture1_dma_writer_wmaxwait_limit_read(uintptr_t base) {
3476 return (uint8_t)((system_hw_read_32(0x20937cL) & 0xff) >> 0);
3477 }
3478 // ------------------------------------------------------------------------------ //
3479 // Register: wxact_ostand_limit
3480 // ------------------------------------------------------------------------------ //
3481
3482 // ------------------------------------------------------------------------------ //
3483 // number oustsanding write transactions(bursts)(responses..1 per burst) limit to raise axi_fail_wxact_ostand. zero disables alarm raise
3484 // ------------------------------------------------------------------------------ //
3485
3486 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_WXACT_OSTAND_LIMIT_DEFAULT (0x00)
3487 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_WXACT_OSTAND_LIMIT_DATASIZE (8)
3488 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_WXACT_OSTAND_LIMIT_OFFSET (0x380)
3489 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_WXACT_OSTAND_LIMIT_MASK (0xff)
3490
3491 // args: data (8-bit)
acamera_fpga_video_capture1_dma_writer_wxact_ostand_limit_write(uintptr_t base,uint8_t data)3492 static __inline void acamera_fpga_video_capture1_dma_writer_wxact_ostand_limit_write(uintptr_t base, uint8_t data) {
3493 uint32_t curr = system_hw_read_32(0x209380L);
3494 system_hw_write_32(0x209380L, (((uint32_t) (data & 0xff)) << 0) | (curr & 0xffffff00));
3495 }
acamera_fpga_video_capture1_dma_writer_wxact_ostand_limit_read(uintptr_t base)3496 static __inline uint8_t acamera_fpga_video_capture1_dma_writer_wxact_ostand_limit_read(uintptr_t base) {
3497 return (uint8_t)((system_hw_read_32(0x209380L) & 0xff) >> 0);
3498 }
3499 // ------------------------------------------------------------------------------ //
3500 // Register: axi_fail_bresp
3501 // ------------------------------------------------------------------------------ //
3502
3503 // ------------------------------------------------------------------------------ //
3504 // clearable alarm, high to indicate bad bresp captured
3505 // ------------------------------------------------------------------------------ //
3506
3507 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_AXI_FAIL_BRESP_DEFAULT (0x0)
3508 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_AXI_FAIL_BRESP_DATASIZE (1)
3509 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_AXI_FAIL_BRESP_OFFSET (0x384)
3510 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_AXI_FAIL_BRESP_MASK (0x1)
3511
3512 // args: data (1-bit)
acamera_fpga_video_capture1_dma_writer_axi_fail_bresp_read(uintptr_t base)3513 static __inline uint8_t acamera_fpga_video_capture1_dma_writer_axi_fail_bresp_read(uintptr_t base) {
3514 return (uint8_t)((system_hw_read_32(0x209384L) & 0x1) >> 0);
3515 }
3516 // ------------------------------------------------------------------------------ //
3517 // Register: axi_fail_awmaxwait
3518 // ------------------------------------------------------------------------------ //
3519
3520 // ------------------------------------------------------------------------------ //
3521 // clearable alarm, high when awmaxwait_limit reached
3522 // ------------------------------------------------------------------------------ //
3523
3524 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_AXI_FAIL_AWMAXWAIT_DEFAULT (0x0)
3525 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_AXI_FAIL_AWMAXWAIT_DATASIZE (1)
3526 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_AXI_FAIL_AWMAXWAIT_OFFSET (0x384)
3527 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_AXI_FAIL_AWMAXWAIT_MASK (0x2)
3528
3529 // args: data (1-bit)
acamera_fpga_video_capture1_dma_writer_axi_fail_awmaxwait_read(uintptr_t base)3530 static __inline uint8_t acamera_fpga_video_capture1_dma_writer_axi_fail_awmaxwait_read(uintptr_t base) {
3531 return (uint8_t)((system_hw_read_32(0x209384L) & 0x2) >> 1);
3532 }
3533 // ------------------------------------------------------------------------------ //
3534 // Register: axi_fail_wmaxwait
3535 // ------------------------------------------------------------------------------ //
3536
3537 // ------------------------------------------------------------------------------ //
3538 // clearable alarm, high when wmaxwait_limit reached
3539 // ------------------------------------------------------------------------------ //
3540
3541 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_AXI_FAIL_WMAXWAIT_DEFAULT (0x0)
3542 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_AXI_FAIL_WMAXWAIT_DATASIZE (1)
3543 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_AXI_FAIL_WMAXWAIT_OFFSET (0x384)
3544 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_AXI_FAIL_WMAXWAIT_MASK (0x4)
3545
3546 // args: data (1-bit)
acamera_fpga_video_capture1_dma_writer_axi_fail_wmaxwait_read(uintptr_t base)3547 static __inline uint8_t acamera_fpga_video_capture1_dma_writer_axi_fail_wmaxwait_read(uintptr_t base) {
3548 return (uint8_t)((system_hw_read_32(0x209384L) & 0x4) >> 2);
3549 }
3550 // ------------------------------------------------------------------------------ //
3551 // Register: axi_fail_wxact_ostand
3552 // ------------------------------------------------------------------------------ //
3553
3554 // ------------------------------------------------------------------------------ //
3555 // clearable alarm, high when wxact_ostand_limit reached
3556 // ------------------------------------------------------------------------------ //
3557
3558 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_AXI_FAIL_WXACT_OSTAND_DEFAULT (0x0)
3559 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_AXI_FAIL_WXACT_OSTAND_DATASIZE (1)
3560 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_AXI_FAIL_WXACT_OSTAND_OFFSET (0x384)
3561 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_AXI_FAIL_WXACT_OSTAND_MASK (0x8)
3562
3563 // args: data (1-bit)
acamera_fpga_video_capture1_dma_writer_axi_fail_wxact_ostand_read(uintptr_t base)3564 static __inline uint8_t acamera_fpga_video_capture1_dma_writer_axi_fail_wxact_ostand_read(uintptr_t base) {
3565 return (uint8_t)((system_hw_read_32(0x209384L) & 0x8) >> 3);
3566 }
3567 // ------------------------------------------------------------------------------ //
3568 // Register: vi_fail_active_width
3569 // ------------------------------------------------------------------------------ //
3570
3571 // ------------------------------------------------------------------------------ //
3572 // clearable alarm, high to indicate mismatched active_width detected
3573 // ------------------------------------------------------------------------------ //
3574
3575 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_VI_FAIL_ACTIVE_WIDTH_DEFAULT (0x0)
3576 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_VI_FAIL_ACTIVE_WIDTH_DATASIZE (1)
3577 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_VI_FAIL_ACTIVE_WIDTH_OFFSET (0x384)
3578 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_VI_FAIL_ACTIVE_WIDTH_MASK (0x10)
3579
3580 // args: data (1-bit)
acamera_fpga_video_capture1_dma_writer_vi_fail_active_width_read(uintptr_t base)3581 static __inline uint8_t acamera_fpga_video_capture1_dma_writer_vi_fail_active_width_read(uintptr_t base) {
3582 return (uint8_t)((system_hw_read_32(0x209384L) & 0x10) >> 4);
3583 }
3584 // ------------------------------------------------------------------------------ //
3585 // Register: vi_fail_active_height
3586 // ------------------------------------------------------------------------------ //
3587
3588 // ------------------------------------------------------------------------------ //
3589 // clearable alarm, high to indicate mismatched active_height detected ( also raised on missing field!)
3590 // ------------------------------------------------------------------------------ //
3591
3592 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_VI_FAIL_ACTIVE_HEIGHT_DEFAULT (0x0)
3593 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_VI_FAIL_ACTIVE_HEIGHT_DATASIZE (1)
3594 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_VI_FAIL_ACTIVE_HEIGHT_OFFSET (0x384)
3595 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_VI_FAIL_ACTIVE_HEIGHT_MASK (0x20)
3596
3597 // args: data (1-bit)
acamera_fpga_video_capture1_dma_writer_vi_fail_active_height_read(uintptr_t base)3598 static __inline uint8_t acamera_fpga_video_capture1_dma_writer_vi_fail_active_height_read(uintptr_t base) {
3599 return (uint8_t)((system_hw_read_32(0x209384L) & 0x20) >> 5);
3600 }
3601 // ------------------------------------------------------------------------------ //
3602 // Register: vi_fail_interline_blanks
3603 // ------------------------------------------------------------------------------ //
3604
3605 // ------------------------------------------------------------------------------ //
3606 // clearable alarm, high to indicate interline blanking below min
3607 // ------------------------------------------------------------------------------ //
3608
3609 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_VI_FAIL_INTERLINE_BLANKS_DEFAULT (0x0)
3610 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_VI_FAIL_INTERLINE_BLANKS_DATASIZE (1)
3611 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_VI_FAIL_INTERLINE_BLANKS_OFFSET (0x384)
3612 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_VI_FAIL_INTERLINE_BLANKS_MASK (0x40)
3613
3614 // args: data (1-bit)
acamera_fpga_video_capture1_dma_writer_vi_fail_interline_blanks_read(uintptr_t base)3615 static __inline uint8_t acamera_fpga_video_capture1_dma_writer_vi_fail_interline_blanks_read(uintptr_t base) {
3616 return (uint8_t)((system_hw_read_32(0x209384L) & 0x40) >> 6);
3617 }
3618 // ------------------------------------------------------------------------------ //
3619 // Register: vi_fail_interframe_blanks
3620 // ------------------------------------------------------------------------------ //
3621
3622 // ------------------------------------------------------------------------------ //
3623 // clearable alarm, high to indicate interframe blanking below min
3624 // ------------------------------------------------------------------------------ //
3625
3626 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_VI_FAIL_INTERFRAME_BLANKS_DEFAULT (0x0)
3627 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_VI_FAIL_INTERFRAME_BLANKS_DATASIZE (1)
3628 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_VI_FAIL_INTERFRAME_BLANKS_OFFSET (0x384)
3629 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_VI_FAIL_INTERFRAME_BLANKS_MASK (0x80)
3630
3631 // args: data (1-bit)
acamera_fpga_video_capture1_dma_writer_vi_fail_interframe_blanks_read(uintptr_t base)3632 static __inline uint8_t acamera_fpga_video_capture1_dma_writer_vi_fail_interframe_blanks_read(uintptr_t base) {
3633 return (uint8_t)((system_hw_read_32(0x209384L) & 0x80) >> 7);
3634 }
3635 // ------------------------------------------------------------------------------ //
3636 // Register: video_alarm
3637 // ------------------------------------------------------------------------------ //
3638
3639 // ------------------------------------------------------------------------------ //
3640 // active high, problem found on video port(s) ( active width/height or interline/frame blanks failure)
3641 // ------------------------------------------------------------------------------ //
3642
3643 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_VIDEO_ALARM_DEFAULT (0x0)
3644 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_VIDEO_ALARM_DATASIZE (1)
3645 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_VIDEO_ALARM_OFFSET (0x388)
3646 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_VIDEO_ALARM_MASK (0x1)
3647
3648 // args: data (1-bit)
acamera_fpga_video_capture1_dma_writer_video_alarm_read(uintptr_t base)3649 static __inline uint8_t acamera_fpga_video_capture1_dma_writer_video_alarm_read(uintptr_t base) {
3650 return (uint8_t)((system_hw_read_32(0x209388L) & 0x1) >> 0);
3651 }
3652 // ------------------------------------------------------------------------------ //
3653 // Register: axi_alarm
3654 // ------------------------------------------------------------------------------ //
3655
3656 // ------------------------------------------------------------------------------ //
3657 // active high, problem found on axi port(s)( bresp or awmaxwait or wmaxwait or wxact_ostand failure )
3658 // ------------------------------------------------------------------------------ //
3659
3660 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_AXI_ALARM_DEFAULT (0x0)
3661 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_AXI_ALARM_DATASIZE (1)
3662 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_AXI_ALARM_OFFSET (0x388)
3663 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_AXI_ALARM_MASK (0x2)
3664
3665 // args: data (1-bit)
acamera_fpga_video_capture1_dma_writer_axi_alarm_read(uintptr_t base)3666 static __inline uint8_t acamera_fpga_video_capture1_dma_writer_axi_alarm_read(uintptr_t base) {
3667 return (uint8_t)((system_hw_read_32(0x209388L) & 0x2) >> 1);
3668 }
3669 // ------------------------------------------------------------------------------ //
3670 // Register: blk_config
3671 // ------------------------------------------------------------------------------ //
3672
3673 // ------------------------------------------------------------------------------ //
3674 // block configuration (reserved)
3675 // ------------------------------------------------------------------------------ //
3676
3677 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_BLK_CONFIG_DEFAULT (0x0000)
3678 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_BLK_CONFIG_DATASIZE (32)
3679 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_BLK_CONFIG_OFFSET (0x38c)
3680 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_BLK_CONFIG_MASK (0xffffffff)
3681
3682 // args: data (32-bit)
acamera_fpga_video_capture1_dma_writer_blk_config_write(uintptr_t base,uint32_t data)3683 static __inline void acamera_fpga_video_capture1_dma_writer_blk_config_write(uintptr_t base, uint32_t data) {
3684 system_hw_write_32(0x20938cL, data);
3685 }
acamera_fpga_video_capture1_dma_writer_blk_config_read(uintptr_t base)3686 static __inline uint32_t acamera_fpga_video_capture1_dma_writer_blk_config_read(uintptr_t base) {
3687 return system_hw_read_32(0x20938cL);
3688 }
3689 // ------------------------------------------------------------------------------ //
3690 // Register: blk_status
3691 // ------------------------------------------------------------------------------ //
3692
3693 // ------------------------------------------------------------------------------ //
3694 // block status output (reserved)
3695 // ------------------------------------------------------------------------------ //
3696
3697 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_BLK_STATUS_DEFAULT (0x0)
3698 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_BLK_STATUS_DATASIZE (32)
3699 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_BLK_STATUS_OFFSET (0x390)
3700 #define ACAMERA_FPGA_VIDEO_CAPTURE1_DMA_WRITER_BLK_STATUS_MASK (0xffffffff)
3701
3702 // args: data (32-bit)
acamera_fpga_video_capture1_dma_writer_blk_status_read(uintptr_t base)3703 static __inline uint32_t acamera_fpga_video_capture1_dma_writer_blk_status_read(uintptr_t base) {
3704 return system_hw_read_32(0x209390L);
3705 }
3706 // ------------------------------------------------------------------------------ //
3707 // Group: Sony IMX290 Decoder
3708 // ------------------------------------------------------------------------------ //
3709
3710 // ------------------------------------------------------------------------------ //
3711 // Settings related to sensor decoder and its peripherals
3712 // ------------------------------------------------------------------------------ //
3713
3714 // ------------------------------------------------------------------------------ //
3715 // Register: FIFO Watermark
3716 // ------------------------------------------------------------------------------ //
3717
3718 // ------------------------------------------------------------------------------ //
3719 // FIFO Data count at which decoder starts streaming data out
3720 // ------------------------------------------------------------------------------ //
3721
3722 #define ACAMERA_FPGA_SENSOR_FIFO_WATERMARK_DEFAULT (0)
3723 #define ACAMERA_FPGA_SENSOR_FIFO_WATERMARK_DATASIZE (16)
3724 #define ACAMERA_FPGA_SENSOR_FIFO_WATERMARK_OFFSET (0x394)
3725 #define ACAMERA_FPGA_SENSOR_FIFO_WATERMARK_MASK (0xffff)
3726
3727 // args: data (16-bit)
acamera_fpga_sensor_fifo_watermark_write(uintptr_t base,uint16_t data)3728 static __inline void acamera_fpga_sensor_fifo_watermark_write(uintptr_t base, uint16_t data) {
3729 uint32_t curr = system_hw_read_32(0x209394L);
3730 system_hw_write_32(0x209394L, (((uint32_t) (data & 0xffff)) << 0) | (curr & 0xffff0000));
3731 }
acamera_fpga_sensor_fifo_watermark_read(uintptr_t base)3732 static __inline uint16_t acamera_fpga_sensor_fifo_watermark_read(uintptr_t base) {
3733 return (uint16_t)((system_hw_read_32(0x209394L) & 0xffff) >> 0);
3734 }
3735 // ------------------------------------------------------------------------------ //
3736 // Register: Enable 4 Channel
3737 // ------------------------------------------------------------------------------ //
3738
3739 // ------------------------------------------------------------------------------ //
3740 // 1=4 Channel Mode, 0=8 Channel Mode
3741 // ------------------------------------------------------------------------------ //
3742
3743 #define ACAMERA_FPGA_SENSOR_ENABLE_4_CHANNEL_DEFAULT (0)
3744 #define ACAMERA_FPGA_SENSOR_ENABLE_4_CHANNEL_DATASIZE (1)
3745 #define ACAMERA_FPGA_SENSOR_ENABLE_4_CHANNEL_OFFSET (0x398)
3746 #define ACAMERA_FPGA_SENSOR_ENABLE_4_CHANNEL_MASK (0x1)
3747
3748 // args: data (1-bit)
acamera_fpga_sensor_enable_4_channel_write(uintptr_t base,uint8_t data)3749 static __inline void acamera_fpga_sensor_enable_4_channel_write(uintptr_t base, uint8_t data) {
3750 uint32_t curr = system_hw_read_32(0x209398L);
3751 system_hw_write_32(0x209398L, (((uint32_t) (data & 0x1)) << 0) | (curr & 0xfffffffe));
3752 }
acamera_fpga_sensor_enable_4_channel_read(uintptr_t base)3753 static __inline uint8_t acamera_fpga_sensor_enable_4_channel_read(uintptr_t base) {
3754 return (uint8_t)((system_hw_read_32(0x209398L) & 0x1) >> 0);
3755 }
3756 // ------------------------------------------------------------------------------ //
3757 // Register: Enable 10 Bit
3758 // ------------------------------------------------------------------------------ //
3759
3760 // ------------------------------------------------------------------------------ //
3761 // 1=10-bit Mode, 0=12-bit Mode
3762 // ------------------------------------------------------------------------------ //
3763
3764 #define ACAMERA_FPGA_SENSOR_ENABLE_10_BIT_DEFAULT (0)
3765 #define ACAMERA_FPGA_SENSOR_ENABLE_10_BIT_DATASIZE (1)
3766 #define ACAMERA_FPGA_SENSOR_ENABLE_10_BIT_OFFSET (0x398)
3767 #define ACAMERA_FPGA_SENSOR_ENABLE_10_BIT_MASK (0x2)
3768
3769 // args: data (1-bit)
acamera_fpga_sensor_enable_10_bit_write(uintptr_t base,uint8_t data)3770 static __inline void acamera_fpga_sensor_enable_10_bit_write(uintptr_t base, uint8_t data) {
3771 uint32_t curr = system_hw_read_32(0x209398L);
3772 system_hw_write_32(0x209398L, (((uint32_t) (data & 0x1)) << 1) | (curr & 0xfffffffd));
3773 }
acamera_fpga_sensor_enable_10_bit_read(uintptr_t base)3774 static __inline uint8_t acamera_fpga_sensor_enable_10_bit_read(uintptr_t base) {
3775 return (uint8_t)((system_hw_read_32(0x209398L) & 0x2) >> 1);
3776 }
3777 // ------------------------------------------------------------------------------ //
3778 // Register: Sensor Reset_n
3779 // ------------------------------------------------------------------------------ //
3780
3781 // ------------------------------------------------------------------------------ //
3782 // 1=XCLR (System Clear) pin of IMX290
3783 // ------------------------------------------------------------------------------ //
3784
3785 #define ACAMERA_FPGA_SENSOR_SENSOR_RESET_N_DEFAULT (1)
3786 #define ACAMERA_FPGA_SENSOR_SENSOR_RESET_N_DATASIZE (1)
3787 #define ACAMERA_FPGA_SENSOR_SENSOR_RESET_N_OFFSET (0x398)
3788 #define ACAMERA_FPGA_SENSOR_SENSOR_RESET_N_MASK (0x4)
3789
3790 // args: data (1-bit)
acamera_fpga_sensor_sensor_reset_n_write(uintptr_t base,uint8_t data)3791 static __inline void acamera_fpga_sensor_sensor_reset_n_write(uintptr_t base, uint8_t data) {
3792 uint32_t curr = system_hw_read_32(0x209398L);
3793 system_hw_write_32(0x209398L, (((uint32_t) (data & 0x1)) << 2) | (curr & 0xfffffffb));
3794 }
acamera_fpga_sensor_sensor_reset_n_read(uintptr_t base)3795 static __inline uint8_t acamera_fpga_sensor_sensor_reset_n_read(uintptr_t base) {
3796 return (uint8_t)((system_hw_read_32(0x209398L) & 0x4) >> 2);
3797 }
3798 // ------------------------------------------------------------------------------ //
3799 // Register: Start Auto-Calibration FSM - 0123
3800 // ------------------------------------------------------------------------------ //
3801
3802 // ------------------------------------------------------------------------------ //
3803 // Start auto calibration state machine by setting this flag after initialisation of the sensor is complete
3804 // ------------------------------------------------------------------------------ //
3805
3806 #define ACAMERA_FPGA_SENSOR_START_AUTO_CALIBRATION_FSM___0123_DEFAULT (0)
3807 #define ACAMERA_FPGA_SENSOR_START_AUTO_CALIBRATION_FSM___0123_DATASIZE (1)
3808 #define ACAMERA_FPGA_SENSOR_START_AUTO_CALIBRATION_FSM___0123_OFFSET (0x398)
3809 #define ACAMERA_FPGA_SENSOR_START_AUTO_CALIBRATION_FSM___0123_MASK (0x8)
3810
3811 // args: data (1-bit)
acamera_fpga_sensor_start_auto_calibration_fsm___0123_write(uintptr_t base,uint8_t data)3812 static __inline void acamera_fpga_sensor_start_auto_calibration_fsm___0123_write(uintptr_t base, uint8_t data) {
3813 uint32_t curr = system_hw_read_32(0x209398L);
3814 system_hw_write_32(0x209398L, (((uint32_t) (data & 0x1)) << 3) | (curr & 0xfffffff7));
3815 }
acamera_fpga_sensor_start_auto_calibration_fsm___0123_read(uintptr_t base)3816 static __inline uint8_t acamera_fpga_sensor_start_auto_calibration_fsm___0123_read(uintptr_t base) {
3817 return (uint8_t)((system_hw_read_32(0x209398L) & 0x8) >> 3);
3818 }
3819 // ------------------------------------------------------------------------------ //
3820 // Register: Auto Calibration Done - 0123
3821 // ------------------------------------------------------------------------------ //
3822
3823 // ------------------------------------------------------------------------------ //
3824 // Implies that auto calibration is successful
3825 // ------------------------------------------------------------------------------ //
3826
3827 #define ACAMERA_FPGA_SENSOR_AUTO_CALIBRATION_DONE___0123_DEFAULT (0)
3828 #define ACAMERA_FPGA_SENSOR_AUTO_CALIBRATION_DONE___0123_DATASIZE (1)
3829 #define ACAMERA_FPGA_SENSOR_AUTO_CALIBRATION_DONE___0123_OFFSET (0x398)
3830 #define ACAMERA_FPGA_SENSOR_AUTO_CALIBRATION_DONE___0123_MASK (0x10)
3831
3832 // args: data (1-bit)
acamera_fpga_sensor_auto_calibration_done___0123_read(uintptr_t base)3833 static __inline uint8_t acamera_fpga_sensor_auto_calibration_done___0123_read(uintptr_t base) {
3834 return (uint8_t)((system_hw_read_32(0x209398L) & 0x10) >> 4);
3835 }
3836 // ------------------------------------------------------------------------------ //
3837 // Register: Start Auto-Calibration FSM - 4567
3838 // ------------------------------------------------------------------------------ //
3839
3840 // ------------------------------------------------------------------------------ //
3841 // Start auto calibration state machine by setting this flag after initialisation of the sensor is complete
3842 // ------------------------------------------------------------------------------ //
3843
3844 #define ACAMERA_FPGA_SENSOR_START_AUTO_CALIBRATION_FSM___4567_DEFAULT (0)
3845 #define ACAMERA_FPGA_SENSOR_START_AUTO_CALIBRATION_FSM___4567_DATASIZE (1)
3846 #define ACAMERA_FPGA_SENSOR_START_AUTO_CALIBRATION_FSM___4567_OFFSET (0x398)
3847 #define ACAMERA_FPGA_SENSOR_START_AUTO_CALIBRATION_FSM___4567_MASK (0x20)
3848
3849 // args: data (1-bit)
acamera_fpga_sensor_start_auto_calibration_fsm___4567_write(uintptr_t base,uint8_t data)3850 static __inline void acamera_fpga_sensor_start_auto_calibration_fsm___4567_write(uintptr_t base, uint8_t data) {
3851 uint32_t curr = system_hw_read_32(0x209398L);
3852 system_hw_write_32(0x209398L, (((uint32_t) (data & 0x1)) << 5) | (curr & 0xffffffdf));
3853 }
acamera_fpga_sensor_start_auto_calibration_fsm___4567_read(uintptr_t base)3854 static __inline uint8_t acamera_fpga_sensor_start_auto_calibration_fsm___4567_read(uintptr_t base) {
3855 return (uint8_t)((system_hw_read_32(0x209398L) & 0x20) >> 5);
3856 }
3857 // ------------------------------------------------------------------------------ //
3858 // Register: Auto Calibration Done - 4567
3859 // ------------------------------------------------------------------------------ //
3860
3861 // ------------------------------------------------------------------------------ //
3862 // Implies that auto calibration is successful
3863 // ------------------------------------------------------------------------------ //
3864
3865 #define ACAMERA_FPGA_SENSOR_AUTO_CALIBRATION_DONE___4567_DEFAULT (0)
3866 #define ACAMERA_FPGA_SENSOR_AUTO_CALIBRATION_DONE___4567_DATASIZE (1)
3867 #define ACAMERA_FPGA_SENSOR_AUTO_CALIBRATION_DONE___4567_OFFSET (0x398)
3868 #define ACAMERA_FPGA_SENSOR_AUTO_CALIBRATION_DONE___4567_MASK (0x40)
3869
3870 // args: data (1-bit)
acamera_fpga_sensor_auto_calibration_done___4567_read(uintptr_t base)3871 static __inline uint8_t acamera_fpga_sensor_auto_calibration_done___4567_read(uintptr_t base) {
3872 return (uint8_t)((system_hw_read_32(0x209398L) & 0x40) >> 6);
3873 }
3874 // ------------------------------------------------------------------------------ //
3875 // Register: calib_maxwait0123
3876 // ------------------------------------------------------------------------------ //
3877
3878 #define ACAMERA_FPGA_SENSOR_CALIB_MAXWAIT0123_DEFAULT (0x000FFFFF)
3879 #define ACAMERA_FPGA_SENSOR_CALIB_MAXWAIT0123_DATASIZE (32)
3880 #define ACAMERA_FPGA_SENSOR_CALIB_MAXWAIT0123_OFFSET (0x39c)
3881 #define ACAMERA_FPGA_SENSOR_CALIB_MAXWAIT0123_MASK (0xffffffff)
3882
3883 // args: data (32-bit)
acamera_fpga_sensor_calib_maxwait0123_write(uintptr_t base,uint32_t data)3884 static __inline void acamera_fpga_sensor_calib_maxwait0123_write(uintptr_t base, uint32_t data) {
3885 system_hw_write_32(0x20939cL, data);
3886 }
acamera_fpga_sensor_calib_maxwait0123_read(uintptr_t base)3887 static __inline uint32_t acamera_fpga_sensor_calib_maxwait0123_read(uintptr_t base) {
3888 return system_hw_read_32(0x20939cL);
3889 }
3890 // ------------------------------------------------------------------------------ //
3891 // Register: calib_maxwait4567
3892 // ------------------------------------------------------------------------------ //
3893
3894 #define ACAMERA_FPGA_SENSOR_CALIB_MAXWAIT4567_DEFAULT (0x000FFFFF)
3895 #define ACAMERA_FPGA_SENSOR_CALIB_MAXWAIT4567_DATASIZE (32)
3896 #define ACAMERA_FPGA_SENSOR_CALIB_MAXWAIT4567_OFFSET (0x3a0)
3897 #define ACAMERA_FPGA_SENSOR_CALIB_MAXWAIT4567_MASK (0xffffffff)
3898
3899 // args: data (32-bit)
acamera_fpga_sensor_calib_maxwait4567_write(uintptr_t base,uint32_t data)3900 static __inline void acamera_fpga_sensor_calib_maxwait4567_write(uintptr_t base, uint32_t data) {
3901 system_hw_write_32(0x2093a0L, data);
3902 }
acamera_fpga_sensor_calib_maxwait4567_read(uintptr_t base)3903 static __inline uint32_t acamera_fpga_sensor_calib_maxwait4567_read(uintptr_t base) {
3904 return system_hw_read_32(0x2093a0L);
3905 }
3906 // ------------------------------------------------------------------------------ //
3907 // Group: FPGA Input Port
3908 // ------------------------------------------------------------------------------ //
3909
3910 // ------------------------------------------------------------------------------ //
3911 // Controls video input port
3912 // ------------------------------------------------------------------------------ //
3913
3914 // ------------------------------------------------------------------------------ //
3915 // Register: preset
3916 // ------------------------------------------------------------------------------ //
3917
3918 // ------------------------------------------------------------------------------ //
3919 // 0-14 frequently used presets, 15 - full control
3920 // ------------------------------------------------------------------------------ //
3921
3922 #define ACAMERA_FPGA_FPGA_INPUT_PORT_PRESET_DEFAULT (2)
3923 #define ACAMERA_FPGA_FPGA_INPUT_PORT_PRESET_DATASIZE (4)
3924 #define ACAMERA_FPGA_FPGA_INPUT_PORT_PRESET_OFFSET (0x3a4)
3925 #define ACAMERA_FPGA_FPGA_INPUT_PORT_PRESET_MASK (0xf)
3926
3927 // args: data (4-bit)
acamera_fpga_fpga_input_port_preset_write(uintptr_t base,uint8_t data)3928 static __inline void acamera_fpga_fpga_input_port_preset_write(uintptr_t base, uint8_t data) {
3929 uint32_t curr = system_hw_read_32(0x2093a4L);
3930 system_hw_write_32(0x2093a4L, (((uint32_t) (data & 0xf)) << 0) | (curr & 0xfffffff0));
3931 }
acamera_fpga_fpga_input_port_preset_read(uintptr_t base)3932 static __inline uint8_t acamera_fpga_fpga_input_port_preset_read(uintptr_t base) {
3933 return (uint8_t)((system_hw_read_32(0x2093a4L) & 0xf) >> 0);
3934 }
3935 // ------------------------------------------------------------------------------ //
3936 // Register: vs_use field
3937 // ------------------------------------------------------------------------------ //
3938
3939 #define ACAMERA_FPGA_FPGA_INPUT_PORT_VS_USE_FIELD_DEFAULT (0)
3940 #define ACAMERA_FPGA_FPGA_INPUT_PORT_VS_USE_FIELD_DATASIZE (1)
3941 #define ACAMERA_FPGA_FPGA_INPUT_PORT_VS_USE_FIELD_OFFSET (0x3a4)
3942 #define ACAMERA_FPGA_FPGA_INPUT_PORT_VS_USE_FIELD_MASK (0x100)
3943 #define ACAMERA_FPGA_FPGA_INPUT_PORT_VS_USE_FIELD_USE_VSYNC_I_PORT_FOR_VERTICAL_SYNC (0)
3944 #define ACAMERA_FPGA_FPGA_INPUT_PORT_VS_USE_FIELD_USE_FIELD_I_PORT_FOR_VERTICAL_SYNC (1)
3945
3946 // args: data (1-bit)
acamera_fpga_fpga_input_port_vs_use_field_write(uintptr_t base,uint8_t data)3947 static __inline void acamera_fpga_fpga_input_port_vs_use_field_write(uintptr_t base, uint8_t data) {
3948 uint32_t curr = system_hw_read_32(0x2093a4L);
3949 system_hw_write_32(0x2093a4L, (((uint32_t) (data & 0x1)) << 8) | (curr & 0xfffffeff));
3950 }
acamera_fpga_fpga_input_port_vs_use_field_read(uintptr_t base)3951 static __inline uint8_t acamera_fpga_fpga_input_port_vs_use_field_read(uintptr_t base) {
3952 return (uint8_t)((system_hw_read_32(0x2093a4L) & 0x100) >> 8);
3953 }
3954 // ------------------------------------------------------------------------------ //
3955 // Register: vs toggle
3956 // ------------------------------------------------------------------------------ //
3957
3958 #define ACAMERA_FPGA_FPGA_INPUT_PORT_VS_TOGGLE_DEFAULT (0)
3959 #define ACAMERA_FPGA_FPGA_INPUT_PORT_VS_TOGGLE_DATASIZE (1)
3960 #define ACAMERA_FPGA_FPGA_INPUT_PORT_VS_TOGGLE_OFFSET (0x3a4)
3961 #define ACAMERA_FPGA_FPGA_INPUT_PORT_VS_TOGGLE_MASK (0x200)
3962 #define ACAMERA_FPGA_FPGA_INPUT_PORT_VS_TOGGLE_VSYNC_IS_PULSETYPE (0)
3963 #define ACAMERA_FPGA_FPGA_INPUT_PORT_VS_TOGGLE_VSYNC_IS_TOGGLETYPE_FIELD_SIGNAL (1)
3964
3965 // args: data (1-bit)
acamera_fpga_fpga_input_port_vs_toggle_write(uintptr_t base,uint8_t data)3966 static __inline void acamera_fpga_fpga_input_port_vs_toggle_write(uintptr_t base, uint8_t data) {
3967 uint32_t curr = system_hw_read_32(0x2093a4L);
3968 system_hw_write_32(0x2093a4L, (((uint32_t) (data & 0x1)) << 9) | (curr & 0xfffffdff));
3969 }
acamera_fpga_fpga_input_port_vs_toggle_read(uintptr_t base)3970 static __inline uint8_t acamera_fpga_fpga_input_port_vs_toggle_read(uintptr_t base) {
3971 return (uint8_t)((system_hw_read_32(0x2093a4L) & 0x200) >> 9);
3972 }
3973 // ------------------------------------------------------------------------------ //
3974 // Register: vs polarity
3975 // ------------------------------------------------------------------------------ //
3976
3977 #define ACAMERA_FPGA_FPGA_INPUT_PORT_VS_POLARITY_DEFAULT (0)
3978 #define ACAMERA_FPGA_FPGA_INPUT_PORT_VS_POLARITY_DATASIZE (1)
3979 #define ACAMERA_FPGA_FPGA_INPUT_PORT_VS_POLARITY_OFFSET (0x3a4)
3980 #define ACAMERA_FPGA_FPGA_INPUT_PORT_VS_POLARITY_MASK (0x400)
3981 #define ACAMERA_FPGA_FPGA_INPUT_PORT_VS_POLARITY_HORIZONTAL_COUNTER_RESET_ON_RISING_EDGE (0)
3982 #define ACAMERA_FPGA_FPGA_INPUT_PORT_VS_POLARITY_HORIZONTAL_COUNTER_RESET_ON_FALLING_EDGE (1)
3983
3984 // args: data (1-bit)
acamera_fpga_fpga_input_port_vs_polarity_write(uintptr_t base,uint8_t data)3985 static __inline void acamera_fpga_fpga_input_port_vs_polarity_write(uintptr_t base, uint8_t data) {
3986 uint32_t curr = system_hw_read_32(0x2093a4L);
3987 system_hw_write_32(0x2093a4L, (((uint32_t) (data & 0x1)) << 10) | (curr & 0xfffffbff));
3988 }
acamera_fpga_fpga_input_port_vs_polarity_read(uintptr_t base)3989 static __inline uint8_t acamera_fpga_fpga_input_port_vs_polarity_read(uintptr_t base) {
3990 return (uint8_t)((system_hw_read_32(0x2093a4L) & 0x400) >> 10);
3991 }
3992 // ------------------------------------------------------------------------------ //
3993 // Register: vs_polarity acl
3994 // ------------------------------------------------------------------------------ //
3995
3996 #define ACAMERA_FPGA_FPGA_INPUT_PORT_VS_POLARITY_ACL_DEFAULT (0)
3997 #define ACAMERA_FPGA_FPGA_INPUT_PORT_VS_POLARITY_ACL_DATASIZE (1)
3998 #define ACAMERA_FPGA_FPGA_INPUT_PORT_VS_POLARITY_ACL_OFFSET (0x3a4)
3999 #define ACAMERA_FPGA_FPGA_INPUT_PORT_VS_POLARITY_ACL_MASK (0x800)
4000 #define ACAMERA_FPGA_FPGA_INPUT_PORT_VS_POLARITY_ACL_DONT_INVERT_POLARITY_FOR_ACL_GATE (0)
4001 #define ACAMERA_FPGA_FPGA_INPUT_PORT_VS_POLARITY_ACL_INVERT_POLARITY_FOR_ACL_GATE (1)
4002
4003 // args: data (1-bit)
acamera_fpga_fpga_input_port_vs_polarity_acl_write(uintptr_t base,uint8_t data)4004 static __inline void acamera_fpga_fpga_input_port_vs_polarity_acl_write(uintptr_t base, uint8_t data) {
4005 uint32_t curr = system_hw_read_32(0x2093a4L);
4006 system_hw_write_32(0x2093a4L, (((uint32_t) (data & 0x1)) << 11) | (curr & 0xfffff7ff));
4007 }
acamera_fpga_fpga_input_port_vs_polarity_acl_read(uintptr_t base)4008 static __inline uint8_t acamera_fpga_fpga_input_port_vs_polarity_acl_read(uintptr_t base) {
4009 return (uint8_t)((system_hw_read_32(0x2093a4L) & 0x800) >> 11);
4010 }
4011 // ------------------------------------------------------------------------------ //
4012 // Register: hs_use acl
4013 // ------------------------------------------------------------------------------ //
4014
4015 #define ACAMERA_FPGA_FPGA_INPUT_PORT_HS_USE_ACL_DEFAULT (0)
4016 #define ACAMERA_FPGA_FPGA_INPUT_PORT_HS_USE_ACL_DATASIZE (1)
4017 #define ACAMERA_FPGA_FPGA_INPUT_PORT_HS_USE_ACL_OFFSET (0x3a4)
4018 #define ACAMERA_FPGA_FPGA_INPUT_PORT_HS_USE_ACL_MASK (0x1000)
4019 #define ACAMERA_FPGA_FPGA_INPUT_PORT_HS_USE_ACL_USE_HSYNC_I_PORT_FOR_ACTIVELINE (0)
4020 #define ACAMERA_FPGA_FPGA_INPUT_PORT_HS_USE_ACL_USE_ACL_I_PORT_FOR_ACTIVELINE (1)
4021
4022 // args: data (1-bit)
acamera_fpga_fpga_input_port_hs_use_acl_write(uintptr_t base,uint8_t data)4023 static __inline void acamera_fpga_fpga_input_port_hs_use_acl_write(uintptr_t base, uint8_t data) {
4024 uint32_t curr = system_hw_read_32(0x2093a4L);
4025 system_hw_write_32(0x2093a4L, (((uint32_t) (data & 0x1)) << 12) | (curr & 0xffffefff));
4026 }
acamera_fpga_fpga_input_port_hs_use_acl_read(uintptr_t base)4027 static __inline uint8_t acamera_fpga_fpga_input_port_hs_use_acl_read(uintptr_t base) {
4028 return (uint8_t)((system_hw_read_32(0x2093a4L) & 0x1000) >> 12);
4029 }
4030 // ------------------------------------------------------------------------------ //
4031 // Register: vc_c select
4032 // ------------------------------------------------------------------------------ //
4033
4034 #define ACAMERA_FPGA_FPGA_INPUT_PORT_VC_C_SELECT_DEFAULT (0)
4035 #define ACAMERA_FPGA_FPGA_INPUT_PORT_VC_C_SELECT_DATASIZE (1)
4036 #define ACAMERA_FPGA_FPGA_INPUT_PORT_VC_C_SELECT_OFFSET (0x3a4)
4037 #define ACAMERA_FPGA_FPGA_INPUT_PORT_VC_C_SELECT_MASK (0x4000)
4038 #define ACAMERA_FPGA_FPGA_INPUT_PORT_VC_C_SELECT_VERTICAL_COUNTER_COUNTS_ON_HS (0)
4039 #define ACAMERA_FPGA_FPGA_INPUT_PORT_VC_C_SELECT_VERTICAL_COUNTER_COUNTS_ON_HORIZONTAL_COUNTER_OVERFLOW_OR_RESET (1)
4040
4041 // args: data (1-bit)
acamera_fpga_fpga_input_port_vc_c_select_write(uintptr_t base,uint8_t data)4042 static __inline void acamera_fpga_fpga_input_port_vc_c_select_write(uintptr_t base, uint8_t data) {
4043 uint32_t curr = system_hw_read_32(0x2093a4L);
4044 system_hw_write_32(0x2093a4L, (((uint32_t) (data & 0x1)) << 14) | (curr & 0xffffbfff));
4045 }
acamera_fpga_fpga_input_port_vc_c_select_read(uintptr_t base)4046 static __inline uint8_t acamera_fpga_fpga_input_port_vc_c_select_read(uintptr_t base) {
4047 return (uint8_t)((system_hw_read_32(0x2093a4L) & 0x4000) >> 14);
4048 }
4049 // ------------------------------------------------------------------------------ //
4050 // Register: vc_r select
4051 // ------------------------------------------------------------------------------ //
4052
4053 #define ACAMERA_FPGA_FPGA_INPUT_PORT_VC_R_SELECT_DEFAULT (0)
4054 #define ACAMERA_FPGA_FPGA_INPUT_PORT_VC_R_SELECT_DATASIZE (1)
4055 #define ACAMERA_FPGA_FPGA_INPUT_PORT_VC_R_SELECT_OFFSET (0x3a4)
4056 #define ACAMERA_FPGA_FPGA_INPUT_PORT_VC_R_SELECT_MASK (0x8000)
4057 #define ACAMERA_FPGA_FPGA_INPUT_PORT_VC_R_SELECT_VERTICAL_COUNTER_IS_RESET_ON_EDGE_OF_VS (0)
4058 #define ACAMERA_FPGA_FPGA_INPUT_PORT_VC_R_SELECT_VERTICAL_COUNTER_IS_RESET_AFTER_TIMEOUT_ON_HS (1)
4059
4060 // args: data (1-bit)
acamera_fpga_fpga_input_port_vc_r_select_write(uintptr_t base,uint8_t data)4061 static __inline void acamera_fpga_fpga_input_port_vc_r_select_write(uintptr_t base, uint8_t data) {
4062 uint32_t curr = system_hw_read_32(0x2093a4L);
4063 system_hw_write_32(0x2093a4L, (((uint32_t) (data & 0x1)) << 15) | (curr & 0xffff7fff));
4064 }
acamera_fpga_fpga_input_port_vc_r_select_read(uintptr_t base)4065 static __inline uint8_t acamera_fpga_fpga_input_port_vc_r_select_read(uintptr_t base) {
4066 return (uint8_t)((system_hw_read_32(0x2093a4L) & 0x8000) >> 15);
4067 }
4068 // ------------------------------------------------------------------------------ //
4069 // Register: hs_xor vs
4070 // ------------------------------------------------------------------------------ //
4071
4072 #define ACAMERA_FPGA_FPGA_INPUT_PORT_HS_XOR_VS_DEFAULT (0)
4073 #define ACAMERA_FPGA_FPGA_INPUT_PORT_HS_XOR_VS_DATASIZE (1)
4074 #define ACAMERA_FPGA_FPGA_INPUT_PORT_HS_XOR_VS_OFFSET (0x3a4)
4075 #define ACAMERA_FPGA_FPGA_INPUT_PORT_HS_XOR_VS_MASK (0x10000)
4076 #define ACAMERA_FPGA_FPGA_INPUT_PORT_HS_XOR_VS_NORMAL_MODE (0)
4077 #define ACAMERA_FPGA_FPGA_INPUT_PORT_HS_XOR_VS_HVALID__HSYNC_XOR_VSYNC (1)
4078
4079 // args: data (1-bit)
acamera_fpga_fpga_input_port_hs_xor_vs_write(uintptr_t base,uint8_t data)4080 static __inline void acamera_fpga_fpga_input_port_hs_xor_vs_write(uintptr_t base, uint8_t data) {
4081 uint32_t curr = system_hw_read_32(0x2093a4L);
4082 system_hw_write_32(0x2093a4L, (((uint32_t) (data & 0x1)) << 16) | (curr & 0xfffeffff));
4083 }
acamera_fpga_fpga_input_port_hs_xor_vs_read(uintptr_t base)4084 static __inline uint8_t acamera_fpga_fpga_input_port_hs_xor_vs_read(uintptr_t base) {
4085 return (uint8_t)((system_hw_read_32(0x2093a4L) & 0x10000) >> 16);
4086 }
4087 // ------------------------------------------------------------------------------ //
4088 // Register: hs polarity
4089 // ------------------------------------------------------------------------------ //
4090
4091 #define ACAMERA_FPGA_FPGA_INPUT_PORT_HS_POLARITY_DEFAULT (0)
4092 #define ACAMERA_FPGA_FPGA_INPUT_PORT_HS_POLARITY_DATASIZE (1)
4093 #define ACAMERA_FPGA_FPGA_INPUT_PORT_HS_POLARITY_OFFSET (0x3a4)
4094 #define ACAMERA_FPGA_FPGA_INPUT_PORT_HS_POLARITY_MASK (0x20000)
4095 #define ACAMERA_FPGA_FPGA_INPUT_PORT_HS_POLARITY_DONT_INVERT_POLARITY_OF_HS_FOR_ACL_GATE (0)
4096 #define ACAMERA_FPGA_FPGA_INPUT_PORT_HS_POLARITY_INVERT_POLARITY_OF_HS_FOR_ACL_GATE (1)
4097
4098 // args: data (1-bit)
acamera_fpga_fpga_input_port_hs_polarity_write(uintptr_t base,uint8_t data)4099 static __inline void acamera_fpga_fpga_input_port_hs_polarity_write(uintptr_t base, uint8_t data) {
4100 uint32_t curr = system_hw_read_32(0x2093a4L);
4101 system_hw_write_32(0x2093a4L, (((uint32_t) (data & 0x1)) << 17) | (curr & 0xfffdffff));
4102 }
acamera_fpga_fpga_input_port_hs_polarity_read(uintptr_t base)4103 static __inline uint8_t acamera_fpga_fpga_input_port_hs_polarity_read(uintptr_t base) {
4104 return (uint8_t)((system_hw_read_32(0x2093a4L) & 0x20000) >> 17);
4105 }
4106 // ------------------------------------------------------------------------------ //
4107 // Register: hs_polarity acl
4108 // ------------------------------------------------------------------------------ //
4109
4110 #define ACAMERA_FPGA_FPGA_INPUT_PORT_HS_POLARITY_ACL_DEFAULT (0)
4111 #define ACAMERA_FPGA_FPGA_INPUT_PORT_HS_POLARITY_ACL_DATASIZE (1)
4112 #define ACAMERA_FPGA_FPGA_INPUT_PORT_HS_POLARITY_ACL_OFFSET (0x3a4)
4113 #define ACAMERA_FPGA_FPGA_INPUT_PORT_HS_POLARITY_ACL_MASK (0x40000)
4114 #define ACAMERA_FPGA_FPGA_INPUT_PORT_HS_POLARITY_ACL_DONT_INVERT_POLARITY_OF_HS_FOR_HS_GATE (0)
4115 #define ACAMERA_FPGA_FPGA_INPUT_PORT_HS_POLARITY_ACL_INVERT_POLARITY_OF_HS_FOR_HS_GATE (1)
4116
4117 // args: data (1-bit)
acamera_fpga_fpga_input_port_hs_polarity_acl_write(uintptr_t base,uint8_t data)4118 static __inline void acamera_fpga_fpga_input_port_hs_polarity_acl_write(uintptr_t base, uint8_t data) {
4119 uint32_t curr = system_hw_read_32(0x2093a4L);
4120 system_hw_write_32(0x2093a4L, (((uint32_t) (data & 0x1)) << 18) | (curr & 0xfffbffff));
4121 }
acamera_fpga_fpga_input_port_hs_polarity_acl_read(uintptr_t base)4122 static __inline uint8_t acamera_fpga_fpga_input_port_hs_polarity_acl_read(uintptr_t base) {
4123 return (uint8_t)((system_hw_read_32(0x2093a4L) & 0x40000) >> 18);
4124 }
4125 // ------------------------------------------------------------------------------ //
4126 // Register: hs_polarity hs
4127 // ------------------------------------------------------------------------------ //
4128
4129 #define ACAMERA_FPGA_FPGA_INPUT_PORT_HS_POLARITY_HS_DEFAULT (0)
4130 #define ACAMERA_FPGA_FPGA_INPUT_PORT_HS_POLARITY_HS_DATASIZE (1)
4131 #define ACAMERA_FPGA_FPGA_INPUT_PORT_HS_POLARITY_HS_OFFSET (0x3a4)
4132 #define ACAMERA_FPGA_FPGA_INPUT_PORT_HS_POLARITY_HS_MASK (0x80000)
4133 #define ACAMERA_FPGA_FPGA_INPUT_PORT_HS_POLARITY_HS_HORIZONTAL_COUNTER_IS_RESET_ON_RISING_EDGE_OF_HS (0)
4134 #define ACAMERA_FPGA_FPGA_INPUT_PORT_HS_POLARITY_HS_HORIZONTAL_COUNTER_IS_RESET_ON_VSYNC_EG_WHEN_HSYNC_IS_NOT_AVAILABLE (1)
4135
4136 // args: data (1-bit)
acamera_fpga_fpga_input_port_hs_polarity_hs_write(uintptr_t base,uint8_t data)4137 static __inline void acamera_fpga_fpga_input_port_hs_polarity_hs_write(uintptr_t base, uint8_t data) {
4138 uint32_t curr = system_hw_read_32(0x2093a4L);
4139 system_hw_write_32(0x2093a4L, (((uint32_t) (data & 0x1)) << 19) | (curr & 0xfff7ffff));
4140 }
acamera_fpga_fpga_input_port_hs_polarity_hs_read(uintptr_t base)4141 static __inline uint8_t acamera_fpga_fpga_input_port_hs_polarity_hs_read(uintptr_t base) {
4142 return (uint8_t)((system_hw_read_32(0x2093a4L) & 0x80000) >> 19);
4143 }
4144 // ------------------------------------------------------------------------------ //
4145 // Register: hs_polarity vc
4146 // ------------------------------------------------------------------------------ //
4147
4148 #define ACAMERA_FPGA_FPGA_INPUT_PORT_HS_POLARITY_VC_DEFAULT (1)
4149 #define ACAMERA_FPGA_FPGA_INPUT_PORT_HS_POLARITY_VC_DATASIZE (1)
4150 #define ACAMERA_FPGA_FPGA_INPUT_PORT_HS_POLARITY_VC_OFFSET (0x3a4)
4151 #define ACAMERA_FPGA_FPGA_INPUT_PORT_HS_POLARITY_VC_MASK (0x100000)
4152 #define ACAMERA_FPGA_FPGA_INPUT_PORT_HS_POLARITY_VC_VERTICAL_COUNTER_INCREMENTS_ON_RISING_EDGE_OF_HS (0)
4153 #define ACAMERA_FPGA_FPGA_INPUT_PORT_HS_POLARITY_VC_VERTICAL_COUNTER_INCREMENTS_ON_FALLING_EDGE_OF_HS (1)
4154
4155 // args: data (1-bit)
acamera_fpga_fpga_input_port_hs_polarity_vc_write(uintptr_t base,uint8_t data)4156 static __inline void acamera_fpga_fpga_input_port_hs_polarity_vc_write(uintptr_t base, uint8_t data) {
4157 uint32_t curr = system_hw_read_32(0x2093a4L);
4158 system_hw_write_32(0x2093a4L, (((uint32_t) (data & 0x1)) << 20) | (curr & 0xffefffff));
4159 }
acamera_fpga_fpga_input_port_hs_polarity_vc_read(uintptr_t base)4160 static __inline uint8_t acamera_fpga_fpga_input_port_hs_polarity_vc_read(uintptr_t base) {
4161 return (uint8_t)((system_hw_read_32(0x2093a4L) & 0x100000) >> 20);
4162 }
4163 // ------------------------------------------------------------------------------ //
4164 // Register: hc_r select
4165 // ------------------------------------------------------------------------------ //
4166
4167 #define ACAMERA_FPGA_FPGA_INPUT_PORT_HC_R_SELECT_DEFAULT (0)
4168 #define ACAMERA_FPGA_FPGA_INPUT_PORT_HC_R_SELECT_DATASIZE (1)
4169 #define ACAMERA_FPGA_FPGA_INPUT_PORT_HC_R_SELECT_OFFSET (0x3a4)
4170 #define ACAMERA_FPGA_FPGA_INPUT_PORT_HC_R_SELECT_MASK (0x800000)
4171 #define ACAMERA_FPGA_FPGA_INPUT_PORT_HC_R_SELECT_VERTICAL_COUNTER_IS_RESET_ON_RISING_EDGE_OF_HS (0)
4172 #define ACAMERA_FPGA_FPGA_INPUT_PORT_HC_R_SELECT_VERTICAL_COUNTER_IS_RESET_ON_RISING_EDGE_OF_VS (1)
4173
4174 // args: data (1-bit)
acamera_fpga_fpga_input_port_hc_r_select_write(uintptr_t base,uint8_t data)4175 static __inline void acamera_fpga_fpga_input_port_hc_r_select_write(uintptr_t base, uint8_t data) {
4176 uint32_t curr = system_hw_read_32(0x2093a4L);
4177 system_hw_write_32(0x2093a4L, (((uint32_t) (data & 0x1)) << 23) | (curr & 0xff7fffff));
4178 }
acamera_fpga_fpga_input_port_hc_r_select_read(uintptr_t base)4179 static __inline uint8_t acamera_fpga_fpga_input_port_hc_r_select_read(uintptr_t base) {
4180 return (uint8_t)((system_hw_read_32(0x2093a4L) & 0x800000) >> 23);
4181 }
4182 // ------------------------------------------------------------------------------ //
4183 // Register: acl polarity
4184 // ------------------------------------------------------------------------------ //
4185
4186 #define ACAMERA_FPGA_FPGA_INPUT_PORT_ACL_POLARITY_DEFAULT (0)
4187 #define ACAMERA_FPGA_FPGA_INPUT_PORT_ACL_POLARITY_DATASIZE (1)
4188 #define ACAMERA_FPGA_FPGA_INPUT_PORT_ACL_POLARITY_OFFSET (0x3a4)
4189 #define ACAMERA_FPGA_FPGA_INPUT_PORT_ACL_POLARITY_MASK (0x1000000)
4190 #define ACAMERA_FPGA_FPGA_INPUT_PORT_ACL_POLARITY_DONT_INVERT_ACL_I_FOR_ACL_GATE (0)
4191 #define ACAMERA_FPGA_FPGA_INPUT_PORT_ACL_POLARITY_INVERT_ACL_I_FOR_ACL_GATE (1)
4192
4193 // args: data (1-bit)
acamera_fpga_fpga_input_port_acl_polarity_write(uintptr_t base,uint8_t data)4194 static __inline void acamera_fpga_fpga_input_port_acl_polarity_write(uintptr_t base, uint8_t data) {
4195 uint32_t curr = system_hw_read_32(0x2093a4L);
4196 system_hw_write_32(0x2093a4L, (((uint32_t) (data & 0x1)) << 24) | (curr & 0xfeffffff));
4197 }
acamera_fpga_fpga_input_port_acl_polarity_read(uintptr_t base)4198 static __inline uint8_t acamera_fpga_fpga_input_port_acl_polarity_read(uintptr_t base) {
4199 return (uint8_t)((system_hw_read_32(0x2093a4L) & 0x1000000) >> 24);
4200 }
4201 // ------------------------------------------------------------------------------ //
4202 // Register: sid_latch_hs_pos
4203 // ------------------------------------------------------------------------------ //
4204
4205 #define ACAMERA_FPGA_FPGA_INPUT_PORT_SID_LATCH_HS_POS_DEFAULT (0)
4206 #define ACAMERA_FPGA_FPGA_INPUT_PORT_SID_LATCH_HS_POS_DATASIZE (1)
4207 #define ACAMERA_FPGA_FPGA_INPUT_PORT_SID_LATCH_HS_POS_OFFSET (0x3a4)
4208 #define ACAMERA_FPGA_FPGA_INPUT_PORT_SID_LATCH_HS_POS_MASK (0x10000000)
4209 #define ACAMERA_FPGA_FPGA_INPUT_PORT_SID_LATCH_HS_POS_DONT_LATCH_STREAM_ID_ON_RISING_EDGE_OF_HS (0)
4210 #define ACAMERA_FPGA_FPGA_INPUT_PORT_SID_LATCH_HS_POS_LATCH_STREAM_ID_ON_RISING_EDGE_OF_HS (1)
4211
4212 // args: data (1-bit)
acamera_fpga_fpga_input_port_sid_latch_hs_pos_write(uintptr_t base,uint8_t data)4213 static __inline void acamera_fpga_fpga_input_port_sid_latch_hs_pos_write(uintptr_t base, uint8_t data) {
4214 uint32_t curr = system_hw_read_32(0x2093a4L);
4215 system_hw_write_32(0x2093a4L, (((uint32_t) (data & 0x1)) << 28) | (curr & 0xefffffff));
4216 }
acamera_fpga_fpga_input_port_sid_latch_hs_pos_read(uintptr_t base)4217 static __inline uint8_t acamera_fpga_fpga_input_port_sid_latch_hs_pos_read(uintptr_t base) {
4218 return (uint8_t)((system_hw_read_32(0x2093a4L) & 0x10000000) >> 28);
4219 }
4220 // ------------------------------------------------------------------------------ //
4221 // Register: sid_latch_hs_neg
4222 // ------------------------------------------------------------------------------ //
4223
4224 #define ACAMERA_FPGA_FPGA_INPUT_PORT_SID_LATCH_HS_NEG_DEFAULT (0)
4225 #define ACAMERA_FPGA_FPGA_INPUT_PORT_SID_LATCH_HS_NEG_DATASIZE (1)
4226 #define ACAMERA_FPGA_FPGA_INPUT_PORT_SID_LATCH_HS_NEG_OFFSET (0x3a4)
4227 #define ACAMERA_FPGA_FPGA_INPUT_PORT_SID_LATCH_HS_NEG_MASK (0x20000000)
4228 #define ACAMERA_FPGA_FPGA_INPUT_PORT_SID_LATCH_HS_NEG_DONT_LATCH_STREAM_ID_ON_FALLING_EDGE_OF_HS (0)
4229 #define ACAMERA_FPGA_FPGA_INPUT_PORT_SID_LATCH_HS_NEG_LATCH_STREAM_ID_ON_FALLING_EDGE_OF_HS (1)
4230
4231 // args: data (1-bit)
acamera_fpga_fpga_input_port_sid_latch_hs_neg_write(uintptr_t base,uint8_t data)4232 static __inline void acamera_fpga_fpga_input_port_sid_latch_hs_neg_write(uintptr_t base, uint8_t data) {
4233 uint32_t curr = system_hw_read_32(0x2093a4L);
4234 system_hw_write_32(0x2093a4L, (((uint32_t) (data & 0x1)) << 29) | (curr & 0xdfffffff));
4235 }
acamera_fpga_fpga_input_port_sid_latch_hs_neg_read(uintptr_t base)4236 static __inline uint8_t acamera_fpga_fpga_input_port_sid_latch_hs_neg_read(uintptr_t base) {
4237 return (uint8_t)((system_hw_read_32(0x2093a4L) & 0x20000000) >> 29);
4238 }
4239 // ------------------------------------------------------------------------------ //
4240 // Register: sid_latch_acl_pos
4241 // ------------------------------------------------------------------------------ //
4242
4243 #define ACAMERA_FPGA_FPGA_INPUT_PORT_SID_LATCH_ACL_POS_DEFAULT (0)
4244 #define ACAMERA_FPGA_FPGA_INPUT_PORT_SID_LATCH_ACL_POS_DATASIZE (1)
4245 #define ACAMERA_FPGA_FPGA_INPUT_PORT_SID_LATCH_ACL_POS_OFFSET (0x3a4)
4246 #define ACAMERA_FPGA_FPGA_INPUT_PORT_SID_LATCH_ACL_POS_MASK (0x40000000)
4247 #define ACAMERA_FPGA_FPGA_INPUT_PORT_SID_LATCH_ACL_POS_DONT_LATCH_STREAM_ID_ON_RISING_EDGE_OF_ACL (0)
4248 #define ACAMERA_FPGA_FPGA_INPUT_PORT_SID_LATCH_ACL_POS_LATCH_STREAM_ID_ON_RISING_EDGE_OF_ACL (1)
4249
4250 // args: data (1-bit)
acamera_fpga_fpga_input_port_sid_latch_acl_pos_write(uintptr_t base,uint8_t data)4251 static __inline void acamera_fpga_fpga_input_port_sid_latch_acl_pos_write(uintptr_t base, uint8_t data) {
4252 uint32_t curr = system_hw_read_32(0x2093a4L);
4253 system_hw_write_32(0x2093a4L, (((uint32_t) (data & 0x1)) << 30) | (curr & 0xbfffffff));
4254 }
acamera_fpga_fpga_input_port_sid_latch_acl_pos_read(uintptr_t base)4255 static __inline uint8_t acamera_fpga_fpga_input_port_sid_latch_acl_pos_read(uintptr_t base) {
4256 return (uint8_t)((system_hw_read_32(0x2093a4L) & 0x40000000) >> 30);
4257 }
4258 // ------------------------------------------------------------------------------ //
4259 // Register: sid_latch_acl_neg
4260 // ------------------------------------------------------------------------------ //
4261
4262 #define ACAMERA_FPGA_FPGA_INPUT_PORT_SID_LATCH_ACL_NEG_DEFAULT (0)
4263 #define ACAMERA_FPGA_FPGA_INPUT_PORT_SID_LATCH_ACL_NEG_DATASIZE (1)
4264 #define ACAMERA_FPGA_FPGA_INPUT_PORT_SID_LATCH_ACL_NEG_OFFSET (0x3a4)
4265 #define ACAMERA_FPGA_FPGA_INPUT_PORT_SID_LATCH_ACL_NEG_MASK (0x80000000)
4266 #define ACAMERA_FPGA_FPGA_INPUT_PORT_SID_LATCH_ACL_NEG_DONT_LATCH_STREAM_ID_ON_FALLING_EDGE_OF_ACL (0)
4267 #define ACAMERA_FPGA_FPGA_INPUT_PORT_SID_LATCH_ACL_NEG_LATCH_STREAM_ID_ON_FALLING_EDGE_OF_ACL (1)
4268
4269 // args: data (1-bit)
acamera_fpga_fpga_input_port_sid_latch_acl_neg_write(uintptr_t base,uint8_t data)4270 static __inline void acamera_fpga_fpga_input_port_sid_latch_acl_neg_write(uintptr_t base, uint8_t data) {
4271 uint32_t curr = system_hw_read_32(0x2093a4L);
4272 system_hw_write_32(0x2093a4L, (((uint32_t) (data & 0x1)) << 31) | (curr & 0x7fffffff));
4273 }
acamera_fpga_fpga_input_port_sid_latch_acl_neg_read(uintptr_t base)4274 static __inline uint8_t acamera_fpga_fpga_input_port_sid_latch_acl_neg_read(uintptr_t base) {
4275 return (uint8_t)((system_hw_read_32(0x2093a4L) & 0x80000000) >> 31);
4276 }
4277 // ------------------------------------------------------------------------------ //
4278 // Register: field polarity
4279 // ------------------------------------------------------------------------------ //
4280
4281 #define ACAMERA_FPGA_FPGA_INPUT_PORT_FIELD_POLARITY_DEFAULT (0)
4282 #define ACAMERA_FPGA_FPGA_INPUT_PORT_FIELD_POLARITY_DATASIZE (1)
4283 #define ACAMERA_FPGA_FPGA_INPUT_PORT_FIELD_POLARITY_OFFSET (0x3a8)
4284 #define ACAMERA_FPGA_FPGA_INPUT_PORT_FIELD_POLARITY_MASK (0x1)
4285 #define ACAMERA_FPGA_FPGA_INPUT_PORT_FIELD_POLARITY_DONT_INVERT_FIELD_I_FOR_FIELD_GATE (0)
4286 #define ACAMERA_FPGA_FPGA_INPUT_PORT_FIELD_POLARITY_INVERT_FIELD_I_FOR_FIELD_GATE (1)
4287
4288 // args: data (1-bit)
acamera_fpga_fpga_input_port_field_polarity_write(uintptr_t base,uint8_t data)4289 static __inline void acamera_fpga_fpga_input_port_field_polarity_write(uintptr_t base, uint8_t data) {
4290 uint32_t curr = system_hw_read_32(0x2093a8L);
4291 system_hw_write_32(0x2093a8L, (((uint32_t) (data & 0x1)) << 0) | (curr & 0xfffffffe));
4292 }
acamera_fpga_fpga_input_port_field_polarity_read(uintptr_t base)4293 static __inline uint8_t acamera_fpga_fpga_input_port_field_polarity_read(uintptr_t base) {
4294 return (uint8_t)((system_hw_read_32(0x2093a8L) & 0x1) >> 0);
4295 }
4296 // ------------------------------------------------------------------------------ //
4297 // Register: field toggle
4298 // ------------------------------------------------------------------------------ //
4299
4300 #define ACAMERA_FPGA_FPGA_INPUT_PORT_FIELD_TOGGLE_DEFAULT (0)
4301 #define ACAMERA_FPGA_FPGA_INPUT_PORT_FIELD_TOGGLE_DATASIZE (1)
4302 #define ACAMERA_FPGA_FPGA_INPUT_PORT_FIELD_TOGGLE_OFFSET (0x3a8)
4303 #define ACAMERA_FPGA_FPGA_INPUT_PORT_FIELD_TOGGLE_MASK (0x2)
4304 #define ACAMERA_FPGA_FPGA_INPUT_PORT_FIELD_TOGGLE_FIELD_IS_PULSETYPE (0)
4305 #define ACAMERA_FPGA_FPGA_INPUT_PORT_FIELD_TOGGLE_FIELD_IS_TOGGLETYPE (1)
4306
4307 // args: data (1-bit)
acamera_fpga_fpga_input_port_field_toggle_write(uintptr_t base,uint8_t data)4308 static __inline void acamera_fpga_fpga_input_port_field_toggle_write(uintptr_t base, uint8_t data) {
4309 uint32_t curr = system_hw_read_32(0x2093a8L);
4310 system_hw_write_32(0x2093a8L, (((uint32_t) (data & 0x1)) << 1) | (curr & 0xfffffffd));
4311 }
acamera_fpga_fpga_input_port_field_toggle_read(uintptr_t base)4312 static __inline uint8_t acamera_fpga_fpga_input_port_field_toggle_read(uintptr_t base) {
4313 return (uint8_t)((system_hw_read_32(0x2093a8L) & 0x2) >> 1);
4314 }
4315 // ------------------------------------------------------------------------------ //
4316 // Register: aclg window0
4317 // ------------------------------------------------------------------------------ //
4318
4319 #define ACAMERA_FPGA_FPGA_INPUT_PORT_ACLG_WINDOW0_DEFAULT (0)
4320 #define ACAMERA_FPGA_FPGA_INPUT_PORT_ACLG_WINDOW0_DATASIZE (1)
4321 #define ACAMERA_FPGA_FPGA_INPUT_PORT_ACLG_WINDOW0_OFFSET (0x3a8)
4322 #define ACAMERA_FPGA_FPGA_INPUT_PORT_ACLG_WINDOW0_MASK (0x100)
4323 #define ACAMERA_FPGA_FPGA_INPUT_PORT_ACLG_WINDOW0_EXCLUDE_WINDOW0_SIGNAL_IN_ACL_GATE (0)
4324 #define ACAMERA_FPGA_FPGA_INPUT_PORT_ACLG_WINDOW0_INCLUDE_WINDOW0_SIGNAL_IN_ACL_GATE (1)
4325
4326 // args: data (1-bit)
acamera_fpga_fpga_input_port_aclg_window0_write(uintptr_t base,uint8_t data)4327 static __inline void acamera_fpga_fpga_input_port_aclg_window0_write(uintptr_t base, uint8_t data) {
4328 uint32_t curr = system_hw_read_32(0x2093a8L);
4329 system_hw_write_32(0x2093a8L, (((uint32_t) (data & 0x1)) << 8) | (curr & 0xfffffeff));
4330 }
acamera_fpga_fpga_input_port_aclg_window0_read(uintptr_t base)4331 static __inline uint8_t acamera_fpga_fpga_input_port_aclg_window0_read(uintptr_t base) {
4332 return (uint8_t)((system_hw_read_32(0x2093a8L) & 0x100) >> 8);
4333 }
4334 // ------------------------------------------------------------------------------ //
4335 // Register: aclg hsync
4336 // ------------------------------------------------------------------------------ //
4337
4338 #define ACAMERA_FPGA_FPGA_INPUT_PORT_ACLG_HSYNC_DEFAULT (0)
4339 #define ACAMERA_FPGA_FPGA_INPUT_PORT_ACLG_HSYNC_DATASIZE (1)
4340 #define ACAMERA_FPGA_FPGA_INPUT_PORT_ACLG_HSYNC_OFFSET (0x3a8)
4341 #define ACAMERA_FPGA_FPGA_INPUT_PORT_ACLG_HSYNC_MASK (0x200)
4342 #define ACAMERA_FPGA_FPGA_INPUT_PORT_ACLG_HSYNC_EXCLUDE_HSYNC_SIGNAL_IN_ACL_GATE (0)
4343 #define ACAMERA_FPGA_FPGA_INPUT_PORT_ACLG_HSYNC_INCLUDE_HSYNC_SIGNAL_IN_ACL_GATE (1)
4344
4345 // args: data (1-bit)
acamera_fpga_fpga_input_port_aclg_hsync_write(uintptr_t base,uint8_t data)4346 static __inline void acamera_fpga_fpga_input_port_aclg_hsync_write(uintptr_t base, uint8_t data) {
4347 uint32_t curr = system_hw_read_32(0x2093a8L);
4348 system_hw_write_32(0x2093a8L, (((uint32_t) (data & 0x1)) << 9) | (curr & 0xfffffdff));
4349 }
acamera_fpga_fpga_input_port_aclg_hsync_read(uintptr_t base)4350 static __inline uint8_t acamera_fpga_fpga_input_port_aclg_hsync_read(uintptr_t base) {
4351 return (uint8_t)((system_hw_read_32(0x2093a8L) & 0x200) >> 9);
4352 }
4353 // ------------------------------------------------------------------------------ //
4354 // Register: aclg window2
4355 // ------------------------------------------------------------------------------ //
4356
4357 #define ACAMERA_FPGA_FPGA_INPUT_PORT_ACLG_WINDOW2_DEFAULT (0)
4358 #define ACAMERA_FPGA_FPGA_INPUT_PORT_ACLG_WINDOW2_DATASIZE (1)
4359 #define ACAMERA_FPGA_FPGA_INPUT_PORT_ACLG_WINDOW2_OFFSET (0x3a8)
4360 #define ACAMERA_FPGA_FPGA_INPUT_PORT_ACLG_WINDOW2_MASK (0x400)
4361 #define ACAMERA_FPGA_FPGA_INPUT_PORT_ACLG_WINDOW2_EXCLUDE_WINDOW2_SIGNAL_IN_ACL_GATE (0)
4362 #define ACAMERA_FPGA_FPGA_INPUT_PORT_ACLG_WINDOW2_INCLUDE_WINDOW2_SIGNAL_IN_ACL_GATE (1)
4363
4364 // args: data (1-bit)
acamera_fpga_fpga_input_port_aclg_window2_write(uintptr_t base,uint8_t data)4365 static __inline void acamera_fpga_fpga_input_port_aclg_window2_write(uintptr_t base, uint8_t data) {
4366 uint32_t curr = system_hw_read_32(0x2093a8L);
4367 system_hw_write_32(0x2093a8L, (((uint32_t) (data & 0x1)) << 10) | (curr & 0xfffffbff));
4368 }
acamera_fpga_fpga_input_port_aclg_window2_read(uintptr_t base)4369 static __inline uint8_t acamera_fpga_fpga_input_port_aclg_window2_read(uintptr_t base) {
4370 return (uint8_t)((system_hw_read_32(0x2093a8L) & 0x400) >> 10);
4371 }
4372 // ------------------------------------------------------------------------------ //
4373 // Register: aclg acl
4374 // ------------------------------------------------------------------------------ //
4375
4376 #define ACAMERA_FPGA_FPGA_INPUT_PORT_ACLG_ACL_DEFAULT (0)
4377 #define ACAMERA_FPGA_FPGA_INPUT_PORT_ACLG_ACL_DATASIZE (1)
4378 #define ACAMERA_FPGA_FPGA_INPUT_PORT_ACLG_ACL_OFFSET (0x3a8)
4379 #define ACAMERA_FPGA_FPGA_INPUT_PORT_ACLG_ACL_MASK (0x800)
4380 #define ACAMERA_FPGA_FPGA_INPUT_PORT_ACLG_ACL_EXCLUDE_ACL_I_SIGNAL_IN_ACL_GATE (0)
4381 #define ACAMERA_FPGA_FPGA_INPUT_PORT_ACLG_ACL_INCLUDE_ACL_I_SIGNAL_IN_ACL_GATE (1)
4382
4383 // args: data (1-bit)
acamera_fpga_fpga_input_port_aclg_acl_write(uintptr_t base,uint8_t data)4384 static __inline void acamera_fpga_fpga_input_port_aclg_acl_write(uintptr_t base, uint8_t data) {
4385 uint32_t curr = system_hw_read_32(0x2093a8L);
4386 system_hw_write_32(0x2093a8L, (((uint32_t) (data & 0x1)) << 11) | (curr & 0xfffff7ff));
4387 }
acamera_fpga_fpga_input_port_aclg_acl_read(uintptr_t base)4388 static __inline uint8_t acamera_fpga_fpga_input_port_aclg_acl_read(uintptr_t base) {
4389 return (uint8_t)((system_hw_read_32(0x2093a8L) & 0x800) >> 11);
4390 }
4391 // ------------------------------------------------------------------------------ //
4392 // Register: aclg vsync
4393 // ------------------------------------------------------------------------------ //
4394
4395 #define ACAMERA_FPGA_FPGA_INPUT_PORT_ACLG_VSYNC_DEFAULT (0)
4396 #define ACAMERA_FPGA_FPGA_INPUT_PORT_ACLG_VSYNC_DATASIZE (1)
4397 #define ACAMERA_FPGA_FPGA_INPUT_PORT_ACLG_VSYNC_OFFSET (0x3a8)
4398 #define ACAMERA_FPGA_FPGA_INPUT_PORT_ACLG_VSYNC_MASK (0x1000)
4399 #define ACAMERA_FPGA_FPGA_INPUT_PORT_ACLG_VSYNC_EXCLUDE_VSYNC_SIGNAL_IN_ACL_GATE (0)
4400 #define ACAMERA_FPGA_FPGA_INPUT_PORT_ACLG_VSYNC_INCLUDE_VSYNC_SIGNAL_IN_ACL_GATE (1)
4401
4402 // args: data (1-bit)
acamera_fpga_fpga_input_port_aclg_vsync_write(uintptr_t base,uint8_t data)4403 static __inline void acamera_fpga_fpga_input_port_aclg_vsync_write(uintptr_t base, uint8_t data) {
4404 uint32_t curr = system_hw_read_32(0x2093a8L);
4405 system_hw_write_32(0x2093a8L, (((uint32_t) (data & 0x1)) << 12) | (curr & 0xffffefff));
4406 }
acamera_fpga_fpga_input_port_aclg_vsync_read(uintptr_t base)4407 static __inline uint8_t acamera_fpga_fpga_input_port_aclg_vsync_read(uintptr_t base) {
4408 return (uint8_t)((system_hw_read_32(0x2093a8L) & 0x1000) >> 12);
4409 }
4410 // ------------------------------------------------------------------------------ //
4411 // Register: hsg window1
4412 // ------------------------------------------------------------------------------ //
4413
4414 #define ACAMERA_FPGA_FPGA_INPUT_PORT_HSG_WINDOW1_DEFAULT (0)
4415 #define ACAMERA_FPGA_FPGA_INPUT_PORT_HSG_WINDOW1_DATASIZE (1)
4416 #define ACAMERA_FPGA_FPGA_INPUT_PORT_HSG_WINDOW1_OFFSET (0x3a8)
4417 #define ACAMERA_FPGA_FPGA_INPUT_PORT_HSG_WINDOW1_MASK (0x10000)
4418 #define ACAMERA_FPGA_FPGA_INPUT_PORT_HSG_WINDOW1_EXCLUDE_WINDOW1_SIGNAL_IN_HS_GATE (0)
4419 #define ACAMERA_FPGA_FPGA_INPUT_PORT_HSG_WINDOW1_INCLUDE_WINDOW1_SIGNAL_IN_HS_GATE (1)
4420
4421 // args: data (1-bit)
acamera_fpga_fpga_input_port_hsg_window1_write(uintptr_t base,uint8_t data)4422 static __inline void acamera_fpga_fpga_input_port_hsg_window1_write(uintptr_t base, uint8_t data) {
4423 uint32_t curr = system_hw_read_32(0x2093a8L);
4424 system_hw_write_32(0x2093a8L, (((uint32_t) (data & 0x1)) << 16) | (curr & 0xfffeffff));
4425 }
acamera_fpga_fpga_input_port_hsg_window1_read(uintptr_t base)4426 static __inline uint8_t acamera_fpga_fpga_input_port_hsg_window1_read(uintptr_t base) {
4427 return (uint8_t)((system_hw_read_32(0x2093a8L) & 0x10000) >> 16);
4428 }
4429 // ------------------------------------------------------------------------------ //
4430 // Register: hsg hsync
4431 // ------------------------------------------------------------------------------ //
4432
4433 #define ACAMERA_FPGA_FPGA_INPUT_PORT_HSG_HSYNC_DEFAULT (0)
4434 #define ACAMERA_FPGA_FPGA_INPUT_PORT_HSG_HSYNC_DATASIZE (1)
4435 #define ACAMERA_FPGA_FPGA_INPUT_PORT_HSG_HSYNC_OFFSET (0x3a8)
4436 #define ACAMERA_FPGA_FPGA_INPUT_PORT_HSG_HSYNC_MASK (0x20000)
4437 #define ACAMERA_FPGA_FPGA_INPUT_PORT_HSG_HSYNC_EXCLUDE_HSYNC_SIGNAL_IN_HS_GATE (0)
4438 #define ACAMERA_FPGA_FPGA_INPUT_PORT_HSG_HSYNC_INCLUDE_HSYNC_SIGNAL_IN_HS_GATE (1)
4439
4440 // args: data (1-bit)
acamera_fpga_fpga_input_port_hsg_hsync_write(uintptr_t base,uint8_t data)4441 static __inline void acamera_fpga_fpga_input_port_hsg_hsync_write(uintptr_t base, uint8_t data) {
4442 uint32_t curr = system_hw_read_32(0x2093a8L);
4443 system_hw_write_32(0x2093a8L, (((uint32_t) (data & 0x1)) << 17) | (curr & 0xfffdffff));
4444 }
acamera_fpga_fpga_input_port_hsg_hsync_read(uintptr_t base)4445 static __inline uint8_t acamera_fpga_fpga_input_port_hsg_hsync_read(uintptr_t base) {
4446 return (uint8_t)((system_hw_read_32(0x2093a8L) & 0x20000) >> 17);
4447 }
4448 // ------------------------------------------------------------------------------ //
4449 // Register: hsg vsync
4450 // ------------------------------------------------------------------------------ //
4451
4452 #define ACAMERA_FPGA_FPGA_INPUT_PORT_HSG_VSYNC_DEFAULT (0)
4453 #define ACAMERA_FPGA_FPGA_INPUT_PORT_HSG_VSYNC_DATASIZE (1)
4454 #define ACAMERA_FPGA_FPGA_INPUT_PORT_HSG_VSYNC_OFFSET (0x3a8)
4455 #define ACAMERA_FPGA_FPGA_INPUT_PORT_HSG_VSYNC_MASK (0x40000)
4456 #define ACAMERA_FPGA_FPGA_INPUT_PORT_HSG_VSYNC_EXCLUDE_VSYNC_SIGNAL_IN_HS_GATE (0)
4457 #define ACAMERA_FPGA_FPGA_INPUT_PORT_HSG_VSYNC_INCLUDE_VSYNC_SIGNAL_IN_HS_GATE (1)
4458
4459 // args: data (1-bit)
acamera_fpga_fpga_input_port_hsg_vsync_write(uintptr_t base,uint8_t data)4460 static __inline void acamera_fpga_fpga_input_port_hsg_vsync_write(uintptr_t base, uint8_t data) {
4461 uint32_t curr = system_hw_read_32(0x2093a8L);
4462 system_hw_write_32(0x2093a8L, (((uint32_t) (data & 0x1)) << 18) | (curr & 0xfffbffff));
4463 }
acamera_fpga_fpga_input_port_hsg_vsync_read(uintptr_t base)4464 static __inline uint8_t acamera_fpga_fpga_input_port_hsg_vsync_read(uintptr_t base) {
4465 return (uint8_t)((system_hw_read_32(0x2093a8L) & 0x40000) >> 18);
4466 }
4467 // ------------------------------------------------------------------------------ //
4468 // Register: hsg window2
4469 // ------------------------------------------------------------------------------ //
4470
4471 #define ACAMERA_FPGA_FPGA_INPUT_PORT_HSG_WINDOW2_DEFAULT (0)
4472 #define ACAMERA_FPGA_FPGA_INPUT_PORT_HSG_WINDOW2_DATASIZE (1)
4473 #define ACAMERA_FPGA_FPGA_INPUT_PORT_HSG_WINDOW2_OFFSET (0x3a8)
4474 #define ACAMERA_FPGA_FPGA_INPUT_PORT_HSG_WINDOW2_MASK (0x80000)
4475 #define ACAMERA_FPGA_FPGA_INPUT_PORT_HSG_WINDOW2_EXCLUDE_WINDOW2_SIGNAL_IN_HS_GATE (0)
4476 #define ACAMERA_FPGA_FPGA_INPUT_PORT_HSG_WINDOW2_INCLUDE_WINDOW2_SIGNAL_IN_HS_GATE_MASK_OUT_SPURIOUS_HS_DURING_BLANK (1)
4477
4478 // args: data (1-bit)
acamera_fpga_fpga_input_port_hsg_window2_write(uintptr_t base,uint8_t data)4479 static __inline void acamera_fpga_fpga_input_port_hsg_window2_write(uintptr_t base, uint8_t data) {
4480 uint32_t curr = system_hw_read_32(0x2093a8L);
4481 system_hw_write_32(0x2093a8L, (((uint32_t) (data & 0x1)) << 19) | (curr & 0xfff7ffff));
4482 }
acamera_fpga_fpga_input_port_hsg_window2_read(uintptr_t base)4483 static __inline uint8_t acamera_fpga_fpga_input_port_hsg_window2_read(uintptr_t base) {
4484 return (uint8_t)((system_hw_read_32(0x2093a8L) & 0x80000) >> 19);
4485 }
4486 // ------------------------------------------------------------------------------ //
4487 // Register: fieldg vsync
4488 // ------------------------------------------------------------------------------ //
4489
4490 #define ACAMERA_FPGA_FPGA_INPUT_PORT_FIELDG_VSYNC_DEFAULT (0)
4491 #define ACAMERA_FPGA_FPGA_INPUT_PORT_FIELDG_VSYNC_DATASIZE (1)
4492 #define ACAMERA_FPGA_FPGA_INPUT_PORT_FIELDG_VSYNC_OFFSET (0x3a8)
4493 #define ACAMERA_FPGA_FPGA_INPUT_PORT_FIELDG_VSYNC_MASK (0x1000000)
4494 #define ACAMERA_FPGA_FPGA_INPUT_PORT_FIELDG_VSYNC_EXCLUDE_VSYNC_SIGNAL_IN_FIELD_GATE (0)
4495 #define ACAMERA_FPGA_FPGA_INPUT_PORT_FIELDG_VSYNC_INCLUDE_VSYNC_SIGNAL_IN_FIELD_GATE (1)
4496
4497 // args: data (1-bit)
acamera_fpga_fpga_input_port_fieldg_vsync_write(uintptr_t base,uint8_t data)4498 static __inline void acamera_fpga_fpga_input_port_fieldg_vsync_write(uintptr_t base, uint8_t data) {
4499 uint32_t curr = system_hw_read_32(0x2093a8L);
4500 system_hw_write_32(0x2093a8L, (((uint32_t) (data & 0x1)) << 24) | (curr & 0xfeffffff));
4501 }
acamera_fpga_fpga_input_port_fieldg_vsync_read(uintptr_t base)4502 static __inline uint8_t acamera_fpga_fpga_input_port_fieldg_vsync_read(uintptr_t base) {
4503 return (uint8_t)((system_hw_read_32(0x2093a8L) & 0x1000000) >> 24);
4504 }
4505 // ------------------------------------------------------------------------------ //
4506 // Register: fieldg window2
4507 // ------------------------------------------------------------------------------ //
4508
4509 #define ACAMERA_FPGA_FPGA_INPUT_PORT_FIELDG_WINDOW2_DEFAULT (0)
4510 #define ACAMERA_FPGA_FPGA_INPUT_PORT_FIELDG_WINDOW2_DATASIZE (1)
4511 #define ACAMERA_FPGA_FPGA_INPUT_PORT_FIELDG_WINDOW2_OFFSET (0x3a8)
4512 #define ACAMERA_FPGA_FPGA_INPUT_PORT_FIELDG_WINDOW2_MASK (0x2000000)
4513 #define ACAMERA_FPGA_FPGA_INPUT_PORT_FIELDG_WINDOW2_EXCLUDE_WINDOW2_SIGNAL_IN_FIELD_GATE (0)
4514 #define ACAMERA_FPGA_FPGA_INPUT_PORT_FIELDG_WINDOW2_INCLUDE_WINDOW2_SIGNAL_IN_FIELD_GATE (1)
4515
4516 // args: data (1-bit)
acamera_fpga_fpga_input_port_fieldg_window2_write(uintptr_t base,uint8_t data)4517 static __inline void acamera_fpga_fpga_input_port_fieldg_window2_write(uintptr_t base, uint8_t data) {
4518 uint32_t curr = system_hw_read_32(0x2093a8L);
4519 system_hw_write_32(0x2093a8L, (((uint32_t) (data & 0x1)) << 25) | (curr & 0xfdffffff));
4520 }
acamera_fpga_fpga_input_port_fieldg_window2_read(uintptr_t base)4521 static __inline uint8_t acamera_fpga_fpga_input_port_fieldg_window2_read(uintptr_t base) {
4522 return (uint8_t)((system_hw_read_32(0x2093a8L) & 0x2000000) >> 25);
4523 }
4524 // ------------------------------------------------------------------------------ //
4525 // Register: fieldg field
4526 // ------------------------------------------------------------------------------ //
4527
4528 #define ACAMERA_FPGA_FPGA_INPUT_PORT_FIELDG_FIELD_DEFAULT (0)
4529 #define ACAMERA_FPGA_FPGA_INPUT_PORT_FIELDG_FIELD_DATASIZE (1)
4530 #define ACAMERA_FPGA_FPGA_INPUT_PORT_FIELDG_FIELD_OFFSET (0x3a8)
4531 #define ACAMERA_FPGA_FPGA_INPUT_PORT_FIELDG_FIELD_MASK (0x4000000)
4532 #define ACAMERA_FPGA_FPGA_INPUT_PORT_FIELDG_FIELD_EXCLUDE_FIELD_I_SIGNAL_IN_FIELD_GATE (0)
4533 #define ACAMERA_FPGA_FPGA_INPUT_PORT_FIELDG_FIELD_INCLUDE_FIELD_I_SIGNAL_IN_FIELD_GATE (1)
4534
4535 // args: data (1-bit)
acamera_fpga_fpga_input_port_fieldg_field_write(uintptr_t base,uint8_t data)4536 static __inline void acamera_fpga_fpga_input_port_fieldg_field_write(uintptr_t base, uint8_t data) {
4537 uint32_t curr = system_hw_read_32(0x2093a8L);
4538 system_hw_write_32(0x2093a8L, (((uint32_t) (data & 0x1)) << 26) | (curr & 0xfbffffff));
4539 }
acamera_fpga_fpga_input_port_fieldg_field_read(uintptr_t base)4540 static __inline uint8_t acamera_fpga_fpga_input_port_fieldg_field_read(uintptr_t base) {
4541 return (uint8_t)((system_hw_read_32(0x2093a8L) & 0x4000000) >> 26);
4542 }
4543 // ------------------------------------------------------------------------------ //
4544 // Register: field mode
4545 // ------------------------------------------------------------------------------ //
4546
4547 #define ACAMERA_FPGA_FPGA_INPUT_PORT_FIELD_MODE_DEFAULT (0)
4548 #define ACAMERA_FPGA_FPGA_INPUT_PORT_FIELD_MODE_DATASIZE (1)
4549 #define ACAMERA_FPGA_FPGA_INPUT_PORT_FIELD_MODE_OFFSET (0x3a8)
4550 #define ACAMERA_FPGA_FPGA_INPUT_PORT_FIELD_MODE_MASK (0x8000000)
4551 #define ACAMERA_FPGA_FPGA_INPUT_PORT_FIELD_MODE_PULSE_FIELD (0)
4552 #define ACAMERA_FPGA_FPGA_INPUT_PORT_FIELD_MODE_TOGGLE_FIELD (1)
4553
4554 // args: data (1-bit)
acamera_fpga_fpga_input_port_field_mode_write(uintptr_t base,uint8_t data)4555 static __inline void acamera_fpga_fpga_input_port_field_mode_write(uintptr_t base, uint8_t data) {
4556 uint32_t curr = system_hw_read_32(0x2093a8L);
4557 system_hw_write_32(0x2093a8L, (((uint32_t) (data & 0x1)) << 27) | (curr & 0xf7ffffff));
4558 }
acamera_fpga_fpga_input_port_field_mode_read(uintptr_t base)4559 static __inline uint8_t acamera_fpga_fpga_input_port_field_mode_read(uintptr_t base) {
4560 return (uint8_t)((system_hw_read_32(0x2093a8L) & 0x8000000) >> 27);
4561 }
4562 // ------------------------------------------------------------------------------ //
4563 // Register: hc limit
4564 // ------------------------------------------------------------------------------ //
4565
4566 // ------------------------------------------------------------------------------ //
4567 // horizontal counter limit value (counts: 0,1,...hc_limit-1,hc_limit,0,1,...)
4568 // ------------------------------------------------------------------------------ //
4569
4570 #define ACAMERA_FPGA_FPGA_INPUT_PORT_HC_LIMIT_DEFAULT (0xFFFF)
4571 #define ACAMERA_FPGA_FPGA_INPUT_PORT_HC_LIMIT_DATASIZE (16)
4572 #define ACAMERA_FPGA_FPGA_INPUT_PORT_HC_LIMIT_OFFSET (0x3ac)
4573 #define ACAMERA_FPGA_FPGA_INPUT_PORT_HC_LIMIT_MASK (0xffff)
4574
4575 // args: data (16-bit)
acamera_fpga_fpga_input_port_hc_limit_write(uintptr_t base,uint16_t data)4576 static __inline void acamera_fpga_fpga_input_port_hc_limit_write(uintptr_t base, uint16_t data) {
4577 uint32_t curr = system_hw_read_32(0x2093acL);
4578 system_hw_write_32(0x2093acL, (((uint32_t) (data & 0xffff)) << 0) | (curr & 0xffff0000));
4579 }
acamera_fpga_fpga_input_port_hc_limit_read(uintptr_t base)4580 static __inline uint16_t acamera_fpga_fpga_input_port_hc_limit_read(uintptr_t base) {
4581 return (uint16_t)((system_hw_read_32(0x2093acL) & 0xffff) >> 0);
4582 }
4583 // ------------------------------------------------------------------------------ //
4584 // Register: hc start0
4585 // ------------------------------------------------------------------------------ //
4586
4587 // ------------------------------------------------------------------------------ //
4588 // window0 start for ACL gate
4589 // ------------------------------------------------------------------------------ //
4590
4591 #define ACAMERA_FPGA_FPGA_INPUT_PORT_HC_START0_DEFAULT (0)
4592 #define ACAMERA_FPGA_FPGA_INPUT_PORT_HC_START0_DATASIZE (16)
4593 #define ACAMERA_FPGA_FPGA_INPUT_PORT_HC_START0_OFFSET (0x3b0)
4594 #define ACAMERA_FPGA_FPGA_INPUT_PORT_HC_START0_MASK (0xffff)
4595
4596 // args: data (16-bit)
acamera_fpga_fpga_input_port_hc_start0_write(uintptr_t base,uint16_t data)4597 static __inline void acamera_fpga_fpga_input_port_hc_start0_write(uintptr_t base, uint16_t data) {
4598 uint32_t curr = system_hw_read_32(0x2093b0L);
4599 system_hw_write_32(0x2093b0L, (((uint32_t) (data & 0xffff)) << 0) | (curr & 0xffff0000));
4600 }
acamera_fpga_fpga_input_port_hc_start0_read(uintptr_t base)4601 static __inline uint16_t acamera_fpga_fpga_input_port_hc_start0_read(uintptr_t base) {
4602 return (uint16_t)((system_hw_read_32(0x2093b0L) & 0xffff) >> 0);
4603 }
4604 // ------------------------------------------------------------------------------ //
4605 // Register: hc size0
4606 // ------------------------------------------------------------------------------ //
4607
4608 // ------------------------------------------------------------------------------ //
4609 // window0 size for ACL gate
4610 // ------------------------------------------------------------------------------ //
4611
4612 #define ACAMERA_FPGA_FPGA_INPUT_PORT_HC_SIZE0_DEFAULT (0)
4613 #define ACAMERA_FPGA_FPGA_INPUT_PORT_HC_SIZE0_DATASIZE (16)
4614 #define ACAMERA_FPGA_FPGA_INPUT_PORT_HC_SIZE0_OFFSET (0x3b4)
4615 #define ACAMERA_FPGA_FPGA_INPUT_PORT_HC_SIZE0_MASK (0xffff)
4616
4617 // args: data (16-bit)
acamera_fpga_fpga_input_port_hc_size0_write(uintptr_t base,uint16_t data)4618 static __inline void acamera_fpga_fpga_input_port_hc_size0_write(uintptr_t base, uint16_t data) {
4619 uint32_t curr = system_hw_read_32(0x2093b4L);
4620 system_hw_write_32(0x2093b4L, (((uint32_t) (data & 0xffff)) << 0) | (curr & 0xffff0000));
4621 }
acamera_fpga_fpga_input_port_hc_size0_read(uintptr_t base)4622 static __inline uint16_t acamera_fpga_fpga_input_port_hc_size0_read(uintptr_t base) {
4623 return (uint16_t)((system_hw_read_32(0x2093b4L) & 0xffff) >> 0);
4624 }
4625 // ------------------------------------------------------------------------------ //
4626 // Register: hc start1
4627 // ------------------------------------------------------------------------------ //
4628
4629 // ------------------------------------------------------------------------------ //
4630 // window1 start for HS gate
4631 // ------------------------------------------------------------------------------ //
4632
4633 #define ACAMERA_FPGA_FPGA_INPUT_PORT_HC_START1_DEFAULT (0)
4634 #define ACAMERA_FPGA_FPGA_INPUT_PORT_HC_START1_DATASIZE (16)
4635 #define ACAMERA_FPGA_FPGA_INPUT_PORT_HC_START1_OFFSET (0x3b8)
4636 #define ACAMERA_FPGA_FPGA_INPUT_PORT_HC_START1_MASK (0xffff)
4637
4638 // args: data (16-bit)
acamera_fpga_fpga_input_port_hc_start1_write(uintptr_t base,uint16_t data)4639 static __inline void acamera_fpga_fpga_input_port_hc_start1_write(uintptr_t base, uint16_t data) {
4640 uint32_t curr = system_hw_read_32(0x2093b8L);
4641 system_hw_write_32(0x2093b8L, (((uint32_t) (data & 0xffff)) << 0) | (curr & 0xffff0000));
4642 }
acamera_fpga_fpga_input_port_hc_start1_read(uintptr_t base)4643 static __inline uint16_t acamera_fpga_fpga_input_port_hc_start1_read(uintptr_t base) {
4644 return (uint16_t)((system_hw_read_32(0x2093b8L) & 0xffff) >> 0);
4645 }
4646 // ------------------------------------------------------------------------------ //
4647 // Register: hc size1
4648 // ------------------------------------------------------------------------------ //
4649
4650 // ------------------------------------------------------------------------------ //
4651 // window1 size for HS gate
4652 // ------------------------------------------------------------------------------ //
4653
4654 #define ACAMERA_FPGA_FPGA_INPUT_PORT_HC_SIZE1_DEFAULT (0)
4655 #define ACAMERA_FPGA_FPGA_INPUT_PORT_HC_SIZE1_DATASIZE (16)
4656 #define ACAMERA_FPGA_FPGA_INPUT_PORT_HC_SIZE1_OFFSET (0x3bc)
4657 #define ACAMERA_FPGA_FPGA_INPUT_PORT_HC_SIZE1_MASK (0xffff)
4658
4659 // args: data (16-bit)
acamera_fpga_fpga_input_port_hc_size1_write(uintptr_t base,uint16_t data)4660 static __inline void acamera_fpga_fpga_input_port_hc_size1_write(uintptr_t base, uint16_t data) {
4661 uint32_t curr = system_hw_read_32(0x2093bcL);
4662 system_hw_write_32(0x2093bcL, (((uint32_t) (data & 0xffff)) << 0) | (curr & 0xffff0000));
4663 }
acamera_fpga_fpga_input_port_hc_size1_read(uintptr_t base)4664 static __inline uint16_t acamera_fpga_fpga_input_port_hc_size1_read(uintptr_t base) {
4665 return (uint16_t)((system_hw_read_32(0x2093bcL) & 0xffff) >> 0);
4666 }
4667 // ------------------------------------------------------------------------------ //
4668 // Register: vc limit
4669 // ------------------------------------------------------------------------------ //
4670
4671 // ------------------------------------------------------------------------------ //
4672 // vertical counter limit value (counts: 0,1,...vc_limit-1,vc_limit,0,1,...)
4673 // ------------------------------------------------------------------------------ //
4674
4675 #define ACAMERA_FPGA_FPGA_INPUT_PORT_VC_LIMIT_DEFAULT (0xFFFF)
4676 #define ACAMERA_FPGA_FPGA_INPUT_PORT_VC_LIMIT_DATASIZE (16)
4677 #define ACAMERA_FPGA_FPGA_INPUT_PORT_VC_LIMIT_OFFSET (0x3c0)
4678 #define ACAMERA_FPGA_FPGA_INPUT_PORT_VC_LIMIT_MASK (0xffff)
4679
4680 // args: data (16-bit)
acamera_fpga_fpga_input_port_vc_limit_write(uintptr_t base,uint16_t data)4681 static __inline void acamera_fpga_fpga_input_port_vc_limit_write(uintptr_t base, uint16_t data) {
4682 uint32_t curr = system_hw_read_32(0x2093c0L);
4683 system_hw_write_32(0x2093c0L, (((uint32_t) (data & 0xffff)) << 0) | (curr & 0xffff0000));
4684 }
acamera_fpga_fpga_input_port_vc_limit_read(uintptr_t base)4685 static __inline uint16_t acamera_fpga_fpga_input_port_vc_limit_read(uintptr_t base) {
4686 return (uint16_t)((system_hw_read_32(0x2093c0L) & 0xffff) >> 0);
4687 }
4688 // ------------------------------------------------------------------------------ //
4689 // Register: vc start
4690 // ------------------------------------------------------------------------------ //
4691
4692 // ------------------------------------------------------------------------------ //
4693 // window2 start for ACL gate
4694 // ------------------------------------------------------------------------------ //
4695
4696 #define ACAMERA_FPGA_FPGA_INPUT_PORT_VC_START_DEFAULT (0)
4697 #define ACAMERA_FPGA_FPGA_INPUT_PORT_VC_START_DATASIZE (16)
4698 #define ACAMERA_FPGA_FPGA_INPUT_PORT_VC_START_OFFSET (0x3c4)
4699 #define ACAMERA_FPGA_FPGA_INPUT_PORT_VC_START_MASK (0xffff)
4700
4701 // args: data (16-bit)
acamera_fpga_fpga_input_port_vc_start_write(uintptr_t base,uint16_t data)4702 static __inline void acamera_fpga_fpga_input_port_vc_start_write(uintptr_t base, uint16_t data) {
4703 uint32_t curr = system_hw_read_32(0x2093c4L);
4704 system_hw_write_32(0x2093c4L, (((uint32_t) (data & 0xffff)) << 0) | (curr & 0xffff0000));
4705 }
acamera_fpga_fpga_input_port_vc_start_read(uintptr_t base)4706 static __inline uint16_t acamera_fpga_fpga_input_port_vc_start_read(uintptr_t base) {
4707 return (uint16_t)((system_hw_read_32(0x2093c4L) & 0xffff) >> 0);
4708 }
4709 // ------------------------------------------------------------------------------ //
4710 // Register: vc size
4711 // ------------------------------------------------------------------------------ //
4712
4713 // ------------------------------------------------------------------------------ //
4714 // window2 size for ACL gate
4715 // ------------------------------------------------------------------------------ //
4716
4717 #define ACAMERA_FPGA_FPGA_INPUT_PORT_VC_SIZE_DEFAULT (0)
4718 #define ACAMERA_FPGA_FPGA_INPUT_PORT_VC_SIZE_DATASIZE (16)
4719 #define ACAMERA_FPGA_FPGA_INPUT_PORT_VC_SIZE_OFFSET (0x3c8)
4720 #define ACAMERA_FPGA_FPGA_INPUT_PORT_VC_SIZE_MASK (0xffff)
4721
4722 // args: data (16-bit)
acamera_fpga_fpga_input_port_vc_size_write(uintptr_t base,uint16_t data)4723 static __inline void acamera_fpga_fpga_input_port_vc_size_write(uintptr_t base, uint16_t data) {
4724 uint32_t curr = system_hw_read_32(0x2093c8L);
4725 system_hw_write_32(0x2093c8L, (((uint32_t) (data & 0xffff)) << 0) | (curr & 0xffff0000));
4726 }
acamera_fpga_fpga_input_port_vc_size_read(uintptr_t base)4727 static __inline uint16_t acamera_fpga_fpga_input_port_vc_size_read(uintptr_t base) {
4728 return (uint16_t)((system_hw_read_32(0x2093c8L) & 0xffff) >> 0);
4729 }
4730 // ------------------------------------------------------------------------------ //
4731 // Register: frame width
4732 // ------------------------------------------------------------------------------ //
4733
4734 // ------------------------------------------------------------------------------ //
4735 // detected frame width
4736 // ------------------------------------------------------------------------------ //
4737
4738 #define ACAMERA_FPGA_FPGA_INPUT_PORT_FRAME_WIDTH_DEFAULT (0)
4739 #define ACAMERA_FPGA_FPGA_INPUT_PORT_FRAME_WIDTH_DATASIZE (16)
4740 #define ACAMERA_FPGA_FPGA_INPUT_PORT_FRAME_WIDTH_OFFSET (0x3cc)
4741 #define ACAMERA_FPGA_FPGA_INPUT_PORT_FRAME_WIDTH_MASK (0xffff)
4742
4743 // args: data (16-bit)
acamera_fpga_fpga_input_port_frame_width_read(uintptr_t base)4744 static __inline uint16_t acamera_fpga_fpga_input_port_frame_width_read(uintptr_t base) {
4745 return (uint16_t)((system_hw_read_32(0x2093ccL) & 0xffff) >> 0);
4746 }
4747 // ------------------------------------------------------------------------------ //
4748 // Register: frame height
4749 // ------------------------------------------------------------------------------ //
4750
4751 // ------------------------------------------------------------------------------ //
4752 // detected frame height
4753 // ------------------------------------------------------------------------------ //
4754
4755 #define ACAMERA_FPGA_FPGA_INPUT_PORT_FRAME_HEIGHT_DEFAULT (0)
4756 #define ACAMERA_FPGA_FPGA_INPUT_PORT_FRAME_HEIGHT_DATASIZE (16)
4757 #define ACAMERA_FPGA_FPGA_INPUT_PORT_FRAME_HEIGHT_OFFSET (0x3d0)
4758 #define ACAMERA_FPGA_FPGA_INPUT_PORT_FRAME_HEIGHT_MASK (0xffff)
4759
4760 // args: data (16-bit)
acamera_fpga_fpga_input_port_frame_height_read(uintptr_t base)4761 static __inline uint16_t acamera_fpga_fpga_input_port_frame_height_read(uintptr_t base) {
4762 return (uint16_t)((system_hw_read_32(0x2093d0L) & 0xffff) >> 0);
4763 }
4764 // ------------------------------------------------------------------------------ //
4765 // Register: freeze config
4766 // ------------------------------------------------------------------------------ //
4767
4768 #define ACAMERA_FPGA_FPGA_INPUT_PORT_FREEZE_CONFIG_DEFAULT (0)
4769 #define ACAMERA_FPGA_FPGA_INPUT_PORT_FREEZE_CONFIG_DATASIZE (1)
4770 #define ACAMERA_FPGA_FPGA_INPUT_PORT_FREEZE_CONFIG_OFFSET (0x3d4)
4771 #define ACAMERA_FPGA_FPGA_INPUT_PORT_FREEZE_CONFIG_MASK (0x80)
4772 #define ACAMERA_FPGA_FPGA_INPUT_PORT_FREEZE_CONFIG_NORMAL_OPERATION (0)
4773 #define ACAMERA_FPGA_FPGA_INPUT_PORT_FREEZE_CONFIG_HOLD_PREVIOUS_CONFIG_STATE (1)
4774
4775 // args: data (1-bit)
acamera_fpga_fpga_input_port_freeze_config_write(uintptr_t base,uint8_t data)4776 static __inline void acamera_fpga_fpga_input_port_freeze_config_write(uintptr_t base, uint8_t data) {
4777 uint32_t curr = system_hw_read_32(0x2093d4L);
4778 system_hw_write_32(0x2093d4L, (((uint32_t) (data & 0x1)) << 7) | (curr & 0xffffff7f));
4779 }
acamera_fpga_fpga_input_port_freeze_config_read(uintptr_t base)4780 static __inline uint8_t acamera_fpga_fpga_input_port_freeze_config_read(uintptr_t base) {
4781 return (uint8_t)((system_hw_read_32(0x2093d4L) & 0x80) >> 7);
4782 }
4783 // ------------------------------------------------------------------------------ //
4784 // Register: mode request
4785 // ------------------------------------------------------------------------------ //
4786
4787 #define ACAMERA_FPGA_FPGA_INPUT_PORT_MODE_REQUEST_DEFAULT (0)
4788 #define ACAMERA_FPGA_FPGA_INPUT_PORT_MODE_REQUEST_DATASIZE (3)
4789 #define ACAMERA_FPGA_FPGA_INPUT_PORT_MODE_REQUEST_OFFSET (0x3d4)
4790 #define ACAMERA_FPGA_FPGA_INPUT_PORT_MODE_REQUEST_MASK (0x7)
4791 #define ACAMERA_FPGA_FPGA_INPUT_PORT_MODE_REQUEST_SAFE_STOP (0)
4792 #define ACAMERA_FPGA_FPGA_INPUT_PORT_MODE_REQUEST_SAFE_START (1)
4793 #define ACAMERA_FPGA_FPGA_INPUT_PORT_MODE_REQUEST_URGENT_STOP (2)
4794 #define ACAMERA_FPGA_FPGA_INPUT_PORT_MODE_REQUEST_URGENT_START (3)
4795 #define ACAMERA_FPGA_FPGA_INPUT_PORT_MODE_REQUEST_RESERVED4 (4)
4796 #define ACAMERA_FPGA_FPGA_INPUT_PORT_MODE_REQUEST_SAFER_START (5)
4797 #define ACAMERA_FPGA_FPGA_INPUT_PORT_MODE_REQUEST_RESERVED6 (6)
4798 #define ACAMERA_FPGA_FPGA_INPUT_PORT_MODE_REQUEST_RESERVED7 (7)
4799
4800 // args: data (3-bit)
acamera_fpga_fpga_input_port_mode_request_write(uintptr_t base,uint8_t data)4801 static __inline void acamera_fpga_fpga_input_port_mode_request_write(uintptr_t base, uint8_t data) {
4802 uint32_t curr = system_hw_read_32(0x2093d4L);
4803 system_hw_write_32(0x2093d4L, (((uint32_t) (data & 0x7)) << 0) | (curr & 0xfffffff8));
4804 }
acamera_fpga_fpga_input_port_mode_request_read(uintptr_t base)4805 static __inline uint8_t acamera_fpga_fpga_input_port_mode_request_read(uintptr_t base) {
4806 return (uint8_t)((system_hw_read_32(0x2093d4L) & 0x7) >> 0);
4807 }
4808 // ------------------------------------------------------------------------------ //
4809 // Register: mode status
4810 // ------------------------------------------------------------------------------ //
4811
4812 // ------------------------------------------------------------------------------ //
4813 // bit 0: 1=started, 0=stopped, bits 1,2-reserved
4814 // ------------------------------------------------------------------------------ //
4815
4816 #define ACAMERA_FPGA_FPGA_INPUT_PORT_MODE_STATUS_DEFAULT (0)
4817 #define ACAMERA_FPGA_FPGA_INPUT_PORT_MODE_STATUS_DATASIZE (3)
4818 #define ACAMERA_FPGA_FPGA_INPUT_PORT_MODE_STATUS_OFFSET (0x3d8)
4819 #define ACAMERA_FPGA_FPGA_INPUT_PORT_MODE_STATUS_MASK (0x7)
4820
4821 // args: data (3-bit)
acamera_fpga_fpga_input_port_mode_status_read(uintptr_t base)4822 static __inline uint8_t acamera_fpga_fpga_input_port_mode_status_read(uintptr_t base) {
4823 return (uint8_t)((system_hw_read_32(0x2093d8L) & 0x7) >> 0);
4824 }
4825 // ------------------------------------------------------------------------------ //
4826 // Group: FPGA WDR Frame Buffer1
4827 // ------------------------------------------------------------------------------ //
4828
4829 // ------------------------------------------------------------------------------ //
4830 // Register: Active Width
4831 // ------------------------------------------------------------------------------ //
4832
4833 // ------------------------------------------------------------------------------ //
4834 // Active video width in pixels
4835 // ------------------------------------------------------------------------------ //
4836
4837 #define ACAMERA_FPGA_ISP_FRAME_STITCH_FRAME_BUFFER_ACTIVE_WIDTH_DEFAULT (0x780)
4838 #define ACAMERA_FPGA_ISP_FRAME_STITCH_FRAME_BUFFER_ACTIVE_WIDTH_DATASIZE (16)
4839 #define ACAMERA_FPGA_ISP_FRAME_STITCH_FRAME_BUFFER_ACTIVE_WIDTH_OFFSET (0x4e4)
4840 #define ACAMERA_FPGA_ISP_FRAME_STITCH_FRAME_BUFFER_ACTIVE_WIDTH_MASK (0xffff)
4841
4842 // args: data (16-bit)
acamera_fpga_isp_frame_stitch_frame_buffer_active_width_write(uintptr_t base,uint16_t data)4843 static __inline void acamera_fpga_isp_frame_stitch_frame_buffer_active_width_write(uintptr_t base, uint16_t data) {
4844 uint32_t curr = system_hw_read_32(0x2094e4L);
4845 system_hw_write_32(0x2094e4L, (((uint32_t) (data & 0xffff)) << 0) | (curr & 0xffff0000));
4846 }
acamera_fpga_isp_frame_stitch_frame_buffer_active_width_read(uintptr_t base)4847 static __inline uint16_t acamera_fpga_isp_frame_stitch_frame_buffer_active_width_read(uintptr_t base) {
4848 return (uint16_t)((system_hw_read_32(0x2094e4L) & 0xffff) >> 0);
4849 }
4850 // ------------------------------------------------------------------------------ //
4851 // Register: Active Height
4852 // ------------------------------------------------------------------------------ //
4853
4854 // ------------------------------------------------------------------------------ //
4855 // Active video height in lines
4856 // ------------------------------------------------------------------------------ //
4857
4858 #define ACAMERA_FPGA_ISP_FRAME_STITCH_FRAME_BUFFER_ACTIVE_HEIGHT_DEFAULT (0x438)
4859 #define ACAMERA_FPGA_ISP_FRAME_STITCH_FRAME_BUFFER_ACTIVE_HEIGHT_DATASIZE (16)
4860 #define ACAMERA_FPGA_ISP_FRAME_STITCH_FRAME_BUFFER_ACTIVE_HEIGHT_OFFSET (0x4e4)
4861 #define ACAMERA_FPGA_ISP_FRAME_STITCH_FRAME_BUFFER_ACTIVE_HEIGHT_MASK (0xffff0000)
4862
4863 // args: data (16-bit)
acamera_fpga_isp_frame_stitch_frame_buffer_active_height_write(uintptr_t base,uint16_t data)4864 static __inline void acamera_fpga_isp_frame_stitch_frame_buffer_active_height_write(uintptr_t base, uint16_t data) {
4865 uint32_t curr = system_hw_read_32(0x2094e4L);
4866 system_hw_write_32(0x2094e4L, (((uint32_t) (data & 0xffff)) << 16) | (curr & 0xffff));
4867 }
acamera_fpga_isp_frame_stitch_frame_buffer_active_height_read(uintptr_t base)4868 static __inline uint16_t acamera_fpga_isp_frame_stitch_frame_buffer_active_height_read(uintptr_t base) {
4869 return (uint16_t)((system_hw_read_32(0x2094e4L) & 0xffff0000) >> 16);
4870 }
4871 // ------------------------------------------------------------------------------ //
4872 // Register: axi_port_enable
4873 // ------------------------------------------------------------------------------ //
4874
4875 #define ACAMERA_FPGA_ISP_FRAME_STITCH_FRAME_BUFFER_AXI_PORT_ENABLE_DEFAULT (0x0)
4876 #define ACAMERA_FPGA_ISP_FRAME_STITCH_FRAME_BUFFER_AXI_PORT_ENABLE_DATASIZE (1)
4877 #define ACAMERA_FPGA_ISP_FRAME_STITCH_FRAME_BUFFER_AXI_PORT_ENABLE_OFFSET (0x4e8)
4878 #define ACAMERA_FPGA_ISP_FRAME_STITCH_FRAME_BUFFER_AXI_PORT_ENABLE_MASK (0x1)
4879
4880 // args: data (1-bit)
acamera_fpga_isp_frame_stitch_frame_buffer_axi_port_enable_write(uintptr_t base,uint8_t data)4881 static __inline void acamera_fpga_isp_frame_stitch_frame_buffer_axi_port_enable_write(uintptr_t base, uint8_t data) {
4882 uint32_t curr = system_hw_read_32(0x2094e8L);
4883 system_hw_write_32(0x2094e8L, (((uint32_t) (data & 0x1)) << 0) | (curr & 0xfffffffe));
4884 }
acamera_fpga_isp_frame_stitch_frame_buffer_axi_port_enable_read(uintptr_t base)4885 static __inline uint8_t acamera_fpga_isp_frame_stitch_frame_buffer_axi_port_enable_read(uintptr_t base) {
4886 return (uint8_t)((system_hw_read_32(0x2094e8L) & 0x1) >> 0);
4887 }
4888 // ------------------------------------------------------------------------------ //
4889 // Register: write_enable
4890 // ------------------------------------------------------------------------------ //
4891
4892 #define ACAMERA_FPGA_ISP_FRAME_STITCH_FRAME_BUFFER_WRITE_ENABLE_DEFAULT (0x1)
4893 #define ACAMERA_FPGA_ISP_FRAME_STITCH_FRAME_BUFFER_WRITE_ENABLE_DATASIZE (1)
4894 #define ACAMERA_FPGA_ISP_FRAME_STITCH_FRAME_BUFFER_WRITE_ENABLE_OFFSET (0x4e8)
4895 #define ACAMERA_FPGA_ISP_FRAME_STITCH_FRAME_BUFFER_WRITE_ENABLE_MASK (0x2)
4896
4897 // args: data (1-bit)
acamera_fpga_isp_frame_stitch_frame_buffer_write_enable_write(uintptr_t base,uint8_t data)4898 static __inline void acamera_fpga_isp_frame_stitch_frame_buffer_write_enable_write(uintptr_t base, uint8_t data) {
4899 uint32_t curr = system_hw_read_32(0x2094e8L);
4900 system_hw_write_32(0x2094e8L, (((uint32_t) (data & 0x1)) << 1) | (curr & 0xfffffffd));
4901 }
acamera_fpga_isp_frame_stitch_frame_buffer_write_enable_read(uintptr_t base)4902 static __inline uint8_t acamera_fpga_isp_frame_stitch_frame_buffer_write_enable_read(uintptr_t base) {
4903 return (uint8_t)((system_hw_read_32(0x2094e8L) & 0x2) >> 1);
4904 }
4905 // ------------------------------------------------------------------------------ //
4906 // Register: frame cancel
4907 // ------------------------------------------------------------------------------ //
4908
4909 #define ACAMERA_FPGA_ISP_FRAME_STITCH_FRAME_BUFFER_FRAME_CANCEL_DEFAULT (0x0)
4910 #define ACAMERA_FPGA_ISP_FRAME_STITCH_FRAME_BUFFER_FRAME_CANCEL_DATASIZE (1)
4911 #define ACAMERA_FPGA_ISP_FRAME_STITCH_FRAME_BUFFER_FRAME_CANCEL_OFFSET (0x4e8)
4912 #define ACAMERA_FPGA_ISP_FRAME_STITCH_FRAME_BUFFER_FRAME_CANCEL_MASK (0x4)
4913
4914 // args: data (1-bit)
acamera_fpga_isp_frame_stitch_frame_buffer_frame_cancel_write(uintptr_t base,uint8_t data)4915 static __inline void acamera_fpga_isp_frame_stitch_frame_buffer_frame_cancel_write(uintptr_t base, uint8_t data) {
4916 uint32_t curr = system_hw_read_32(0x2094e8L);
4917 system_hw_write_32(0x2094e8L, (((uint32_t) (data & 0x1)) << 2) | (curr & 0xfffffffb));
4918 }
acamera_fpga_isp_frame_stitch_frame_buffer_frame_cancel_read(uintptr_t base)4919 static __inline uint8_t acamera_fpga_isp_frame_stitch_frame_buffer_frame_cancel_read(uintptr_t base) {
4920 return (uint8_t)((system_hw_read_32(0x2094e8L) & 0x4) >> 2);
4921 }
4922 // ------------------------------------------------------------------------------ //
4923 // Register: config
4924 // ------------------------------------------------------------------------------ //
4925
4926 #define ACAMERA_FPGA_ISP_FRAME_STITCH_FRAME_BUFFER_CONFIG_DEFAULT (0x0000)
4927 #define ACAMERA_FPGA_ISP_FRAME_STITCH_FRAME_BUFFER_CONFIG_DATASIZE (32)
4928 #define ACAMERA_FPGA_ISP_FRAME_STITCH_FRAME_BUFFER_CONFIG_OFFSET (0x4ec)
4929 #define ACAMERA_FPGA_ISP_FRAME_STITCH_FRAME_BUFFER_CONFIG_MASK (0xffffffff)
4930
4931 // args: data (32-bit)
acamera_fpga_isp_frame_stitch_frame_buffer_config_write(uintptr_t base,uint32_t data)4932 static __inline void acamera_fpga_isp_frame_stitch_frame_buffer_config_write(uintptr_t base, uint32_t data) {
4933 system_hw_write_32(0x2094ecL, data);
4934 }
acamera_fpga_isp_frame_stitch_frame_buffer_config_read(uintptr_t base)4935 static __inline uint32_t acamera_fpga_isp_frame_stitch_frame_buffer_config_read(uintptr_t base) {
4936 return system_hw_read_32(0x2094ecL);
4937 }
4938 // ------------------------------------------------------------------------------ //
4939 // Register: status
4940 // ------------------------------------------------------------------------------ //
4941
4942 #define ACAMERA_FPGA_ISP_FRAME_STITCH_FRAME_BUFFER_STATUS_DEFAULT (0x0000)
4943 #define ACAMERA_FPGA_ISP_FRAME_STITCH_FRAME_BUFFER_STATUS_DATASIZE (32)
4944 #define ACAMERA_FPGA_ISP_FRAME_STITCH_FRAME_BUFFER_STATUS_OFFSET (0x4f0)
4945 #define ACAMERA_FPGA_ISP_FRAME_STITCH_FRAME_BUFFER_STATUS_MASK (0xffffffff)
4946
4947 // args: data (32-bit)
acamera_fpga_isp_frame_stitch_frame_buffer_status_read(uintptr_t base)4948 static __inline uint32_t acamera_fpga_isp_frame_stitch_frame_buffer_status_read(uintptr_t base) {
4949 return system_hw_read_32(0x2094f0L);
4950 }
4951 // ------------------------------------------------------------------------------ //
4952 // Register: bank0_base
4953 // ------------------------------------------------------------------------------ //
4954
4955 // ------------------------------------------------------------------------------ //
4956 // bank 0 base address for frame buffer, should be word-aligned
4957 // ------------------------------------------------------------------------------ //
4958
4959 #define ACAMERA_FPGA_ISP_FRAME_STITCH_FRAME_BUFFER_BANK0_BASE_DEFAULT (0x0)
4960 #define ACAMERA_FPGA_ISP_FRAME_STITCH_FRAME_BUFFER_BANK0_BASE_DATASIZE (32)
4961 #define ACAMERA_FPGA_ISP_FRAME_STITCH_FRAME_BUFFER_BANK0_BASE_OFFSET (0x4f8)
4962 #define ACAMERA_FPGA_ISP_FRAME_STITCH_FRAME_BUFFER_BANK0_BASE_MASK (0xffffffff)
4963
4964 // args: data (32-bit)
acamera_fpga_isp_frame_stitch_frame_buffer_bank0_base_write(uintptr_t base,uint32_t data)4965 static __inline void acamera_fpga_isp_frame_stitch_frame_buffer_bank0_base_write(uintptr_t base, uint32_t data) {
4966 system_hw_write_32(0x2094f8L, data);
4967 }
acamera_fpga_isp_frame_stitch_frame_buffer_bank0_base_read(uintptr_t base)4968 static __inline uint32_t acamera_fpga_isp_frame_stitch_frame_buffer_bank0_base_read(uintptr_t base) {
4969 return system_hw_read_32(0x2094f8L);
4970 }
4971 // ------------------------------------------------------------------------------ //
4972 // Register: bank1_base
4973 // ------------------------------------------------------------------------------ //
4974
4975 // ------------------------------------------------------------------------------ //
4976 // bank 1 base address for frame buffer, should be word-aligned
4977 // ------------------------------------------------------------------------------ //
4978
4979 #define ACAMERA_FPGA_ISP_FRAME_STITCH_FRAME_BUFFER_BANK1_BASE_DEFAULT (0x0)
4980 #define ACAMERA_FPGA_ISP_FRAME_STITCH_FRAME_BUFFER_BANK1_BASE_DATASIZE (32)
4981 #define ACAMERA_FPGA_ISP_FRAME_STITCH_FRAME_BUFFER_BANK1_BASE_OFFSET (0x4fc)
4982 #define ACAMERA_FPGA_ISP_FRAME_STITCH_FRAME_BUFFER_BANK1_BASE_MASK (0xffffffff)
4983
4984 // args: data (32-bit)
acamera_fpga_isp_frame_stitch_frame_buffer_bank1_base_write(uintptr_t base,uint32_t data)4985 static __inline void acamera_fpga_isp_frame_stitch_frame_buffer_bank1_base_write(uintptr_t base, uint32_t data) {
4986 system_hw_write_32(0x2094fcL, data);
4987 }
acamera_fpga_isp_frame_stitch_frame_buffer_bank1_base_read(uintptr_t base)4988 static __inline uint32_t acamera_fpga_isp_frame_stitch_frame_buffer_bank1_base_read(uintptr_t base) {
4989 return system_hw_read_32(0x2094fcL);
4990 }
4991 // ------------------------------------------------------------------------------ //
4992 // Register: Line_offset
4993 // ------------------------------------------------------------------------------ //
4994
4995 // ------------------------------------------------------------------------------ //
4996 // distance between lines, should be word-aligned
4997 // ------------------------------------------------------------------------------ //
4998
4999 #define ACAMERA_FPGA_ISP_FRAME_STITCH_FRAME_BUFFER_LINE_OFFSET_DEFAULT (0x1000)
5000 #define ACAMERA_FPGA_ISP_FRAME_STITCH_FRAME_BUFFER_LINE_OFFSET_DATASIZE (32)
5001 #define ACAMERA_FPGA_ISP_FRAME_STITCH_FRAME_BUFFER_LINE_OFFSET_OFFSET (0x504)
5002 #define ACAMERA_FPGA_ISP_FRAME_STITCH_FRAME_BUFFER_LINE_OFFSET_MASK (0xffffffff)
5003
5004 // args: data (32-bit)
acamera_fpga_isp_frame_stitch_frame_buffer_line_offset_write(uintptr_t base,uint32_t data)5005 static __inline void acamera_fpga_isp_frame_stitch_frame_buffer_line_offset_write(uintptr_t base, uint32_t data) {
5006 system_hw_write_32(0x209504L, data);
5007 }
acamera_fpga_isp_frame_stitch_frame_buffer_line_offset_read(uintptr_t base)5008 static __inline uint32_t acamera_fpga_isp_frame_stitch_frame_buffer_line_offset_read(uintptr_t base) {
5009 return system_hw_read_32(0x209504L);
5010 }
5011 // ------------------------------------------------------------------------------ //
5012 // Register: Frame write on
5013 // ------------------------------------------------------------------------------ //
5014
5015 #define ACAMERA_FPGA_ISP_FRAME_STITCH_FRAME_BUFFER_FRAME_WRITE_ON_DEFAULT (0x0)
5016 #define ACAMERA_FPGA_ISP_FRAME_STITCH_FRAME_BUFFER_FRAME_WRITE_ON_DATASIZE (1)
5017 #define ACAMERA_FPGA_ISP_FRAME_STITCH_FRAME_BUFFER_FRAME_WRITE_ON_OFFSET (0x508)
5018 #define ACAMERA_FPGA_ISP_FRAME_STITCH_FRAME_BUFFER_FRAME_WRITE_ON_MASK (0x1)
5019
5020 // args: data (1-bit)
acamera_fpga_isp_frame_stitch_frame_buffer_frame_write_on_write(uintptr_t base,uint8_t data)5021 static __inline void acamera_fpga_isp_frame_stitch_frame_buffer_frame_write_on_write(uintptr_t base, uint8_t data) {
5022 uint32_t curr = system_hw_read_32(0x209508L);
5023 system_hw_write_32(0x209508L, (((uint32_t) (data & 0x1)) << 0) | (curr & 0xfffffffe));
5024 }
acamera_fpga_isp_frame_stitch_frame_buffer_frame_write_on_read(uintptr_t base)5025 static __inline uint8_t acamera_fpga_isp_frame_stitch_frame_buffer_frame_write_on_read(uintptr_t base) {
5026 return (uint8_t)((system_hw_read_32(0x209508L) & 0x1) >> 0);
5027 }
5028 // ------------------------------------------------------------------------------ //
5029 // Register: Frame read on
5030 // ------------------------------------------------------------------------------ //
5031
5032 #define ACAMERA_FPGA_ISP_FRAME_STITCH_FRAME_BUFFER_FRAME_READ_ON_DEFAULT (0x0)
5033 #define ACAMERA_FPGA_ISP_FRAME_STITCH_FRAME_BUFFER_FRAME_READ_ON_DATASIZE (1)
5034 #define ACAMERA_FPGA_ISP_FRAME_STITCH_FRAME_BUFFER_FRAME_READ_ON_OFFSET (0x508)
5035 #define ACAMERA_FPGA_ISP_FRAME_STITCH_FRAME_BUFFER_FRAME_READ_ON_MASK (0x2)
5036
5037 // args: data (1-bit)
acamera_fpga_isp_frame_stitch_frame_buffer_frame_read_on_write(uintptr_t base,uint8_t data)5038 static __inline void acamera_fpga_isp_frame_stitch_frame_buffer_frame_read_on_write(uintptr_t base, uint8_t data) {
5039 uint32_t curr = system_hw_read_32(0x209508L);
5040 system_hw_write_32(0x209508L, (((uint32_t) (data & 0x1)) << 1) | (curr & 0xfffffffd));
5041 }
acamera_fpga_isp_frame_stitch_frame_buffer_frame_read_on_read(uintptr_t base)5042 static __inline uint8_t acamera_fpga_isp_frame_stitch_frame_buffer_frame_read_on_read(uintptr_t base) {
5043 return (uint8_t)((system_hw_read_32(0x209508L) & 0x2) >> 1);
5044 }
5045 // ------------------------------------------------------------------------------ //
5046 // Register: Frame write cancel
5047 // ------------------------------------------------------------------------------ //
5048
5049 #define ACAMERA_FPGA_ISP_FRAME_STITCH_FRAME_BUFFER_FRAME_WRITE_CANCEL_DEFAULT (0x0)
5050 #define ACAMERA_FPGA_ISP_FRAME_STITCH_FRAME_BUFFER_FRAME_WRITE_CANCEL_DATASIZE (1)
5051 #define ACAMERA_FPGA_ISP_FRAME_STITCH_FRAME_BUFFER_FRAME_WRITE_CANCEL_OFFSET (0x508)
5052 #define ACAMERA_FPGA_ISP_FRAME_STITCH_FRAME_BUFFER_FRAME_WRITE_CANCEL_MASK (0x10)
5053
5054 // args: data (1-bit)
acamera_fpga_isp_frame_stitch_frame_buffer_frame_write_cancel_write(uintptr_t base,uint8_t data)5055 static __inline void acamera_fpga_isp_frame_stitch_frame_buffer_frame_write_cancel_write(uintptr_t base, uint8_t data) {
5056 uint32_t curr = system_hw_read_32(0x209508L);
5057 system_hw_write_32(0x209508L, (((uint32_t) (data & 0x1)) << 4) | (curr & 0xffffffef));
5058 }
acamera_fpga_isp_frame_stitch_frame_buffer_frame_write_cancel_read(uintptr_t base)5059 static __inline uint8_t acamera_fpga_isp_frame_stitch_frame_buffer_frame_write_cancel_read(uintptr_t base) {
5060 return (uint8_t)((system_hw_read_32(0x209508L) & 0x10) >> 4);
5061 }
5062 // ------------------------------------------------------------------------------ //
5063 // Register: Frame read cancel
5064 // ------------------------------------------------------------------------------ //
5065
5066 #define ACAMERA_FPGA_ISP_FRAME_STITCH_FRAME_BUFFER_FRAME_READ_CANCEL_DEFAULT (0x0)
5067 #define ACAMERA_FPGA_ISP_FRAME_STITCH_FRAME_BUFFER_FRAME_READ_CANCEL_DATASIZE (1)
5068 #define ACAMERA_FPGA_ISP_FRAME_STITCH_FRAME_BUFFER_FRAME_READ_CANCEL_OFFSET (0x508)
5069 #define ACAMERA_FPGA_ISP_FRAME_STITCH_FRAME_BUFFER_FRAME_READ_CANCEL_MASK (0x20)
5070
5071 // args: data (1-bit)
acamera_fpga_isp_frame_stitch_frame_buffer_frame_read_cancel_write(uintptr_t base,uint8_t data)5072 static __inline void acamera_fpga_isp_frame_stitch_frame_buffer_frame_read_cancel_write(uintptr_t base, uint8_t data) {
5073 uint32_t curr = system_hw_read_32(0x209508L);
5074 system_hw_write_32(0x209508L, (((uint32_t) (data & 0x1)) << 5) | (curr & 0xffffffdf));
5075 }
acamera_fpga_isp_frame_stitch_frame_buffer_frame_read_cancel_read(uintptr_t base)5076 static __inline uint8_t acamera_fpga_isp_frame_stitch_frame_buffer_frame_read_cancel_read(uintptr_t base) {
5077 return (uint8_t)((system_hw_read_32(0x209508L) & 0x20) >> 5);
5078 }
5079 // ------------------------------------------------------------------------------ //
5080 // Group: FPGA WDR multiplexor
5081 // ------------------------------------------------------------------------------ //
5082
5083 // ------------------------------------------------------------------------------ //
5084 // Register: Master Channel
5085 // ------------------------------------------------------------------------------ //
5086
5087 // ------------------------------------------------------------------------------ //
5088 // Master input channel
5089 // ------------------------------------------------------------------------------ //
5090
5091 #define ACAMERA_FPGA_FPGA_WDR_MULTIPLEXOR_MASTER_CHANNEL_DEFAULT (0)
5092 #define ACAMERA_FPGA_FPGA_WDR_MULTIPLEXOR_MASTER_CHANNEL_DATASIZE (3)
5093 #define ACAMERA_FPGA_FPGA_WDR_MULTIPLEXOR_MASTER_CHANNEL_OFFSET (0x54c)
5094 #define ACAMERA_FPGA_FPGA_WDR_MULTIPLEXOR_MASTER_CHANNEL_MASK (0x7)
5095
5096 // args: data (3-bit)
acamera_fpga_fpga_wdr_multiplexor_master_channel_write(uintptr_t base,uint8_t data)5097 static __inline void acamera_fpga_fpga_wdr_multiplexor_master_channel_write(uintptr_t base, uint8_t data) {
5098 uint32_t curr = system_hw_read_32(0x20954cL);
5099 system_hw_write_32(0x20954cL, (((uint32_t) (data & 0x7)) << 0) | (curr & 0xfffffff8));
5100 }
acamera_fpga_fpga_wdr_multiplexor_master_channel_read(uintptr_t base)5101 static __inline uint8_t acamera_fpga_fpga_wdr_multiplexor_master_channel_read(uintptr_t base) {
5102 return (uint8_t)((system_hw_read_32(0x20954cL) & 0x7) >> 0);
5103 }
5104 // ------------------------------------------------------------------------------ //
5105 // Register: Buffer1 Channel
5106 // ------------------------------------------------------------------------------ //
5107
5108 // ------------------------------------------------------------------------------ //
5109 // Input channel for buffer 1
5110 // ------------------------------------------------------------------------------ //
5111
5112 #define ACAMERA_FPGA_FPGA_WDR_MULTIPLEXOR_BUFFER1_CHANNEL_DEFAULT (3)
5113 #define ACAMERA_FPGA_FPGA_WDR_MULTIPLEXOR_BUFFER1_CHANNEL_DATASIZE (3)
5114 #define ACAMERA_FPGA_FPGA_WDR_MULTIPLEXOR_BUFFER1_CHANNEL_OFFSET (0x54c)
5115 #define ACAMERA_FPGA_FPGA_WDR_MULTIPLEXOR_BUFFER1_CHANNEL_MASK (0x700)
5116
5117 // args: data (3-bit)
acamera_fpga_fpga_wdr_multiplexor_buffer1_channel_write(uintptr_t base,uint8_t data)5118 static __inline void acamera_fpga_fpga_wdr_multiplexor_buffer1_channel_write(uintptr_t base, uint8_t data) {
5119 uint32_t curr = system_hw_read_32(0x20954cL);
5120 system_hw_write_32(0x20954cL, (((uint32_t) (data & 0x7)) << 8) | (curr & 0xfffff8ff));
5121 }
acamera_fpga_fpga_wdr_multiplexor_buffer1_channel_read(uintptr_t base)5122 static __inline uint8_t acamera_fpga_fpga_wdr_multiplexor_buffer1_channel_read(uintptr_t base) {
5123 return (uint8_t)((system_hw_read_32(0x20954cL) & 0x700) >> 8);
5124 }
5125 // ------------------------------------------------------------------------------ //
5126 // Register: Buffer2 Channel
5127 // ------------------------------------------------------------------------------ //
5128
5129 // ------------------------------------------------------------------------------ //
5130 // Input channel for buffer 2
5131 // ------------------------------------------------------------------------------ //
5132
5133 #define ACAMERA_FPGA_FPGA_WDR_MULTIPLEXOR_BUFFER2_CHANNEL_DEFAULT (3)
5134 #define ACAMERA_FPGA_FPGA_WDR_MULTIPLEXOR_BUFFER2_CHANNEL_DATASIZE (3)
5135 #define ACAMERA_FPGA_FPGA_WDR_MULTIPLEXOR_BUFFER2_CHANNEL_OFFSET (0x54c)
5136 #define ACAMERA_FPGA_FPGA_WDR_MULTIPLEXOR_BUFFER2_CHANNEL_MASK (0x70000)
5137
5138 // args: data (3-bit)
acamera_fpga_fpga_wdr_multiplexor_buffer2_channel_write(uintptr_t base,uint8_t data)5139 static __inline void acamera_fpga_fpga_wdr_multiplexor_buffer2_channel_write(uintptr_t base, uint8_t data) {
5140 uint32_t curr = system_hw_read_32(0x20954cL);
5141 system_hw_write_32(0x20954cL, (((uint32_t) (data & 0x7)) << 16) | (curr & 0xfff8ffff));
5142 }
acamera_fpga_fpga_wdr_multiplexor_buffer2_channel_read(uintptr_t base)5143 static __inline uint8_t acamera_fpga_fpga_wdr_multiplexor_buffer2_channel_read(uintptr_t base) {
5144 return (uint8_t)((system_hw_read_32(0x20954cL) & 0x70000) >> 16);
5145 }
5146 // ------------------------------------------------------------------------------ //
5147 // Register: Buffer3 Channel
5148 // ------------------------------------------------------------------------------ //
5149
5150 // ------------------------------------------------------------------------------ //
5151 // Input channel for buffer 3
5152 // ------------------------------------------------------------------------------ //
5153
5154 #define ACAMERA_FPGA_FPGA_WDR_MULTIPLEXOR_BUFFER3_CHANNEL_DEFAULT (3)
5155 #define ACAMERA_FPGA_FPGA_WDR_MULTIPLEXOR_BUFFER3_CHANNEL_DATASIZE (3)
5156 #define ACAMERA_FPGA_FPGA_WDR_MULTIPLEXOR_BUFFER3_CHANNEL_OFFSET (0x550)
5157 #define ACAMERA_FPGA_FPGA_WDR_MULTIPLEXOR_BUFFER3_CHANNEL_MASK (0x70000)
5158
5159 // args: data (3-bit)
acamera_fpga_fpga_wdr_multiplexor_buffer3_channel_write(uintptr_t base,uint8_t data)5160 static __inline void acamera_fpga_fpga_wdr_multiplexor_buffer3_channel_write(uintptr_t base, uint8_t data) {
5161 uint32_t curr = system_hw_read_32(0x209550L);
5162 system_hw_write_32(0x209550L, (((uint32_t) (data & 0x7)) << 16) | (curr & 0xfff8ffff));
5163 }
acamera_fpga_fpga_wdr_multiplexor_buffer3_channel_read(uintptr_t base)5164 static __inline uint8_t acamera_fpga_fpga_wdr_multiplexor_buffer3_channel_read(uintptr_t base) {
5165 return (uint8_t)((system_hw_read_32(0x209550L) & 0x70000) >> 16);
5166 }
5167 // ------------------------------------------------------------------------------ //
5168 // Register: Current Channel
5169 // ------------------------------------------------------------------------------ //
5170
5171 // ------------------------------------------------------------------------------ //
5172 // Override input channel
5173 // ------------------------------------------------------------------------------ //
5174
5175 #define ACAMERA_FPGA_FPGA_WDR_MULTIPLEXOR_CURRENT_CHANNEL_DEFAULT (0)
5176 #define ACAMERA_FPGA_FPGA_WDR_MULTIPLEXOR_CURRENT_CHANNEL_DATASIZE (3)
5177 #define ACAMERA_FPGA_FPGA_WDR_MULTIPLEXOR_CURRENT_CHANNEL_OFFSET (0x550)
5178 #define ACAMERA_FPGA_FPGA_WDR_MULTIPLEXOR_CURRENT_CHANNEL_MASK (0x7)
5179
5180 // args: data (3-bit)
acamera_fpga_fpga_wdr_multiplexor_current_channel_write(uintptr_t base,uint8_t data)5181 static __inline void acamera_fpga_fpga_wdr_multiplexor_current_channel_write(uintptr_t base, uint8_t data) {
5182 uint32_t curr = system_hw_read_32(0x209550L);
5183 system_hw_write_32(0x209550L, (((uint32_t) (data & 0x7)) << 0) | (curr & 0xfffffff8));
5184 }
acamera_fpga_fpga_wdr_multiplexor_current_channel_read(uintptr_t base)5185 static __inline uint8_t acamera_fpga_fpga_wdr_multiplexor_current_channel_read(uintptr_t base) {
5186 return (uint8_t)((system_hw_read_32(0x209550L) & 0x7) >> 0);
5187 }
5188 // ------------------------------------------------------------------------------ //
5189 // Register: Current Channel out
5190 // ------------------------------------------------------------------------------ //
5191
5192 // ------------------------------------------------------------------------------ //
5193 // Override input channel
5194 // ------------------------------------------------------------------------------ //
5195
5196 #define ACAMERA_FPGA_FPGA_WDR_MULTIPLEXOR_CURRENT_CHANNEL_OUT_DEFAULT (0x0)
5197 #define ACAMERA_FPGA_FPGA_WDR_MULTIPLEXOR_CURRENT_CHANNEL_OUT_DATASIZE (2)
5198 #define ACAMERA_FPGA_FPGA_WDR_MULTIPLEXOR_CURRENT_CHANNEL_OUT_OFFSET (0x554)
5199 #define ACAMERA_FPGA_FPGA_WDR_MULTIPLEXOR_CURRENT_CHANNEL_OUT_MASK (0x3)
5200
5201 // args: data (2-bit)
acamera_fpga_fpga_wdr_multiplexor_current_channel_out_read(uintptr_t base)5202 static __inline uint8_t acamera_fpga_fpga_wdr_multiplexor_current_channel_out_read(uintptr_t base) {
5203 return (uint8_t)((system_hw_read_32(0x209554L) & 0x3) >> 0);
5204 }
5205 // ------------------------------------------------------------------------------ //
5206 // Register: Master Gain
5207 // ------------------------------------------------------------------------------ //
5208
5209 // ------------------------------------------------------------------------------ //
5210 // Output gain for channel, format uint8.8
5211 // ------------------------------------------------------------------------------ //
5212
5213 #define ACAMERA_FPGA_FPGA_WDR_MULTIPLEXOR_MASTER_GAIN_DEFAULT (0x100)
5214 #define ACAMERA_FPGA_FPGA_WDR_MULTIPLEXOR_MASTER_GAIN_DATASIZE (16)
5215 #define ACAMERA_FPGA_FPGA_WDR_MULTIPLEXOR_MASTER_GAIN_OFFSET (0x554)
5216 #define ACAMERA_FPGA_FPGA_WDR_MULTIPLEXOR_MASTER_GAIN_MASK (0xffff0000)
5217
5218 // args: data (16-bit)
acamera_fpga_fpga_wdr_multiplexor_master_gain_write(uintptr_t base,uint16_t data)5219 static __inline void acamera_fpga_fpga_wdr_multiplexor_master_gain_write(uintptr_t base, uint16_t data) {
5220 uint32_t curr = system_hw_read_32(0x209554L);
5221 system_hw_write_32(0x209554L, (((uint32_t) (data & 0xffff)) << 16) | (curr & 0xffff));
5222 }
acamera_fpga_fpga_wdr_multiplexor_master_gain_read(uintptr_t base)5223 static __inline uint16_t acamera_fpga_fpga_wdr_multiplexor_master_gain_read(uintptr_t base) {
5224 return (uint16_t)((system_hw_read_32(0x209554L) & 0xffff0000) >> 16);
5225 }
5226 // ------------------------------------------------------------------------------ //
5227 // Register: Buffer1 Gain
5228 // ------------------------------------------------------------------------------ //
5229
5230 // ------------------------------------------------------------------------------ //
5231 // Output gain for channel, format uint8.8
5232 // ------------------------------------------------------------------------------ //
5233
5234 #define ACAMERA_FPGA_FPGA_WDR_MULTIPLEXOR_BUFFER1_GAIN_DEFAULT (0x100)
5235 #define ACAMERA_FPGA_FPGA_WDR_MULTIPLEXOR_BUFFER1_GAIN_DATASIZE (16)
5236 #define ACAMERA_FPGA_FPGA_WDR_MULTIPLEXOR_BUFFER1_GAIN_OFFSET (0x558)
5237 #define ACAMERA_FPGA_FPGA_WDR_MULTIPLEXOR_BUFFER1_GAIN_MASK (0xffff)
5238
5239 // args: data (16-bit)
acamera_fpga_fpga_wdr_multiplexor_buffer1_gain_write(uintptr_t base,uint16_t data)5240 static __inline void acamera_fpga_fpga_wdr_multiplexor_buffer1_gain_write(uintptr_t base, uint16_t data) {
5241 uint32_t curr = system_hw_read_32(0x209558L);
5242 system_hw_write_32(0x209558L, (((uint32_t) (data & 0xffff)) << 0) | (curr & 0xffff0000));
5243 }
acamera_fpga_fpga_wdr_multiplexor_buffer1_gain_read(uintptr_t base)5244 static __inline uint16_t acamera_fpga_fpga_wdr_multiplexor_buffer1_gain_read(uintptr_t base) {
5245 return (uint16_t)((system_hw_read_32(0x209558L) & 0xffff) >> 0);
5246 }
5247 // ------------------------------------------------------------------------------ //
5248 // Register: Buffer2 Gain
5249 // ------------------------------------------------------------------------------ //
5250
5251 // ------------------------------------------------------------------------------ //
5252 // Output gain for channel, format uint8.8
5253 // ------------------------------------------------------------------------------ //
5254
5255 #define ACAMERA_FPGA_FPGA_WDR_MULTIPLEXOR_BUFFER2_GAIN_DEFAULT (0x100)
5256 #define ACAMERA_FPGA_FPGA_WDR_MULTIPLEXOR_BUFFER2_GAIN_DATASIZE (16)
5257 #define ACAMERA_FPGA_FPGA_WDR_MULTIPLEXOR_BUFFER2_GAIN_OFFSET (0x558)
5258 #define ACAMERA_FPGA_FPGA_WDR_MULTIPLEXOR_BUFFER2_GAIN_MASK (0xffff0000)
5259
5260 // args: data (16-bit)
acamera_fpga_fpga_wdr_multiplexor_buffer2_gain_write(uintptr_t base,uint16_t data)5261 static __inline void acamera_fpga_fpga_wdr_multiplexor_buffer2_gain_write(uintptr_t base, uint16_t data) {
5262 uint32_t curr = system_hw_read_32(0x209558L);
5263 system_hw_write_32(0x209558L, (((uint32_t) (data & 0xffff)) << 16) | (curr & 0xffff));
5264 }
acamera_fpga_fpga_wdr_multiplexor_buffer2_gain_read(uintptr_t base)5265 static __inline uint16_t acamera_fpga_fpga_wdr_multiplexor_buffer2_gain_read(uintptr_t base) {
5266 return (uint16_t)((system_hw_read_32(0x209558L) & 0xffff0000) >> 16);
5267 }
5268 // ------------------------------------------------------------------------------ //
5269 // Register: Buffer3 Gain
5270 // ------------------------------------------------------------------------------ //
5271
5272 // ------------------------------------------------------------------------------ //
5273 // Output gain for channel, format uint8.8
5274 // ------------------------------------------------------------------------------ //
5275
5276 #define ACAMERA_FPGA_FPGA_WDR_MULTIPLEXOR_BUFFER3_GAIN_DEFAULT (0x100)
5277 #define ACAMERA_FPGA_FPGA_WDR_MULTIPLEXOR_BUFFER3_GAIN_DATASIZE (16)
5278 #define ACAMERA_FPGA_FPGA_WDR_MULTIPLEXOR_BUFFER3_GAIN_OFFSET (0x55c)
5279 #define ACAMERA_FPGA_FPGA_WDR_MULTIPLEXOR_BUFFER3_GAIN_MASK (0xffff)
5280
5281 // args: data (16-bit)
acamera_fpga_fpga_wdr_multiplexor_buffer3_gain_write(uintptr_t base,uint16_t data)5282 static __inline void acamera_fpga_fpga_wdr_multiplexor_buffer3_gain_write(uintptr_t base, uint16_t data) {
5283 uint32_t curr = system_hw_read_32(0x20955cL);
5284 system_hw_write_32(0x20955cL, (((uint32_t) (data & 0xffff)) << 0) | (curr & 0xffff0000));
5285 }
acamera_fpga_fpga_wdr_multiplexor_buffer3_gain_read(uintptr_t base)5286 static __inline uint16_t acamera_fpga_fpga_wdr_multiplexor_buffer3_gain_read(uintptr_t base) {
5287 return (uint16_t)((system_hw_read_32(0x20955cL) & 0xffff) >> 0);
5288 }
5289 // ------------------------------------------------------------------------------ //
5290 // Group: Video-Capture-2 Input port
5291 // ------------------------------------------------------------------------------ //
5292
5293 // ------------------------------------------------------------------------------ //
5294 // Controls video input port.
5295 // ------------------------------------------------------------------------------ //
5296
5297 // ------------------------------------------------------------------------------ //
5298 // Register: preset
5299 // ------------------------------------------------------------------------------ //
5300
5301 // ------------------------------------------------------------------------------ //
5302 //
5303 // Allows selection of various input port presets for standard sensor inputs. See ISP Guide for details of available presets.
5304 // 0-14: Frequently used presets. If using one of available presets, remaining bits in registers 0x100 and 0x104 are not used.
5305 // 15: Input port configured according to registers in 0x100 and 0x104. Consult Apical support for special input port requirements.
5306 //
5307 // ------------------------------------------------------------------------------ //
5308
5309 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_PRESET_DEFAULT (2)
5310 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_PRESET_DATASIZE (4)
5311 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_PRESET_OFFSET (0x658)
5312 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_PRESET_MASK (0xf)
5313
5314 // args: data (4-bit)
acamera_fpga_video_capture2_input_port_preset_write(uintptr_t base,uint8_t data)5315 static __inline void acamera_fpga_video_capture2_input_port_preset_write(uintptr_t base, uint8_t data) {
5316 uint32_t curr = system_hw_read_32(0x209658L);
5317 system_hw_write_32(0x209658L, (((uint32_t) (data & 0xf)) << 0) | (curr & 0xfffffff0));
5318 }
acamera_fpga_video_capture2_input_port_preset_read(uintptr_t base)5319 static __inline uint8_t acamera_fpga_video_capture2_input_port_preset_read(uintptr_t base) {
5320 return (uint8_t)((system_hw_read_32(0x209658L) & 0xf) >> 0);
5321 }
5322 // ------------------------------------------------------------------------------ //
5323 // Register: vs_use field
5324 // ------------------------------------------------------------------------------ //
5325
5326 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_VS_USE_FIELD_DEFAULT (0)
5327 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_VS_USE_FIELD_DATASIZE (1)
5328 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_VS_USE_FIELD_OFFSET (0x658)
5329 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_VS_USE_FIELD_MASK (0x100)
5330 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_VS_USE_FIELD_USE_VSYNC_I_PORT_FOR_VERTICAL_SYNC (0)
5331 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_VS_USE_FIELD_USE_FIELD_I_PORT_FOR_VERTICAL_SYNC (1)
5332
5333 // args: data (1-bit)
acamera_fpga_video_capture2_input_port_vs_use_field_write(uintptr_t base,uint8_t data)5334 static __inline void acamera_fpga_video_capture2_input_port_vs_use_field_write(uintptr_t base, uint8_t data) {
5335 uint32_t curr = system_hw_read_32(0x209658L);
5336 system_hw_write_32(0x209658L, (((uint32_t) (data & 0x1)) << 8) | (curr & 0xfffffeff));
5337 }
acamera_fpga_video_capture2_input_port_vs_use_field_read(uintptr_t base)5338 static __inline uint8_t acamera_fpga_video_capture2_input_port_vs_use_field_read(uintptr_t base) {
5339 return (uint8_t)((system_hw_read_32(0x209658L) & 0x100) >> 8);
5340 }
5341 // ------------------------------------------------------------------------------ //
5342 // Register: vs toggle
5343 // ------------------------------------------------------------------------------ //
5344
5345 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_VS_TOGGLE_DEFAULT (0)
5346 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_VS_TOGGLE_DATASIZE (1)
5347 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_VS_TOGGLE_OFFSET (0x658)
5348 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_VS_TOGGLE_MASK (0x200)
5349 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_VS_TOGGLE_VSYNC_IS_PULSETYPE (0)
5350 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_VS_TOGGLE_VSYNC_IS_TOGGLETYPE_FIELD_SIGNAL (1)
5351
5352 // args: data (1-bit)
acamera_fpga_video_capture2_input_port_vs_toggle_write(uintptr_t base,uint8_t data)5353 static __inline void acamera_fpga_video_capture2_input_port_vs_toggle_write(uintptr_t base, uint8_t data) {
5354 uint32_t curr = system_hw_read_32(0x209658L);
5355 system_hw_write_32(0x209658L, (((uint32_t) (data & 0x1)) << 9) | (curr & 0xfffffdff));
5356 }
acamera_fpga_video_capture2_input_port_vs_toggle_read(uintptr_t base)5357 static __inline uint8_t acamera_fpga_video_capture2_input_port_vs_toggle_read(uintptr_t base) {
5358 return (uint8_t)((system_hw_read_32(0x209658L) & 0x200) >> 9);
5359 }
5360 // ------------------------------------------------------------------------------ //
5361 // Register: vs polarity
5362 // ------------------------------------------------------------------------------ //
5363
5364 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_VS_POLARITY_DEFAULT (0)
5365 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_VS_POLARITY_DATASIZE (1)
5366 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_VS_POLARITY_OFFSET (0x658)
5367 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_VS_POLARITY_MASK (0x400)
5368 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_VS_POLARITY_HORIZONTAL_COUNTER_RESET_ON_RISING_EDGE (0)
5369 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_VS_POLARITY_HORIZONTAL_COUNTER_RESET_ON_FALLING_EDGE (1)
5370
5371 // args: data (1-bit)
acamera_fpga_video_capture2_input_port_vs_polarity_write(uintptr_t base,uint8_t data)5372 static __inline void acamera_fpga_video_capture2_input_port_vs_polarity_write(uintptr_t base, uint8_t data) {
5373 uint32_t curr = system_hw_read_32(0x209658L);
5374 system_hw_write_32(0x209658L, (((uint32_t) (data & 0x1)) << 10) | (curr & 0xfffffbff));
5375 }
acamera_fpga_video_capture2_input_port_vs_polarity_read(uintptr_t base)5376 static __inline uint8_t acamera_fpga_video_capture2_input_port_vs_polarity_read(uintptr_t base) {
5377 return (uint8_t)((system_hw_read_32(0x209658L) & 0x400) >> 10);
5378 }
5379 // ------------------------------------------------------------------------------ //
5380 // Register: vs_polarity acl
5381 // ------------------------------------------------------------------------------ //
5382
5383 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_VS_POLARITY_ACL_DEFAULT (0)
5384 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_VS_POLARITY_ACL_DATASIZE (1)
5385 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_VS_POLARITY_ACL_OFFSET (0x658)
5386 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_VS_POLARITY_ACL_MASK (0x800)
5387 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_VS_POLARITY_ACL_DONT_INVERT_POLARITY_FOR_ACL_GATE (0)
5388 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_VS_POLARITY_ACL_INVERT_POLARITY_FOR_ACL_GATE (1)
5389
5390 // args: data (1-bit)
acamera_fpga_video_capture2_input_port_vs_polarity_acl_write(uintptr_t base,uint8_t data)5391 static __inline void acamera_fpga_video_capture2_input_port_vs_polarity_acl_write(uintptr_t base, uint8_t data) {
5392 uint32_t curr = system_hw_read_32(0x209658L);
5393 system_hw_write_32(0x209658L, (((uint32_t) (data & 0x1)) << 11) | (curr & 0xfffff7ff));
5394 }
acamera_fpga_video_capture2_input_port_vs_polarity_acl_read(uintptr_t base)5395 static __inline uint8_t acamera_fpga_video_capture2_input_port_vs_polarity_acl_read(uintptr_t base) {
5396 return (uint8_t)((system_hw_read_32(0x209658L) & 0x800) >> 11);
5397 }
5398 // ------------------------------------------------------------------------------ //
5399 // Register: hs_use acl
5400 // ------------------------------------------------------------------------------ //
5401
5402 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_HS_USE_ACL_DEFAULT (0)
5403 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_HS_USE_ACL_DATASIZE (1)
5404 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_HS_USE_ACL_OFFSET (0x658)
5405 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_HS_USE_ACL_MASK (0x1000)
5406 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_HS_USE_ACL_USE_HSYNC_I_PORT_FOR_ACTIVELINE (0)
5407 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_HS_USE_ACL_USE_ACL_I_PORT_FOR_ACTIVELINE (1)
5408
5409 // args: data (1-bit)
acamera_fpga_video_capture2_input_port_hs_use_acl_write(uintptr_t base,uint8_t data)5410 static __inline void acamera_fpga_video_capture2_input_port_hs_use_acl_write(uintptr_t base, uint8_t data) {
5411 uint32_t curr = system_hw_read_32(0x209658L);
5412 system_hw_write_32(0x209658L, (((uint32_t) (data & 0x1)) << 12) | (curr & 0xffffefff));
5413 }
acamera_fpga_video_capture2_input_port_hs_use_acl_read(uintptr_t base)5414 static __inline uint8_t acamera_fpga_video_capture2_input_port_hs_use_acl_read(uintptr_t base) {
5415 return (uint8_t)((system_hw_read_32(0x209658L) & 0x1000) >> 12);
5416 }
5417 // ------------------------------------------------------------------------------ //
5418 // Register: vc_c select
5419 // ------------------------------------------------------------------------------ //
5420
5421 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_VC_C_SELECT_DEFAULT (0)
5422 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_VC_C_SELECT_DATASIZE (1)
5423 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_VC_C_SELECT_OFFSET (0x658)
5424 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_VC_C_SELECT_MASK (0x4000)
5425 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_VC_C_SELECT_VERTICAL_COUNTER_COUNTS_ON_HS (0)
5426 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_VC_C_SELECT_VERTICAL_COUNTER_COUNTS_ON_HORIZONTAL_COUNTER_OVERFLOW_OR_RESET (1)
5427
5428 // args: data (1-bit)
acamera_fpga_video_capture2_input_port_vc_c_select_write(uintptr_t base,uint8_t data)5429 static __inline void acamera_fpga_video_capture2_input_port_vc_c_select_write(uintptr_t base, uint8_t data) {
5430 uint32_t curr = system_hw_read_32(0x209658L);
5431 system_hw_write_32(0x209658L, (((uint32_t) (data & 0x1)) << 14) | (curr & 0xffffbfff));
5432 }
acamera_fpga_video_capture2_input_port_vc_c_select_read(uintptr_t base)5433 static __inline uint8_t acamera_fpga_video_capture2_input_port_vc_c_select_read(uintptr_t base) {
5434 return (uint8_t)((system_hw_read_32(0x209658L) & 0x4000) >> 14);
5435 }
5436 // ------------------------------------------------------------------------------ //
5437 // Register: vc_r select
5438 // ------------------------------------------------------------------------------ //
5439
5440 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_VC_R_SELECT_DEFAULT (0)
5441 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_VC_R_SELECT_DATASIZE (1)
5442 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_VC_R_SELECT_OFFSET (0x658)
5443 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_VC_R_SELECT_MASK (0x8000)
5444 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_VC_R_SELECT_VERTICAL_COUNTER_IS_RESET_ON_EDGE_OF_VS (0)
5445 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_VC_R_SELECT_VERTICAL_COUNTER_IS_RESET_AFTER_TIMEOUT_ON_HS (1)
5446
5447 // args: data (1-bit)
acamera_fpga_video_capture2_input_port_vc_r_select_write(uintptr_t base,uint8_t data)5448 static __inline void acamera_fpga_video_capture2_input_port_vc_r_select_write(uintptr_t base, uint8_t data) {
5449 uint32_t curr = system_hw_read_32(0x209658L);
5450 system_hw_write_32(0x209658L, (((uint32_t) (data & 0x1)) << 15) | (curr & 0xffff7fff));
5451 }
acamera_fpga_video_capture2_input_port_vc_r_select_read(uintptr_t base)5452 static __inline uint8_t acamera_fpga_video_capture2_input_port_vc_r_select_read(uintptr_t base) {
5453 return (uint8_t)((system_hw_read_32(0x209658L) & 0x8000) >> 15);
5454 }
5455 // ------------------------------------------------------------------------------ //
5456 // Register: hs_xor vs
5457 // ------------------------------------------------------------------------------ //
5458
5459 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_HS_XOR_VS_DEFAULT (0)
5460 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_HS_XOR_VS_DATASIZE (1)
5461 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_HS_XOR_VS_OFFSET (0x658)
5462 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_HS_XOR_VS_MASK (0x10000)
5463 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_HS_XOR_VS_NORMAL_MODE (0)
5464 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_HS_XOR_VS_HVALID__HSYNC_XOR_VSYNC (1)
5465
5466 // args: data (1-bit)
acamera_fpga_video_capture2_input_port_hs_xor_vs_write(uintptr_t base,uint8_t data)5467 static __inline void acamera_fpga_video_capture2_input_port_hs_xor_vs_write(uintptr_t base, uint8_t data) {
5468 uint32_t curr = system_hw_read_32(0x209658L);
5469 system_hw_write_32(0x209658L, (((uint32_t) (data & 0x1)) << 16) | (curr & 0xfffeffff));
5470 }
acamera_fpga_video_capture2_input_port_hs_xor_vs_read(uintptr_t base)5471 static __inline uint8_t acamera_fpga_video_capture2_input_port_hs_xor_vs_read(uintptr_t base) {
5472 return (uint8_t)((system_hw_read_32(0x209658L) & 0x10000) >> 16);
5473 }
5474 // ------------------------------------------------------------------------------ //
5475 // Register: hs polarity
5476 // ------------------------------------------------------------------------------ //
5477
5478 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_HS_POLARITY_DEFAULT (0)
5479 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_HS_POLARITY_DATASIZE (1)
5480 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_HS_POLARITY_OFFSET (0x658)
5481 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_HS_POLARITY_MASK (0x20000)
5482 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_HS_POLARITY_DONT_INVERT_POLARITY_OF_HS_FOR_ACL_GATE (0)
5483 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_HS_POLARITY_INVERT_POLARITY_OF_HS_FOR_ACL_GATE (1)
5484
5485 // args: data (1-bit)
acamera_fpga_video_capture2_input_port_hs_polarity_write(uintptr_t base,uint8_t data)5486 static __inline void acamera_fpga_video_capture2_input_port_hs_polarity_write(uintptr_t base, uint8_t data) {
5487 uint32_t curr = system_hw_read_32(0x209658L);
5488 system_hw_write_32(0x209658L, (((uint32_t) (data & 0x1)) << 17) | (curr & 0xfffdffff));
5489 }
acamera_fpga_video_capture2_input_port_hs_polarity_read(uintptr_t base)5490 static __inline uint8_t acamera_fpga_video_capture2_input_port_hs_polarity_read(uintptr_t base) {
5491 return (uint8_t)((system_hw_read_32(0x209658L) & 0x20000) >> 17);
5492 }
5493 // ------------------------------------------------------------------------------ //
5494 // Register: hs_polarity acl
5495 // ------------------------------------------------------------------------------ //
5496
5497 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_HS_POLARITY_ACL_DEFAULT (0)
5498 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_HS_POLARITY_ACL_DATASIZE (1)
5499 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_HS_POLARITY_ACL_OFFSET (0x658)
5500 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_HS_POLARITY_ACL_MASK (0x40000)
5501 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_HS_POLARITY_ACL_DONT_INVERT_POLARITY_OF_HS_FOR_HS_GATE (0)
5502 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_HS_POLARITY_ACL_INVERT_POLARITY_OF_HS_FOR_HS_GATE (1)
5503
5504 // args: data (1-bit)
acamera_fpga_video_capture2_input_port_hs_polarity_acl_write(uintptr_t base,uint8_t data)5505 static __inline void acamera_fpga_video_capture2_input_port_hs_polarity_acl_write(uintptr_t base, uint8_t data) {
5506 uint32_t curr = system_hw_read_32(0x209658L);
5507 system_hw_write_32(0x209658L, (((uint32_t) (data & 0x1)) << 18) | (curr & 0xfffbffff));
5508 }
acamera_fpga_video_capture2_input_port_hs_polarity_acl_read(uintptr_t base)5509 static __inline uint8_t acamera_fpga_video_capture2_input_port_hs_polarity_acl_read(uintptr_t base) {
5510 return (uint8_t)((system_hw_read_32(0x209658L) & 0x40000) >> 18);
5511 }
5512 // ------------------------------------------------------------------------------ //
5513 // Register: hs_polarity hs
5514 // ------------------------------------------------------------------------------ //
5515
5516 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_HS_POLARITY_HS_DEFAULT (0)
5517 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_HS_POLARITY_HS_DATASIZE (1)
5518 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_HS_POLARITY_HS_OFFSET (0x658)
5519 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_HS_POLARITY_HS_MASK (0x80000)
5520 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_HS_POLARITY_HS_HORIZONTAL_COUNTER_IS_RESET_ON_RISING_EDGE_OF_HS (0)
5521 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_HS_POLARITY_HS_HORIZONTAL_COUNTER_IS_RESET_ON_VSYNC_EG_WHEN_HSYNC_IS_NOT_AVAILABLE (1)
5522
5523 // args: data (1-bit)
acamera_fpga_video_capture2_input_port_hs_polarity_hs_write(uintptr_t base,uint8_t data)5524 static __inline void acamera_fpga_video_capture2_input_port_hs_polarity_hs_write(uintptr_t base, uint8_t data) {
5525 uint32_t curr = system_hw_read_32(0x209658L);
5526 system_hw_write_32(0x209658L, (((uint32_t) (data & 0x1)) << 19) | (curr & 0xfff7ffff));
5527 }
acamera_fpga_video_capture2_input_port_hs_polarity_hs_read(uintptr_t base)5528 static __inline uint8_t acamera_fpga_video_capture2_input_port_hs_polarity_hs_read(uintptr_t base) {
5529 return (uint8_t)((system_hw_read_32(0x209658L) & 0x80000) >> 19);
5530 }
5531 // ------------------------------------------------------------------------------ //
5532 // Register: hs_polarity vc
5533 // ------------------------------------------------------------------------------ //
5534
5535 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_HS_POLARITY_VC_DEFAULT (1)
5536 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_HS_POLARITY_VC_DATASIZE (1)
5537 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_HS_POLARITY_VC_OFFSET (0x658)
5538 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_HS_POLARITY_VC_MASK (0x100000)
5539 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_HS_POLARITY_VC_VERTICAL_COUNTER_INCREMENTS_ON_RISING_EDGE_OF_HS (0)
5540 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_HS_POLARITY_VC_VERTICAL_COUNTER_INCREMENTS_ON_FALLING_EDGE_OF_HS (1)
5541
5542 // args: data (1-bit)
acamera_fpga_video_capture2_input_port_hs_polarity_vc_write(uintptr_t base,uint8_t data)5543 static __inline void acamera_fpga_video_capture2_input_port_hs_polarity_vc_write(uintptr_t base, uint8_t data) {
5544 uint32_t curr = system_hw_read_32(0x209658L);
5545 system_hw_write_32(0x209658L, (((uint32_t) (data & 0x1)) << 20) | (curr & 0xffefffff));
5546 }
acamera_fpga_video_capture2_input_port_hs_polarity_vc_read(uintptr_t base)5547 static __inline uint8_t acamera_fpga_video_capture2_input_port_hs_polarity_vc_read(uintptr_t base) {
5548 return (uint8_t)((system_hw_read_32(0x209658L) & 0x100000) >> 20);
5549 }
5550 // ------------------------------------------------------------------------------ //
5551 // Register: hc_r select
5552 // ------------------------------------------------------------------------------ //
5553
5554 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_HC_R_SELECT_DEFAULT (0)
5555 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_HC_R_SELECT_DATASIZE (1)
5556 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_HC_R_SELECT_OFFSET (0x658)
5557 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_HC_R_SELECT_MASK (0x800000)
5558 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_HC_R_SELECT_VERTICAL_COUNTER_IS_RESET_ON_RISING_EDGE_OF_HS (0)
5559 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_HC_R_SELECT_VERTICAL_COUNTER_IS_RESET_ON_RISING_EDGE_OF_VS (1)
5560
5561 // args: data (1-bit)
acamera_fpga_video_capture2_input_port_hc_r_select_write(uintptr_t base,uint8_t data)5562 static __inline void acamera_fpga_video_capture2_input_port_hc_r_select_write(uintptr_t base, uint8_t data) {
5563 uint32_t curr = system_hw_read_32(0x209658L);
5564 system_hw_write_32(0x209658L, (((uint32_t) (data & 0x1)) << 23) | (curr & 0xff7fffff));
5565 }
acamera_fpga_video_capture2_input_port_hc_r_select_read(uintptr_t base)5566 static __inline uint8_t acamera_fpga_video_capture2_input_port_hc_r_select_read(uintptr_t base) {
5567 return (uint8_t)((system_hw_read_32(0x209658L) & 0x800000) >> 23);
5568 }
5569 // ------------------------------------------------------------------------------ //
5570 // Register: acl polarity
5571 // ------------------------------------------------------------------------------ //
5572
5573 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_ACL_POLARITY_DEFAULT (0)
5574 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_ACL_POLARITY_DATASIZE (1)
5575 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_ACL_POLARITY_OFFSET (0x658)
5576 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_ACL_POLARITY_MASK (0x1000000)
5577 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_ACL_POLARITY_DONT_INVERT_ACL_I_FOR_ACL_GATE (0)
5578 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_ACL_POLARITY_INVERT_ACL_I_FOR_ACL_GATE (1)
5579
5580 // args: data (1-bit)
acamera_fpga_video_capture2_input_port_acl_polarity_write(uintptr_t base,uint8_t data)5581 static __inline void acamera_fpga_video_capture2_input_port_acl_polarity_write(uintptr_t base, uint8_t data) {
5582 uint32_t curr = system_hw_read_32(0x209658L);
5583 system_hw_write_32(0x209658L, (((uint32_t) (data & 0x1)) << 24) | (curr & 0xfeffffff));
5584 }
acamera_fpga_video_capture2_input_port_acl_polarity_read(uintptr_t base)5585 static __inline uint8_t acamera_fpga_video_capture2_input_port_acl_polarity_read(uintptr_t base) {
5586 return (uint8_t)((system_hw_read_32(0x209658L) & 0x1000000) >> 24);
5587 }
5588 // ------------------------------------------------------------------------------ //
5589 // Register: field polarity
5590 // ------------------------------------------------------------------------------ //
5591
5592 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_FIELD_POLARITY_DEFAULT (0)
5593 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_FIELD_POLARITY_DATASIZE (1)
5594 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_FIELD_POLARITY_OFFSET (0x65c)
5595 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_FIELD_POLARITY_MASK (0x1)
5596 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_FIELD_POLARITY_DONT_INVERT_FIELD_I_FOR_FIELD_GATE (0)
5597 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_FIELD_POLARITY_INVERT_FIELD_I_FOR_FIELD_GATE (1)
5598
5599 // args: data (1-bit)
acamera_fpga_video_capture2_input_port_field_polarity_write(uintptr_t base,uint8_t data)5600 static __inline void acamera_fpga_video_capture2_input_port_field_polarity_write(uintptr_t base, uint8_t data) {
5601 uint32_t curr = system_hw_read_32(0x20965cL);
5602 system_hw_write_32(0x20965cL, (((uint32_t) (data & 0x1)) << 0) | (curr & 0xfffffffe));
5603 }
acamera_fpga_video_capture2_input_port_field_polarity_read(uintptr_t base)5604 static __inline uint8_t acamera_fpga_video_capture2_input_port_field_polarity_read(uintptr_t base) {
5605 return (uint8_t)((system_hw_read_32(0x20965cL) & 0x1) >> 0);
5606 }
5607 // ------------------------------------------------------------------------------ //
5608 // Register: field toggle
5609 // ------------------------------------------------------------------------------ //
5610
5611 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_FIELD_TOGGLE_DEFAULT (0)
5612 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_FIELD_TOGGLE_DATASIZE (1)
5613 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_FIELD_TOGGLE_OFFSET (0x65c)
5614 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_FIELD_TOGGLE_MASK (0x2)
5615 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_FIELD_TOGGLE_FIELD_IS_PULSETYPE (0)
5616 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_FIELD_TOGGLE_FIELD_IS_TOGGLETYPE (1)
5617
5618 // args: data (1-bit)
acamera_fpga_video_capture2_input_port_field_toggle_write(uintptr_t base,uint8_t data)5619 static __inline void acamera_fpga_video_capture2_input_port_field_toggle_write(uintptr_t base, uint8_t data) {
5620 uint32_t curr = system_hw_read_32(0x20965cL);
5621 system_hw_write_32(0x20965cL, (((uint32_t) (data & 0x1)) << 1) | (curr & 0xfffffffd));
5622 }
acamera_fpga_video_capture2_input_port_field_toggle_read(uintptr_t base)5623 static __inline uint8_t acamera_fpga_video_capture2_input_port_field_toggle_read(uintptr_t base) {
5624 return (uint8_t)((system_hw_read_32(0x20965cL) & 0x2) >> 1);
5625 }
5626 // ------------------------------------------------------------------------------ //
5627 // Register: aclg window0
5628 // ------------------------------------------------------------------------------ //
5629
5630 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_ACLG_WINDOW0_DEFAULT (0)
5631 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_ACLG_WINDOW0_DATASIZE (1)
5632 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_ACLG_WINDOW0_OFFSET (0x65c)
5633 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_ACLG_WINDOW0_MASK (0x100)
5634 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_ACLG_WINDOW0_EXCLUDE_WINDOW0_SIGNAL_IN_ACL_GATE (0)
5635 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_ACLG_WINDOW0_INCLUDE_WINDOW0_SIGNAL_IN_ACL_GATE (1)
5636
5637 // args: data (1-bit)
acamera_fpga_video_capture2_input_port_aclg_window0_write(uintptr_t base,uint8_t data)5638 static __inline void acamera_fpga_video_capture2_input_port_aclg_window0_write(uintptr_t base, uint8_t data) {
5639 uint32_t curr = system_hw_read_32(0x20965cL);
5640 system_hw_write_32(0x20965cL, (((uint32_t) (data & 0x1)) << 8) | (curr & 0xfffffeff));
5641 }
acamera_fpga_video_capture2_input_port_aclg_window0_read(uintptr_t base)5642 static __inline uint8_t acamera_fpga_video_capture2_input_port_aclg_window0_read(uintptr_t base) {
5643 return (uint8_t)((system_hw_read_32(0x20965cL) & 0x100) >> 8);
5644 }
5645 // ------------------------------------------------------------------------------ //
5646 // Register: aclg hsync
5647 // ------------------------------------------------------------------------------ //
5648
5649 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_ACLG_HSYNC_DEFAULT (0)
5650 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_ACLG_HSYNC_DATASIZE (1)
5651 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_ACLG_HSYNC_OFFSET (0x65c)
5652 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_ACLG_HSYNC_MASK (0x200)
5653 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_ACLG_HSYNC_EXCLUDE_HSYNC_SIGNAL_IN_ACL_GATE (0)
5654 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_ACLG_HSYNC_INCLUDE_HSYNC_SIGNAL_IN_ACL_GATE (1)
5655
5656 // args: data (1-bit)
acamera_fpga_video_capture2_input_port_aclg_hsync_write(uintptr_t base,uint8_t data)5657 static __inline void acamera_fpga_video_capture2_input_port_aclg_hsync_write(uintptr_t base, uint8_t data) {
5658 uint32_t curr = system_hw_read_32(0x20965cL);
5659 system_hw_write_32(0x20965cL, (((uint32_t) (data & 0x1)) << 9) | (curr & 0xfffffdff));
5660 }
acamera_fpga_video_capture2_input_port_aclg_hsync_read(uintptr_t base)5661 static __inline uint8_t acamera_fpga_video_capture2_input_port_aclg_hsync_read(uintptr_t base) {
5662 return (uint8_t)((system_hw_read_32(0x20965cL) & 0x200) >> 9);
5663 }
5664 // ------------------------------------------------------------------------------ //
5665 // Register: aclg window2
5666 // ------------------------------------------------------------------------------ //
5667
5668 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_ACLG_WINDOW2_DEFAULT (0)
5669 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_ACLG_WINDOW2_DATASIZE (1)
5670 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_ACLG_WINDOW2_OFFSET (0x65c)
5671 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_ACLG_WINDOW2_MASK (0x400)
5672 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_ACLG_WINDOW2_EXCLUDE_WINDOW2_SIGNAL_IN_ACL_GATE (0)
5673 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_ACLG_WINDOW2_INCLUDE_WINDOW2_SIGNAL_IN_ACL_GATE (1)
5674
5675 // args: data (1-bit)
acamera_fpga_video_capture2_input_port_aclg_window2_write(uintptr_t base,uint8_t data)5676 static __inline void acamera_fpga_video_capture2_input_port_aclg_window2_write(uintptr_t base, uint8_t data) {
5677 uint32_t curr = system_hw_read_32(0x20965cL);
5678 system_hw_write_32(0x20965cL, (((uint32_t) (data & 0x1)) << 10) | (curr & 0xfffffbff));
5679 }
acamera_fpga_video_capture2_input_port_aclg_window2_read(uintptr_t base)5680 static __inline uint8_t acamera_fpga_video_capture2_input_port_aclg_window2_read(uintptr_t base) {
5681 return (uint8_t)((system_hw_read_32(0x20965cL) & 0x400) >> 10);
5682 }
5683 // ------------------------------------------------------------------------------ //
5684 // Register: aclg acl
5685 // ------------------------------------------------------------------------------ //
5686
5687 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_ACLG_ACL_DEFAULT (0)
5688 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_ACLG_ACL_DATASIZE (1)
5689 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_ACLG_ACL_OFFSET (0x65c)
5690 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_ACLG_ACL_MASK (0x800)
5691 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_ACLG_ACL_EXCLUDE_ACL_I_SIGNAL_IN_ACL_GATE (0)
5692 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_ACLG_ACL_INCLUDE_ACL_I_SIGNAL_IN_ACL_GATE (1)
5693
5694 // args: data (1-bit)
acamera_fpga_video_capture2_input_port_aclg_acl_write(uintptr_t base,uint8_t data)5695 static __inline void acamera_fpga_video_capture2_input_port_aclg_acl_write(uintptr_t base, uint8_t data) {
5696 uint32_t curr = system_hw_read_32(0x20965cL);
5697 system_hw_write_32(0x20965cL, (((uint32_t) (data & 0x1)) << 11) | (curr & 0xfffff7ff));
5698 }
acamera_fpga_video_capture2_input_port_aclg_acl_read(uintptr_t base)5699 static __inline uint8_t acamera_fpga_video_capture2_input_port_aclg_acl_read(uintptr_t base) {
5700 return (uint8_t)((system_hw_read_32(0x20965cL) & 0x800) >> 11);
5701 }
5702 // ------------------------------------------------------------------------------ //
5703 // Register: aclg vsync
5704 // ------------------------------------------------------------------------------ //
5705
5706 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_ACLG_VSYNC_DEFAULT (0)
5707 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_ACLG_VSYNC_DATASIZE (1)
5708 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_ACLG_VSYNC_OFFSET (0x65c)
5709 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_ACLG_VSYNC_MASK (0x1000)
5710 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_ACLG_VSYNC_EXCLUDE_VSYNC_SIGNAL_IN_ACL_GATE (0)
5711 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_ACLG_VSYNC_INCLUDE_VSYNC_SIGNAL_IN_ACL_GATE (1)
5712
5713 // args: data (1-bit)
acamera_fpga_video_capture2_input_port_aclg_vsync_write(uintptr_t base,uint8_t data)5714 static __inline void acamera_fpga_video_capture2_input_port_aclg_vsync_write(uintptr_t base, uint8_t data) {
5715 uint32_t curr = system_hw_read_32(0x20965cL);
5716 system_hw_write_32(0x20965cL, (((uint32_t) (data & 0x1)) << 12) | (curr & 0xffffefff));
5717 }
acamera_fpga_video_capture2_input_port_aclg_vsync_read(uintptr_t base)5718 static __inline uint8_t acamera_fpga_video_capture2_input_port_aclg_vsync_read(uintptr_t base) {
5719 return (uint8_t)((system_hw_read_32(0x20965cL) & 0x1000) >> 12);
5720 }
5721 // ------------------------------------------------------------------------------ //
5722 // Register: hsg window1
5723 // ------------------------------------------------------------------------------ //
5724
5725 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_HSG_WINDOW1_DEFAULT (0)
5726 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_HSG_WINDOW1_DATASIZE (1)
5727 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_HSG_WINDOW1_OFFSET (0x65c)
5728 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_HSG_WINDOW1_MASK (0x10000)
5729 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_HSG_WINDOW1_EXCLUDE_WINDOW1_SIGNAL_IN_HS_GATE (0)
5730 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_HSG_WINDOW1_INCLUDE_WINDOW1_SIGNAL_IN_HS_GATE (1)
5731
5732 // args: data (1-bit)
acamera_fpga_video_capture2_input_port_hsg_window1_write(uintptr_t base,uint8_t data)5733 static __inline void acamera_fpga_video_capture2_input_port_hsg_window1_write(uintptr_t base, uint8_t data) {
5734 uint32_t curr = system_hw_read_32(0x20965cL);
5735 system_hw_write_32(0x20965cL, (((uint32_t) (data & 0x1)) << 16) | (curr & 0xfffeffff));
5736 }
acamera_fpga_video_capture2_input_port_hsg_window1_read(uintptr_t base)5737 static __inline uint8_t acamera_fpga_video_capture2_input_port_hsg_window1_read(uintptr_t base) {
5738 return (uint8_t)((system_hw_read_32(0x20965cL) & 0x10000) >> 16);
5739 }
5740 // ------------------------------------------------------------------------------ //
5741 // Register: hsg hsync
5742 // ------------------------------------------------------------------------------ //
5743
5744 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_HSG_HSYNC_DEFAULT (0)
5745 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_HSG_HSYNC_DATASIZE (1)
5746 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_HSG_HSYNC_OFFSET (0x65c)
5747 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_HSG_HSYNC_MASK (0x20000)
5748 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_HSG_HSYNC_EXCLUDE_HSYNC_SIGNAL_IN_HS_GATE (0)
5749 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_HSG_HSYNC_INCLUDE_HSYNC_SIGNAL_IN_HS_GATE (1)
5750
5751 // args: data (1-bit)
acamera_fpga_video_capture2_input_port_hsg_hsync_write(uintptr_t base,uint8_t data)5752 static __inline void acamera_fpga_video_capture2_input_port_hsg_hsync_write(uintptr_t base, uint8_t data) {
5753 uint32_t curr = system_hw_read_32(0x20965cL);
5754 system_hw_write_32(0x20965cL, (((uint32_t) (data & 0x1)) << 17) | (curr & 0xfffdffff));
5755 }
acamera_fpga_video_capture2_input_port_hsg_hsync_read(uintptr_t base)5756 static __inline uint8_t acamera_fpga_video_capture2_input_port_hsg_hsync_read(uintptr_t base) {
5757 return (uint8_t)((system_hw_read_32(0x20965cL) & 0x20000) >> 17);
5758 }
5759 // ------------------------------------------------------------------------------ //
5760 // Register: hsg vsync
5761 // ------------------------------------------------------------------------------ //
5762
5763 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_HSG_VSYNC_DEFAULT (0)
5764 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_HSG_VSYNC_DATASIZE (1)
5765 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_HSG_VSYNC_OFFSET (0x65c)
5766 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_HSG_VSYNC_MASK (0x40000)
5767 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_HSG_VSYNC_EXCLUDE_VSYNC_SIGNAL_IN_HS_GATE (0)
5768 #define ACAMERA_FPGA_VIDEO_CAPTURE2_INPUT_PORT_HSG_VSYNC_INCLUDE_VSYNC_SIGNAL_IN_HS_GATE (1)
5769
5770 // args: data (1-bit)
acamera_fpga_video_capture2_input_port_hsg_vsync_write(uintptr_t base,uint8_t data)5771 static __inline void acamera_fpga_video_capture2_input_port_hsg_vsync_write(uintptr_t base, uint8_t data) {
5772 uint32_t curr = system_hw_read_32(0x20965cL);
5773 system_hw_write_32(0x20965cL, (((uint32_t) (data & 0x1)) << 18) | (curr & 0xfffbffff));
5774 }
acamera_fpga_video_capture2_input_port_hsg_vsync_read(uintptr_t base)5775