AJA NTV2 SDK  18.1.0.2262
NTV2 SDK 18.1.0.2262
ntv2metale2e.h
Go to the documentation of this file.
1 /* SPDX-License-Identifier: MIT */
9 #ifndef _NTV2METALE2E_H
10 #define _NTV2METALE2E_H
11 
12 #include "ntv2democommon.h"
13 #include "ntv2vpid.h"
14 
16  uint32_t size;
17  uint16_t addr;
18  char data[1000];
19 };
20 
22  {
23  { 0x0A, 0xC160, "0x00000000000000000000" },
24  { 0x02, 0xC16C, "0x0000" },
25  { 0x01, 0xC170, "0x00" },
26  { 0x07, 0xC171, "0x00000000000000" },
27  { 0x13, 0xC180, "0x00000000000000000000000000000000000000" },
28  { 0x08, 0xC193, "0x0080969800000000" },
29  { 0x14, 0xC19B, "0x000000000000000000800648F63703FFFF00007D" },
30  { 0x10, 0xC1AF, "0xC040DCB3110000020001000000000000" },
31  { 0x10, 0xC1BF, "0x01000000000000000000000000010000" },
32  { 0x10, 0xC1CF, "0x00000000000000000000000000020000" },
33  { 0x01, 0xC1DF, "0x00" },
34  { 0x0F, 0xC200, "0x000000000000000000000000030000" },
35  { 0x10, 0xC20F, "0x00000000000000000000000000040000" },
36  { 0x10, 0xC21F, "0x00000000000000000000000000050000" },
37  { 0x10, 0xC22F, "0x20000000000000000000000000060000" },
38  { 0x10, 0xC23F, "0x20000000000000000000000000070000" },
39  { 0x10, 0xC24F, "0x00000000000000000000000000080000" },
40  { 0x10, 0xC25F, "0x00000000000000000000000000090000" },
41  { 0x01, 0xC26F, "0x00" },
42  { 0x0F, 0xC280, "0x0000000000000000000000000A0000" },
43  { 0x10, 0xC28F, "0x000000000000000000000000000B0000" },
44  { 0x10, 0xC29F, "0x000000000000000000000000000C0000" },
45  { 0x10, 0xC2AF, "0x000000000000000000000000000D0000" },
46  { 0x10, 0xC2BF, "0x400000000000000000000000000E0000" },
47  { 0x10, 0xC2CF, "0x4080098D250000689C010000000F0000" },
48  { 0x08, 0xC2DF, "0x4100000000000000" },
49  { 0x03, 0xC2E8, "0x000000" },
50  { 0x08, 0xC2EB, "0x0300000000000000" },
51  { 0x03, 0xC2F4, "0x000000" },
52  { 0x01, 0xC2F7, "0x00" },
53  { 0x07, 0xC300, "0x00000000000000" },
54  { 0x03, 0xC308, "0x000000" },
55  { 0x08, 0xC30B, "0x0000000000000000" },
56  { 0x03, 0xC314, "0x000000" },
57  { 0x08, 0xC317, "0x0000000000000000" },
58  { 0x03, 0xC320, "0x000000" },
59  { 0x08, 0xC323, "0x0000000000000000" },
60  { 0x03, 0xC32C, "0x000000" },
61  { 0x08, 0xC32F, "0x0000000000000000" },
62  { 0x03, 0xC338, "0x000000" },
63  { 0x07, 0xC33B, "0x00000000000000" },
64  { 0x01, 0xC342, "0x00" },
65  { 0x03, 0xC344, "0x000000" },
66  { 0x08, 0xC347, "0x0000000000000000" },
67  { 0x03, 0xC350, "0x000000" },
68  { 0x08, 0xC353, "0x0000000000000000" },
69  { 0x03, 0xC35C, "0x000000" },
70  { 0x08, 0xC35F, "0x0000000000000000" },
71  { 0x03, 0xC368, "0x000000" },
72  { 0x08, 0xC36B, "0x0000000000000000" },
73  { 0x03, 0xC374, "0x000000" },
74  { 0x01, 0xC377, "0x00" },
75  { 0x07, 0xC380, "0x00000000000000" },
76  { 0x03, 0xC388, "0x000000" },
77  { 0x08, 0xC38B, "0x0000000000000000" },
78  { 0x03, 0xC394, "0x000000" },
79  { 0x08, 0xC397, "0x0000000000000000" },
80  { 0x03, 0xC3A0, "0x000000" },
81  { 0x08, 0xC3A3, "0x0000000000000000" },
82  { 0x03, 0xC3AC, "0x000000" },
83  { 0x07, 0xC3AF, "0x03000004040000" },
84  { 0x25, 0xC3B6, "0x00000000000000000000000000000000000000000000000000000000000000000000000000" },
85  { 0x10, 0xC3DB, "0x00000000000000080800010000000000" },
86  { 0x01, 0xC3EB, "0x00" },
87  { 0x3B, 0xC400, "0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" },
88  { 0x3C, 0xC43B, "0x300000040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000200000000000000000" },
89  { 0x01, 0xC477, "0x20" },
90  { 0x3B, 0xC480, "0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" },
91  { 0x3C, 0xC4BB, "0x300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" },
92  { 0x01, 0xC4F7, "0x30" },
93  { 0x3B, 0xC500, "0x0000040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000200000000000000000" },
94  { 0x3C, 0xC53B, "0x200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" },
95  { 0x01, 0xC577, "0x30" },
96  { 0x3B, 0xC580, "0x0000040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000200000000000000000" },
97  { 0x1F, 0xC5BB, "0x200000000A0100002400000000000000000000000000000000000000000000" },
98  { 0x01, 0xC5DA, "0x00" },
99  { 0x05, 0xC600, "0x000F03040A" },
100  { 0x02, 0xC605, "0x8000" },
101  { 0x04, 0xC607, "0x00000000" },
102  { 0x02, 0xC60B, "0x0000" },
103  { 0x04, 0xC60D, "0x00000000" },
104  { 0x02, 0xC611, "0x0000" },
105  { 0x05, 0xC613, "0x0000000000" },
106  { 0x03, 0xC618, "0x000000" },
107  { 0x08, 0xC61B, "0x00804718956723FF" },
108  { 0x04, 0xC623, "0xFF789300" },
109  { 0x06, 0xC627, "0x000000000000" },
110  { 0x01, 0xC62D, "0x00" },
111  { 0x05, 0xC630, "0x0000000000" },
112  { 0x02, 0xC635, "0x00A1" },
113  { 0x02, 0xC637, "0x2A00" },
114  { 0x08, 0xC639, "0x0000000000000000" },
115  { 0x02, 0xC641, "0x0000" },
116  { 0x04, 0xC643, "0x00000000" },
117  { 0x02, 0xC647, "0x0000" },
118  { 0x04, 0xC649, "0x00000000" },
119  { 0x02, 0xC64D, "0x0000" },
120  { 0x05, 0xC64F, "0x0000000000" },
121  { 0x03, 0xC654, "0x000000" },
122  { 0x08, 0xC657, "0x0000000000000000" },
123  { 0x04, 0xC65F, "0x00000000" },
124  { 0x06, 0xC663, "0x000000000000" },
125  { 0x01, 0xC669, "0x00" },
126  { 0x05, 0xC66C, "0x0000000000" },
127  { 0x02, 0xC671, "0x00A1" },
128  { 0x02, 0xC673, "0x2A00" },
129  { 0x03, 0xC675, "0x000000" },
130  { 0x05, 0xC680, "0x0000000000" },
131  { 0x02, 0xC685, "0x0000" },
132  { 0x04, 0xC687, "0x00000000" },
133  { 0x02, 0xC68B, "0x0000" },
134  { 0x04, 0xC68D, "0x00000000" },
135  { 0x02, 0xC691, "0x0000" },
136  { 0x05, 0xC693, "0x0000000000" },
137  { 0x03, 0xC698, "0x000000" },
138  { 0x08, 0xC69B, "0x003F694C9C1423E8" },
139  { 0x04, 0xC6A3, "0xFD030000" },
140  { 0x06, 0xC6A7, "0x000000000000" },
141  { 0x01, 0xC6AD, "0x00" },
142  { 0x05, 0xC6B0, "0x0000000000" },
143  { 0x02, 0xC6B5, "0x00A1" },
144  { 0x02, 0xC6B7, "0x2A00" },
145  { 0x08, 0xC6B9, "0x0000000000000000" },
146  { 0x02, 0xC6C1, "0x0000" },
147  { 0x04, 0xC6C3, "0x00000000" },
148  { 0x02, 0xC6C7, "0x0000" },
149  { 0x04, 0xC6C9, "0x00000000" },
150  { 0x02, 0xC6CD, "0x0000" },
151  { 0x05, 0xC6CF, "0x0000000000" },
152  { 0x03, 0xC6D4, "0x000000" },
153  { 0x08, 0xC6D7, "0x0000000000000000" },
154  { 0x04, 0xC6DF, "0x00000000" },
155  { 0x06, 0xC6E3, "0x000000000000" },
156  { 0x01, 0xC6E9, "0x00" },
157  { 0x05, 0xC6EC, "0x0000000000" },
158  { 0x02, 0xC6F1, "0x00A1" },
159  { 0x02, 0xC6F3, "0x2A00" },
160  { 0x03, 0xC6F5, "0x000000" },
161  { 0x05, 0xC700, "0x0000000000" },
162  { 0x02, 0xC705, "0x0000" },
163  { 0x04, 0xC707, "0x00000000" },
164  { 0x02, 0xC70B, "0x0000" },
165  { 0x04, 0xC70D, "0x00000000" },
166  { 0x02, 0xC711, "0x0000" },
167  { 0x05, 0xC713, "0x0000000000" },
168  { 0x03, 0xC718, "0x000000" },
169  { 0x08, 0xC71B, "0x0000000000000000" },
170  { 0x04, 0xC723, "0x00000000" },
171  { 0x06, 0xC727, "0x000000000000" },
172  { 0x01, 0xC72D, "0x00" },
173  { 0x05, 0xC730, "0x0000000000" },
174  { 0x02, 0xC735, "0x00A1" },
175  { 0x02, 0xC737, "0x2A00" },
176  { 0x08, 0xC739, "0x0000000000000000" },
177  { 0x02, 0xC741, "0x0000" },
178  { 0x04, 0xC743, "0x00000000" },
179  { 0x02, 0xC747, "0x0000" },
180  { 0x04, 0xC749, "0x00000000" },
181  { 0x02, 0xC74D, "0x0000" },
182  { 0x05, 0xC74F, "0x0000000000" },
183  { 0x03, 0xC754, "0x000000" },
184  { 0x08, 0xC757, "0x0000003DE1C21EFF" },
185  { 0x04, 0xC75F, "0xFF150000" },
186  { 0x06, 0xC763, "0x000000000000" },
187  { 0x01, 0xC769, "0x00" },
188  { 0x05, 0xC76C, "0x0000000000" },
189  { 0x02, 0xC771, "0x00A1" },
190  { 0x02, 0xC773, "0x2A00" },
191  { 0x03, 0xC775, "0x000000" },
192  { 0x05, 0xC780, "0x0000000000" },
193  { 0x02, 0xC785, "0x0000" },
194  { 0x04, 0xC787, "0x00000000" },
195  { 0x02, 0xC78B, "0x0000" },
196  { 0x04, 0xC78D, "0x00000000" },
197  { 0x02, 0xC791, "0x0000" },
198  { 0x05, 0xC793, "0x0000000000" },
199  { 0x03, 0xC798, "0x000000" },
200  { 0x08, 0xC79B, "0x0000000000000000" },
201  { 0x04, 0xC7A3, "0x00000000" },
202  { 0x06, 0xC7A7, "0x000000000000" },
203  { 0x01, 0xC7AD, "0x00" },
204  { 0x05, 0xC7B0, "0x0000000000" },
205  { 0x02, 0xC7B5, "0x00A1" },
206  { 0x02, 0xC7B7, "0x2A00" },
207  { 0x08, 0xC7B9, "0x0000000000000000" },
208  { 0x02, 0xC7C1, "0x0000" },
209  { 0x04, 0xC7C3, "0x00000000" },
210  { 0x02, 0xC7C7, "0x0000" },
211  { 0x04, 0xC7C9, "0x00000000" },
212  { 0x02, 0xC7CD, "0x0000" },
213  { 0x05, 0xC7CF, "0x0000000000" },
214  { 0x03, 0xC7D4, "0x000000" },
215  { 0x08, 0xC7D7, "0x00C03DACA3931EFF" },
216  { 0x04, 0xC7DF, "0xFF130000" },
217  { 0x06, 0xC7E3, "0x000000000000" },
218  { 0x01, 0xC7E9, "0x00" },
219  { 0x05, 0xC7EC, "0x0000000000" },
220  { 0x02, 0xC7F1, "0x00A1" },
221  { 0x02, 0xC7F3, "0x2A00" },
222  { 0x03, 0xC7F5, "0x000000" },
223  { 0x03, 0xC800, "0x000004" },
224  { 0x01, 0xC804, "0x64" },
225  { 0x02, 0xC805, "0x8000" },
226  { 0x04, 0xC807, "0x00000000" },
227  { 0x02, 0xC80B, "0x0000" },
228  { 0x04, 0xC80D, "0x00000000" },
229  { 0x02, 0xC811, "0x0000" },
230  { 0x02, 0xC813, "0x0000" },
231  { 0x02, 0xC815, "0x0000" },
232  { 0x03, 0xC818, "0x000000" },
233  { 0x04, 0xC81B, "0x00000000" },
234  { 0x04, 0xC81F, "0x00000000" },
235  { 0x04, 0xC823, "0x00000000" },
236  { 0x04, 0xC827, "0x00000000" },
237  { 0x04, 0xC82B, "0x00000000" },
238  { 0x04, 0xC82F, "0x00000000" },
239  { 0x04, 0xC833, "0x00000000" },
240  { 0x06, 0xC837, "0x000000000000" },
241  { 0x01, 0xC83D, "0x00" },
242  { 0x05, 0xC840, "0x0000000000" },
243  { 0x01, 0xC845, "0x00" },
244  { 0x05, 0xC848, "0x0000000000" },
245  { 0x01, 0xC84D, "0x00" },
246  { 0x05, 0xC850, "0x0000000000" },
247  { 0x01, 0xC855, "0x00" },
248  { 0x05, 0xC858, "0x0000000000" },
249  { 0x01, 0xC85D, "0x00" },
250  { 0x05, 0xC860, "0x0000000000" },
251  { 0x01, 0xC865, "0x00" },
252  { 0x05, 0xC868, "0x0000000000" },
253  { 0x01, 0xC86D, "0x00" },
254  { 0x05, 0xC870, "0x0000000000" },
255  { 0x01, 0xC875, "0x00" },
256  { 0x07, 0xC880, "0x00000000000000" },
257  { 0x08, 0xC887, "0x0000000000000000" },
258  { 0x08, 0xC88F, "0x0000000000000000" },
259  { 0x08, 0xC897, "0x0000000000000000" },
260  { 0x08, 0xC89F, "0x0000000000000000" },
261  { 0x08, 0xC8A7, "0x0000000000000000" },
262  { 0x08, 0xC8AF, "0x0000000000000000" },
263  { 0x08, 0xC8B7, "0x0000000000000000" },
264  { 0x02, 0xC8BF, "0x0000" },
265  { 0x05, 0xC8C2, "0x0000000000" },
266  { 0x0C, 0xC8C7, "0x000000000000000000000000" },
267  { 0x12, 0xC8D3, "0x000000000000000000000000000000000000" },
268  { 0x12, 0xC8E5, "0x040000000000000000000000000000000000" },
269  { 0x01, 0xC8F7, "0x01" },
270  { 0x11, 0xC900, "0x0000000000000000000000000000000000" },
271  { 0x12, 0xC911, "0x000000000000000000000000000000000000" },
272  { 0x12, 0xC923, "0x000000000000000000000000000000000000" },
273  { 0x12, 0xC935, "0x000000000000000000000000000000000000" },
274  { 0x12, 0xC947, "0x000000000000000000000000000000000000" },
275  { 0x12, 0xC959, "0x000000000000000000000000000000000000" },
276  { 0x01, 0xC96B, "0x00" },
277  { 0x11, 0xC980, "0x0000000000000000000000000000000000" },
278  { 0x12, 0xC991, "0x000000000000000000000000000000000000" },
279  { 0x12, 0xC9A3, "0x000000000000000000000000000000000000" },
280  { 0x12, 0xC9B5, "0x000000000000000000000000000000000000" },
281  { 0x12, 0xC9C7, "0x000000000000000000000000000000000000" },
282  { 0x12, 0xC9D9, "0x000000000000000000000000000000000000" },
283  { 0x01, 0xC9EB, "0x00" },
284  { 0x11, 0xCA00, "0x0000000000000000000000000000000000" },
285  { 0x0D, 0xCA11, "0x00000001050000020101000500" },
286  { 0x02, 0xCA20, "0x0400" },
287  { 0x01, 0xCA22, "0x00" },
288  { 0x04, 0xCA23, "0x00000000" },
289  { 0x03, 0xCA27, "0x004120" },
290  { 0x03, 0xCA2C, "0x000000" },
291  { 0x04, 0xCA2F, "0x00000000" },
292  { 0x04, 0xCA33, "0x00000000" },
293  { 0x03, 0xCA37, "0x000000" },
294  { 0x03, 0xCA3C, "0x000000" },
295  { 0x04, 0xCA3F, "0x00000000" },
296  { 0x04, 0xCA43, "0x00000000" },
297  { 0x03, 0xCA47, "0x000000" },
298  { 0x03, 0xCA4C, "0x000000" },
299  { 0x04, 0xCA4F, "0x00040000" },
300  { 0x04, 0xCA53, "0x00000000" },
301  { 0x03, 0xCA57, "0x004120" },
302  { 0x03, 0xCA5C, "0x000000" },
303  { 0x04, 0xCA5F, "0x00000000" },
304  { 0x04, 0xCA63, "0x00000000" },
305  { 0x03, 0xCA67, "0x000000" },
306  { 0x03, 0xCA6C, "0x000000" },
307  { 0x01, 0xCA6F, "0x00" },
308  { 0x03, 0xCA80, "0x040000" },
309  { 0x04, 0xCA83, "0x00000000" },
310  { 0x03, 0xCA87, "0x004120" },
311  { 0x03, 0xCA8C, "0x000000" },
312  { 0x01, 0xCA8F, "0x00" },
313  { 0x03, 0xCA90, "0x040000" },
314  { 0x04, 0xCA93, "0x00000000" },
315  { 0x03, 0xCA97, "0x004120" },
316  { 0x03, 0xCA9C, "0x000000" },
317  { 0x03, 0xCA9F, "0x000000" },
318  { 0x01, 0xCAA2, "0x00" },
319  { 0x04, 0xCAA3, "0x00000000" },
320  { 0x03, 0xCAA7, "0x000000" },
321  { 0x03, 0xCAAC, "0x000000" },
322  { 0x04, 0xCAAF, "0x00150000" },
323  { 0x01, 0xCAB3, "0x00" },
324  { 0x03, 0xCAB4, "0x000000" },
325  { 0x03, 0xCAB7, "0x004120" },
326  { 0x03, 0xCABC, "0x000000" },
327  { 0x04, 0xCABF, "0x00000000" },
328  { 0x03, 0xCAC3, "0x000000" },
329  { 0x01, 0xCAC6, "0x00" },
330  { 0x03, 0xCAC7, "0x000000" },
331  { 0x03, 0xCACC, "0x000000" },
332  { 0x04, 0xCACF, "0x00000000" },
333  { 0x04, 0xCAD3, "0x00000000" },
334  { 0x01, 0xCAD7, "0x00" },
335  { 0x02, 0xCAD8, "0x0000" },
336  { 0x03, 0xCADC, "0x000000" },
337  { 0x04, 0xCADF, "0x00130000" },
338  { 0x04, 0xCAE3, "0x00000000" },
339  { 0x03, 0xCAE7, "0x004120" },
340  { 0x01, 0xCAEC, "0x00" },
341  { 0x02, 0xCAED, "0x0000" },
342  { 0x0C, 0xCAEF, "0x000000000000000000000000" },
343  { 0x01, 0xCAFB, "0x00" },
344  { 0x07, 0xCB00, "0x00000000000000" },
345  { 0x08, 0xCB07, "0x0000000000000000" },
346  { 0x08, 0xCB0F, "0x0000000000000000" },
347  { 0x08, 0xCB17, "0x0000000000000000" },
348  { 0x08, 0xCB1F, "0x0000000000000000" },
349  { 0x08, 0xCB27, "0x0000000000000000" },
350  { 0x08, 0xCB2F, "0x0000000000000000" },
351  { 0x08, 0xCB37, "0x0000000000000000" },
352  { 0x0A, 0xCB3F, "0x00000000000000000000" },
353  { 0x0A, 0xCB49, "0x00000000000000000000" },
354  { 0x0A, 0xCB53, "0x00000000000000000000" },
355  { 0x0A, 0xCB5D, "0x00000000000000000000" },
356  { 0x0A, 0xCB67, "0x00000000000000000000" },
357  { 0x01, 0xCB71, "0x00" },
358  { 0x09, 0xCB80, "0x000000000000000000" },
359  { 0x0A, 0xCB89, "0x00000000000000000000" },
360  { 0x0A, 0xCB93, "0x00000000000000000000" },
361  { 0x0A, 0xCB9D, "0x00000000000000000000" },
362  { 0x0A, 0xCBA7, "0x00000000000000000000" },
363  { 0x0A, 0xCBB1, "0x00000000000000000000" },
364  { 0x0A, 0xCBBB, "0x00000000000000000000" },
365  { 0x0A, 0xCBC5, "0x00000000000000000000" },
366  { 0x0A, 0xCBCF, "0x00000000000000000000" },
367  { 0x0A, 0xCBD9, "0x00000000000000000000" },
368  { 0x0A, 0xCBE3, "0x00000000000000000000" },
369  { 0x01, 0xCBED, "0x00" },
370  { 0x07, 0xCBF0, "0x00000000000000" },
371  { 0x01, 0xCBF7, "0x00" },
372  { 0x01, 0xCC00, "0x00" },
373  { 0x02, 0xCC01, "0x0000" },
374  { 0x02, 0xCC03, "0x0000" },
375  { 0x02, 0xCC05, "0x0000" },
376  { 0x01, 0xCC07, "0x00" },
377  { 0x0F, 0xCC10, "0x000000000000000000000000000000" },
378  { 0x10, 0xCC1F, "0x00000000000000000000000000000000" },
379  { 0x10, 0xCC2F, "0x00000000000000000000000000000000" },
380  { 0x10, 0xCC3F, "0x00000000000000000000000000000000" },
381  { 0x10, 0xCC4F, "0x00000000000000000000000000000000" },
382  { 0x10, 0xCC5F, "0x00000000000000000000000000000000" },
383  { 0x01, 0xCC6F, "0x00" },
384  { 0x0F, 0xCC80, "0x000000000000000000000000000000" },
385  { 0x10, 0xCC8F, "0x00000000000000000000000000000000" },
386  { 0x10, 0xCC9F, "0x00000000000000000000000000000000" },
387  { 0x10, 0xCCAF, "0x00000000000000000000000000000000" },
388  { 0x10, 0xCCBF, "0x00000000000000000000000000000000" },
389  { 0x10, 0xCCCF, "0x00000000000000000000000000000000" },
390  { 0x08, 0xCCDF, "0x0000000000000000" },
391  { 0x01, 0xCCE7, "0x00" },
392  { 0x07, 0xCD00, "0x00000000000000" },
393  { 0x08, 0xCD07, "0x0000000000000000" },
394  { 0x08, 0xCD0F, "0x0000000000000000" },
395  { 0x08, 0xCD17, "0x0000000000000000" },
396  { 0x08, 0xCD1F, "0x0000000000000000" },
397  { 0x01, 0xCD27, "0x00" },
398  { 0x0E, 0xCF3C, "0x0535640077003060013505356400" },
399  { 0x01, 0xCF4A, "0x77" },
400  { 0x02, 0xCF4C, "0x0000" },
401  { 0x0D, 0xCF4E, "0x0000000000000A000100000000" },
402  { 0x08, 0xCF5B, "0x0000000000000001" },
403  { 0x08, 0xCF63, "0x0000000000000000" },
404  { 0x01, 0xCF6B, "0x00" },
405  { 0x00, 0x00, "0x00" }
406 };
407 
408 #define ntv2Message(string, ...) printf(string, __VA_ARGS__)
409 #define DTR_EMPTY 0x04
410 #define GENL_SPI_READ_FIFO_EMPTY 0x01
411 
412 const uint32_t ntv2_reg_spi_ip_status = 0x8008;
413 
414 const uint32_t ntv2_reg_spi_reset = 0x8010;
415 const uint32_t ntv2_reg_spi_control = 0x8018;
416 const uint32_t ntv2_reg_spi_status = 0x8019;
417 const uint32_t ntv2_reg_spi_write = 0x801a;
418 const uint32_t ntv2_reg_spi_read = 0x801b;
419 const uint32_t ntv2_reg_spi_slave = 0x801c;
420 
421 const uint32_t ntv2_reg_out_freq1 = 0x36c1;
422 const uint32_t ntv2_reg_out_freq2 = 0x36c2;
423 const uint32_t ntv2_reg_out_freq3 = 0x36c3;
424 const uint32_t ntv2_reg_out_freq4 = 0x36c4;
425 const uint32_t ntv2_reg_out_freq5 = 0x36c5;
426 
427 const uint32_t ntv2_reg_genlock_reset = 0x30;
428 const uint32_t ntv2_genlock_reset_shift = 6;
429 const uint32_t ntv2_genlock_reset_mask = 0x40;
430 
431 const int64_t c_spi_timeout = 10000;
432 
433 
435 {
436  // Public Instance Methods
437  public:
438 
444  NTV2MetalE2E (void);
445 
446  ~NTV2MetalE2E (void);
447 
452  AJAStatus Run (void);
453 
458  AJAStatus SetUpGenlock (void);
459 
464  AJAStatus SetUpVideo (void);
465 
469  void RouteE2ESignal (void);
470 
471 
472  // Private Member Data
473  private:
474  CNTV2Card mDevice;
475 
476  bool SPIWaitWriteEmpty (void);
477  bool SPIWaitReadNotEmpty (void);
478  bool ResetDTRStatus (void);
479  bool SPIGenlock2Write (uint32_t size, uint16_t addr, uint8_t* data, bool triggerWait);
480  bool SPIGenlock2Read (uint16_t addr, uint8_t* data, uint32_t numBytes);
481  bool WaitGenlock2 (uint32_t numMicrosSeconds);
482  void SPIReset (void);
483  void SPIResetFIFOs (void);
484  uint32_t RegRead(uint32_t reg);
485 
486 }; // NTV2MetalE2E
487 
488 #endif // _NTV2MetalE2E_H
void RouteE2ESignal(void)
Sets up board routing for E2E.
const uint32_t ntv2_reg_out_freq2
Definition: ntv2metale2e.h:422
I interrogate and control an AJA video/audio capture/playout device.
Definition: ntv2card.h:28
AJAStatus
Definition: types.h:380
Declares the CNTV2VPID class. See SMPTE 352 standard for details.
const uint32_t ntv2_reg_genlock_reset
Definition: ntv2metale2e.h:427
static struct ntv2_genlock2_data s_rc32012a_broadcast_1485[]
Definition: ntv2metale2e.h:21
const uint32_t ntv2_genlock_reset_mask
Definition: ntv2metale2e.h:429
const uint32_t ntv2_reg_spi_read
Definition: ntv2metale2e.h:418
const uint32_t ntv2_reg_spi_slave
Definition: ntv2metale2e.h:419
AJAStatus SetUpVideo(void)
Setup video formats and outputs.
const uint32_t ntv2_reg_out_freq5
Definition: ntv2metale2e.h:425
const uint32_t ntv2_reg_out_freq1
Definition: ntv2metale2e.h:421
const uint32_t ntv2_reg_out_freq4
Definition: ntv2metale2e.h:424
const uint32_t ntv2_reg_spi_reset
Definition: ntv2metale2e.h:414
const uint32_t ntv2_genlock_reset_shift
Definition: ntv2metale2e.h:428
const uint32_t ntv2_reg_out_freq3
Definition: ntv2metale2e.h:423
NTV2MetalE2E(void)
Constructs me using the given configuration settings.
const uint32_t ntv2_reg_spi_control
Definition: ntv2metale2e.h:415
This file contains some structures, constants, classes and functions that are used in some of the dem...
const uint32_t ntv2_reg_spi_ip_status
Definition: ntv2metale2e.h:412
~NTV2MetalE2E(void)
const uint32_t ntv2_reg_spi_write
Definition: ntv2metale2e.h:417
AJAStatus SetUpGenlock(void)
Sets up the genlock circuit.
const uint32_t ntv2_reg_spi_status
Definition: ntv2metale2e.h:416
const int64_t c_spi_timeout
Definition: ntv2metale2e.h:431
AJAStatus Run(void)
Do something from the KonaX Xilinx Baremetal system.