1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28 #include "../ni_device_routes.h"
29 #include "all.h"
30
31 struct ni_device_routes ni_pci_6220_device_routes = {
32 .device = "pci-6220",
33 .routes = (struct ni_route_set[]){
34 {
35 .dest = NI_PFI(0),
36 .src = (int[]){
37 TRIGGER_LINE(0),
38 TRIGGER_LINE(1),
39 TRIGGER_LINE(2),
40 TRIGGER_LINE(3),
41 TRIGGER_LINE(4),
42 TRIGGER_LINE(5),
43 TRIGGER_LINE(6),
44 TRIGGER_LINE(7),
45 NI_CtrSource(0),
46 NI_CtrSource(1),
47 NI_CtrGate(0),
48 NI_CtrGate(1),
49 NI_CtrInternalOutput(0),
50 NI_CtrInternalOutput(1),
51 NI_AI_SampleClock,
52 NI_AI_StartTrigger,
53 NI_AI_ReferenceTrigger,
54 NI_AI_ConvertClock,
55 NI_DI_SampleClock,
56 NI_DO_SampleClock,
57 NI_FrequencyOutput,
58 NI_ChangeDetectionEvent,
59 0,
60 }
61 },
62 {
63 .dest = NI_PFI(1),
64 .src = (int[]){
65 TRIGGER_LINE(0),
66 TRIGGER_LINE(1),
67 TRIGGER_LINE(2),
68 TRIGGER_LINE(3),
69 TRIGGER_LINE(4),
70 TRIGGER_LINE(5),
71 TRIGGER_LINE(6),
72 TRIGGER_LINE(7),
73 NI_CtrSource(0),
74 NI_CtrSource(1),
75 NI_CtrGate(0),
76 NI_CtrGate(1),
77 NI_CtrInternalOutput(0),
78 NI_CtrInternalOutput(1),
79 NI_AI_SampleClock,
80 NI_AI_StartTrigger,
81 NI_AI_ReferenceTrigger,
82 NI_AI_ConvertClock,
83 NI_DI_SampleClock,
84 NI_DO_SampleClock,
85 NI_FrequencyOutput,
86 NI_ChangeDetectionEvent,
87 0,
88 }
89 },
90 {
91 .dest = NI_PFI(2),
92 .src = (int[]){
93 TRIGGER_LINE(0),
94 TRIGGER_LINE(1),
95 TRIGGER_LINE(2),
96 TRIGGER_LINE(3),
97 TRIGGER_LINE(4),
98 TRIGGER_LINE(5),
99 TRIGGER_LINE(6),
100 TRIGGER_LINE(7),
101 NI_CtrSource(0),
102 NI_CtrSource(1),
103 NI_CtrGate(0),
104 NI_CtrGate(1),
105 NI_CtrInternalOutput(0),
106 NI_CtrInternalOutput(1),
107 NI_AI_SampleClock,
108 NI_AI_StartTrigger,
109 NI_AI_ReferenceTrigger,
110 NI_AI_ConvertClock,
111 NI_DI_SampleClock,
112 NI_DO_SampleClock,
113 NI_FrequencyOutput,
114 NI_ChangeDetectionEvent,
115 0,
116 }
117 },
118 {
119 .dest = NI_PFI(3),
120 .src = (int[]){
121 TRIGGER_LINE(0),
122 TRIGGER_LINE(1),
123 TRIGGER_LINE(2),
124 TRIGGER_LINE(3),
125 TRIGGER_LINE(4),
126 TRIGGER_LINE(5),
127 TRIGGER_LINE(6),
128 TRIGGER_LINE(7),
129 NI_CtrSource(0),
130 NI_CtrSource(1),
131 NI_CtrGate(0),
132 NI_CtrGate(1),
133 NI_CtrInternalOutput(0),
134 NI_CtrInternalOutput(1),
135 NI_AI_SampleClock,
136 NI_AI_StartTrigger,
137 NI_AI_ReferenceTrigger,
138 NI_AI_ConvertClock,
139 NI_DI_SampleClock,
140 NI_DO_SampleClock,
141 NI_FrequencyOutput,
142 NI_ChangeDetectionEvent,
143 0,
144 }
145 },
146 {
147 .dest = NI_PFI(4),
148 .src = (int[]){
149 TRIGGER_LINE(0),
150 TRIGGER_LINE(1),
151 TRIGGER_LINE(2),
152 TRIGGER_LINE(3),
153 TRIGGER_LINE(4),
154 TRIGGER_LINE(5),
155 TRIGGER_LINE(6),
156 TRIGGER_LINE(7),
157 NI_CtrSource(0),
158 NI_CtrSource(1),
159 NI_CtrGate(0),
160 NI_CtrGate(1),
161 NI_CtrInternalOutput(0),
162 NI_CtrInternalOutput(1),
163 NI_AI_SampleClock,
164 NI_AI_StartTrigger,
165 NI_AI_ReferenceTrigger,
166 NI_AI_ConvertClock,
167 NI_DI_SampleClock,
168 NI_DO_SampleClock,
169 NI_FrequencyOutput,
170 NI_ChangeDetectionEvent,
171 0,
172 }
173 },
174 {
175 .dest = NI_PFI(5),
176 .src = (int[]){
177 TRIGGER_LINE(0),
178 TRIGGER_LINE(1),
179 TRIGGER_LINE(2),
180 TRIGGER_LINE(3),
181 TRIGGER_LINE(4),
182 TRIGGER_LINE(5),
183 TRIGGER_LINE(6),
184 TRIGGER_LINE(7),
185 NI_CtrSource(0),
186 NI_CtrSource(1),
187 NI_CtrGate(0),
188 NI_CtrGate(1),
189 NI_CtrInternalOutput(0),
190 NI_CtrInternalOutput(1),
191 NI_AI_SampleClock,
192 NI_AI_StartTrigger,
193 NI_AI_ReferenceTrigger,
194 NI_AI_ConvertClock,
195 NI_DI_SampleClock,
196 NI_DO_SampleClock,
197 NI_FrequencyOutput,
198 NI_ChangeDetectionEvent,
199 0,
200 }
201 },
202 {
203 .dest = NI_PFI(6),
204 .src = (int[]){
205 TRIGGER_LINE(0),
206 TRIGGER_LINE(1),
207 TRIGGER_LINE(2),
208 TRIGGER_LINE(3),
209 TRIGGER_LINE(4),
210 TRIGGER_LINE(5),
211 TRIGGER_LINE(6),
212 TRIGGER_LINE(7),
213 NI_CtrSource(0),
214 NI_CtrSource(1),
215 NI_CtrGate(0),
216 NI_CtrGate(1),
217 NI_CtrInternalOutput(0),
218 NI_CtrInternalOutput(1),
219 NI_AI_SampleClock,
220 NI_AI_StartTrigger,
221 NI_AI_ReferenceTrigger,
222 NI_AI_ConvertClock,
223 NI_DI_SampleClock,
224 NI_DO_SampleClock,
225 NI_FrequencyOutput,
226 NI_ChangeDetectionEvent,
227 0,
228 }
229 },
230 {
231 .dest = NI_PFI(7),
232 .src = (int[]){
233 TRIGGER_LINE(0),
234 TRIGGER_LINE(1),
235 TRIGGER_LINE(2),
236 TRIGGER_LINE(3),
237 TRIGGER_LINE(4),
238 TRIGGER_LINE(5),
239 TRIGGER_LINE(6),
240 TRIGGER_LINE(7),
241 NI_CtrSource(0),
242 NI_CtrSource(1),
243 NI_CtrGate(0),
244 NI_CtrGate(1),
245 NI_CtrInternalOutput(0),
246 NI_CtrInternalOutput(1),
247 NI_AI_SampleClock,
248 NI_AI_StartTrigger,
249 NI_AI_ReferenceTrigger,
250 NI_AI_ConvertClock,
251 NI_DI_SampleClock,
252 NI_DO_SampleClock,
253 NI_FrequencyOutput,
254 NI_ChangeDetectionEvent,
255 0,
256 }
257 },
258 {
259 .dest = NI_PFI(8),
260 .src = (int[]){
261 TRIGGER_LINE(0),
262 TRIGGER_LINE(1),
263 TRIGGER_LINE(2),
264 TRIGGER_LINE(3),
265 TRIGGER_LINE(4),
266 TRIGGER_LINE(5),
267 TRIGGER_LINE(6),
268 TRIGGER_LINE(7),
269 NI_CtrSource(0),
270 NI_CtrSource(1),
271 NI_CtrGate(0),
272 NI_CtrGate(1),
273 NI_CtrInternalOutput(0),
274 NI_CtrInternalOutput(1),
275 NI_AI_SampleClock,
276 NI_AI_StartTrigger,
277 NI_AI_ReferenceTrigger,
278 NI_AI_ConvertClock,
279 NI_DI_SampleClock,
280 NI_DO_SampleClock,
281 NI_FrequencyOutput,
282 NI_ChangeDetectionEvent,
283 0,
284 }
285 },
286 {
287 .dest = NI_PFI(9),
288 .src = (int[]){
289 TRIGGER_LINE(0),
290 TRIGGER_LINE(1),
291 TRIGGER_LINE(2),
292 TRIGGER_LINE(3),
293 TRIGGER_LINE(4),
294 TRIGGER_LINE(5),
295 TRIGGER_LINE(6),
296 TRIGGER_LINE(7),
297 NI_CtrSource(0),
298 NI_CtrSource(1),
299 NI_CtrGate(0),
300 NI_CtrGate(1),
301 NI_CtrInternalOutput(0),
302 NI_CtrInternalOutput(1),
303 NI_AI_SampleClock,
304 NI_AI_StartTrigger,
305 NI_AI_ReferenceTrigger,
306 NI_AI_ConvertClock,
307 NI_DI_SampleClock,
308 NI_DO_SampleClock,
309 NI_FrequencyOutput,
310 NI_ChangeDetectionEvent,
311 0,
312 }
313 },
314 {
315 .dest = NI_PFI(10),
316 .src = (int[]){
317 TRIGGER_LINE(0),
318 TRIGGER_LINE(1),
319 TRIGGER_LINE(2),
320 TRIGGER_LINE(3),
321 TRIGGER_LINE(4),
322 TRIGGER_LINE(5),
323 TRIGGER_LINE(6),
324 TRIGGER_LINE(7),
325 NI_CtrSource(0),
326 NI_CtrSource(1),
327 NI_CtrGate(0),
328 NI_CtrGate(1),
329 NI_CtrInternalOutput(0),
330 NI_CtrInternalOutput(1),
331 NI_AI_SampleClock,
332 NI_AI_StartTrigger,
333 NI_AI_ReferenceTrigger,
334 NI_AI_ConvertClock,
335 NI_DI_SampleClock,
336 NI_DO_SampleClock,
337 NI_FrequencyOutput,
338 NI_ChangeDetectionEvent,
339 0,
340 }
341 },
342 {
343 .dest = NI_PFI(11),
344 .src = (int[]){
345 TRIGGER_LINE(0),
346 TRIGGER_LINE(1),
347 TRIGGER_LINE(2),
348 TRIGGER_LINE(3),
349 TRIGGER_LINE(4),
350 TRIGGER_LINE(5),
351 TRIGGER_LINE(6),
352 TRIGGER_LINE(7),
353 NI_CtrSource(0),
354 NI_CtrSource(1),
355 NI_CtrGate(0),
356 NI_CtrGate(1),
357 NI_CtrInternalOutput(0),
358 NI_CtrInternalOutput(1),
359 NI_AI_SampleClock,
360 NI_AI_StartTrigger,
361 NI_AI_ReferenceTrigger,
362 NI_AI_ConvertClock,
363 NI_DI_SampleClock,
364 NI_DO_SampleClock,
365 NI_FrequencyOutput,
366 NI_ChangeDetectionEvent,
367 0,
368 }
369 },
370 {
371 .dest = NI_PFI(12),
372 .src = (int[]){
373 TRIGGER_LINE(0),
374 TRIGGER_LINE(1),
375 TRIGGER_LINE(2),
376 TRIGGER_LINE(3),
377 TRIGGER_LINE(4),
378 TRIGGER_LINE(5),
379 TRIGGER_LINE(6),
380 TRIGGER_LINE(7),
381 NI_CtrSource(0),
382 NI_CtrSource(1),
383 NI_CtrGate(0),
384 NI_CtrGate(1),
385 NI_CtrInternalOutput(0),
386 NI_CtrInternalOutput(1),
387 NI_AI_SampleClock,
388 NI_AI_StartTrigger,
389 NI_AI_ReferenceTrigger,
390 NI_AI_ConvertClock,
391 NI_DI_SampleClock,
392 NI_DO_SampleClock,
393 NI_FrequencyOutput,
394 NI_ChangeDetectionEvent,
395 0,
396 }
397 },
398 {
399 .dest = NI_PFI(13),
400 .src = (int[]){
401 TRIGGER_LINE(0),
402 TRIGGER_LINE(1),
403 TRIGGER_LINE(2),
404 TRIGGER_LINE(3),
405 TRIGGER_LINE(4),
406 TRIGGER_LINE(5),
407 TRIGGER_LINE(6),
408 TRIGGER_LINE(7),
409 NI_CtrSource(0),
410 NI_CtrSource(1),
411 NI_CtrGate(0),
412 NI_CtrGate(1),
413 NI_CtrInternalOutput(0),
414 NI_CtrInternalOutput(1),
415 NI_AI_SampleClock,
416 NI_AI_StartTrigger,
417 NI_AI_ReferenceTrigger,
418 NI_AI_ConvertClock,
419 NI_DI_SampleClock,
420 NI_DO_SampleClock,
421 NI_FrequencyOutput,
422 NI_ChangeDetectionEvent,
423 0,
424 }
425 },
426 {
427 .dest = NI_PFI(14),
428 .src = (int[]){
429 TRIGGER_LINE(0),
430 TRIGGER_LINE(1),
431 TRIGGER_LINE(2),
432 TRIGGER_LINE(3),
433 TRIGGER_LINE(4),
434 TRIGGER_LINE(5),
435 TRIGGER_LINE(6),
436 TRIGGER_LINE(7),
437 NI_CtrSource(0),
438 NI_CtrSource(1),
439 NI_CtrGate(0),
440 NI_CtrGate(1),
441 NI_CtrInternalOutput(0),
442 NI_CtrInternalOutput(1),
443 NI_AI_SampleClock,
444 NI_AI_StartTrigger,
445 NI_AI_ReferenceTrigger,
446 NI_AI_ConvertClock,
447 NI_DI_SampleClock,
448 NI_DO_SampleClock,
449 NI_FrequencyOutput,
450 NI_ChangeDetectionEvent,
451 0,
452 }
453 },
454 {
455 .dest = NI_PFI(15),
456 .src = (int[]){
457 TRIGGER_LINE(0),
458 TRIGGER_LINE(1),
459 TRIGGER_LINE(2),
460 TRIGGER_LINE(3),
461 TRIGGER_LINE(4),
462 TRIGGER_LINE(5),
463 TRIGGER_LINE(6),
464 TRIGGER_LINE(7),
465 NI_CtrSource(0),
466 NI_CtrSource(1),
467 NI_CtrGate(0),
468 NI_CtrGate(1),
469 NI_CtrInternalOutput(0),
470 NI_CtrInternalOutput(1),
471 NI_AI_SampleClock,
472 NI_AI_StartTrigger,
473 NI_AI_ReferenceTrigger,
474 NI_AI_ConvertClock,
475 NI_DI_SampleClock,
476 NI_DO_SampleClock,
477 NI_FrequencyOutput,
478 NI_ChangeDetectionEvent,
479 0,
480 }
481 },
482 {
483 .dest = TRIGGER_LINE(0),
484 .src = (int[]){
485 NI_PFI(0),
486 NI_PFI(1),
487 NI_PFI(2),
488 NI_PFI(3),
489 NI_PFI(4),
490 NI_PFI(5),
491 NI_CtrSource(0),
492 NI_CtrSource(1),
493 NI_CtrGate(0),
494 NI_CtrGate(1),
495 NI_CtrInternalOutput(0),
496 NI_CtrInternalOutput(1),
497 NI_AI_SampleClock,
498 NI_AI_StartTrigger,
499 NI_AI_ReferenceTrigger,
500 NI_AI_ConvertClock,
501 NI_AI_PauseTrigger,
502 NI_10MHzRefClock,
503 NI_FrequencyOutput,
504 NI_ChangeDetectionEvent,
505 0,
506 }
507 },
508 {
509 .dest = TRIGGER_LINE(1),
510 .src = (int[]){
511 NI_PFI(0),
512 NI_PFI(1),
513 NI_PFI(2),
514 NI_PFI(3),
515 NI_PFI(4),
516 NI_PFI(5),
517 NI_CtrSource(0),
518 NI_CtrSource(1),
519 NI_CtrGate(0),
520 NI_CtrGate(1),
521 NI_CtrInternalOutput(0),
522 NI_CtrInternalOutput(1),
523 NI_AI_SampleClock,
524 NI_AI_StartTrigger,
525 NI_AI_ReferenceTrigger,
526 NI_AI_ConvertClock,
527 NI_AI_PauseTrigger,
528 NI_10MHzRefClock,
529 NI_FrequencyOutput,
530 NI_ChangeDetectionEvent,
531 0,
532 }
533 },
534 {
535 .dest = TRIGGER_LINE(2),
536 .src = (int[]){
537 NI_PFI(0),
538 NI_PFI(1),
539 NI_PFI(2),
540 NI_PFI(3),
541 NI_PFI(4),
542 NI_PFI(5),
543 NI_CtrSource(0),
544 NI_CtrSource(1),
545 NI_CtrGate(0),
546 NI_CtrGate(1),
547 NI_CtrInternalOutput(0),
548 NI_CtrInternalOutput(1),
549 NI_AI_SampleClock,
550 NI_AI_StartTrigger,
551 NI_AI_ReferenceTrigger,
552 NI_AI_ConvertClock,
553 NI_AI_PauseTrigger,
554 NI_10MHzRefClock,
555 NI_FrequencyOutput,
556 NI_ChangeDetectionEvent,
557 0,
558 }
559 },
560 {
561 .dest = TRIGGER_LINE(3),
562 .src = (int[]){
563 NI_PFI(0),
564 NI_PFI(1),
565 NI_PFI(2),
566 NI_PFI(3),
567 NI_PFI(4),
568 NI_PFI(5),
569 NI_CtrSource(0),
570 NI_CtrSource(1),
571 NI_CtrGate(0),
572 NI_CtrGate(1),
573 NI_CtrInternalOutput(0),
574 NI_CtrInternalOutput(1),
575 NI_AI_SampleClock,
576 NI_AI_StartTrigger,
577 NI_AI_ReferenceTrigger,
578 NI_AI_ConvertClock,
579 NI_AI_PauseTrigger,
580 NI_10MHzRefClock,
581 NI_FrequencyOutput,
582 NI_ChangeDetectionEvent,
583 0,
584 }
585 },
586 {
587 .dest = TRIGGER_LINE(4),
588 .src = (int[]){
589 NI_PFI(0),
590 NI_PFI(1),
591 NI_PFI(2),
592 NI_PFI(3),
593 NI_PFI(4),
594 NI_PFI(5),
595 NI_CtrSource(0),
596 NI_CtrSource(1),
597 NI_CtrGate(0),
598 NI_CtrGate(1),
599 NI_CtrInternalOutput(0),
600 NI_CtrInternalOutput(1),
601 NI_AI_SampleClock,
602 NI_AI_StartTrigger,
603 NI_AI_ReferenceTrigger,
604 NI_AI_ConvertClock,
605 NI_AI_PauseTrigger,
606 NI_10MHzRefClock,
607 NI_FrequencyOutput,
608 NI_ChangeDetectionEvent,
609 0,
610 }
611 },
612 {
613 .dest = TRIGGER_LINE(5),
614 .src = (int[]){
615 NI_PFI(0),
616 NI_PFI(1),
617 NI_PFI(2),
618 NI_PFI(3),
619 NI_PFI(4),
620 NI_PFI(5),
621 NI_CtrSource(0),
622 NI_CtrSource(1),
623 NI_CtrGate(0),
624 NI_CtrGate(1),
625 NI_CtrInternalOutput(0),
626 NI_CtrInternalOutput(1),
627 NI_AI_SampleClock,
628 NI_AI_StartTrigger,
629 NI_AI_ReferenceTrigger,
630 NI_AI_ConvertClock,
631 NI_AI_PauseTrigger,
632 NI_10MHzRefClock,
633 NI_FrequencyOutput,
634 NI_ChangeDetectionEvent,
635 0,
636 }
637 },
638 {
639 .dest = TRIGGER_LINE(6),
640 .src = (int[]){
641 NI_PFI(0),
642 NI_PFI(1),
643 NI_PFI(2),
644 NI_PFI(3),
645 NI_PFI(4),
646 NI_PFI(5),
647 NI_CtrSource(0),
648 NI_CtrSource(1),
649 NI_CtrGate(0),
650 NI_CtrGate(1),
651 NI_CtrInternalOutput(0),
652 NI_CtrInternalOutput(1),
653 NI_AI_SampleClock,
654 NI_AI_StartTrigger,
655 NI_AI_ReferenceTrigger,
656 NI_AI_ConvertClock,
657 NI_AI_PauseTrigger,
658 NI_10MHzRefClock,
659 NI_FrequencyOutput,
660 NI_ChangeDetectionEvent,
661 0,
662 }
663 },
664 {
665 .dest = TRIGGER_LINE(7),
666 .src = (int[]){
667 NI_PFI(0),
668 NI_PFI(1),
669 NI_PFI(2),
670 NI_PFI(3),
671 NI_PFI(4),
672 NI_PFI(5),
673 NI_CtrSource(0),
674 NI_CtrSource(1),
675 NI_CtrGate(0),
676 NI_CtrGate(1),
677 NI_CtrInternalOutput(0),
678 NI_CtrInternalOutput(1),
679 NI_AI_SampleClock,
680 NI_AI_StartTrigger,
681 NI_AI_ReferenceTrigger,
682 NI_AI_ConvertClock,
683 NI_AI_PauseTrigger,
684 NI_10MHzRefClock,
685 NI_FrequencyOutput,
686 NI_ChangeDetectionEvent,
687 0,
688 }
689 },
690 {
691 .dest = NI_CtrSource(0),
692 .src = (int[]){
693 NI_PFI(0),
694 NI_PFI(1),
695 NI_PFI(2),
696 NI_PFI(3),
697 NI_PFI(4),
698 NI_PFI(5),
699 NI_PFI(6),
700 NI_PFI(7),
701 NI_PFI(8),
702 NI_PFI(9),
703 NI_PFI(10),
704 NI_PFI(11),
705 NI_PFI(12),
706 NI_PFI(13),
707 NI_PFI(14),
708 NI_PFI(15),
709 TRIGGER_LINE(0),
710 TRIGGER_LINE(1),
711 TRIGGER_LINE(2),
712 TRIGGER_LINE(3),
713 TRIGGER_LINE(4),
714 TRIGGER_LINE(5),
715 TRIGGER_LINE(6),
716 TRIGGER_LINE(7),
717 NI_CtrGate(1),
718 NI_20MHzTimebase,
719 NI_80MHzTimebase,
720 NI_100kHzTimebase,
721 0,
722 }
723 },
724 {
725 .dest = NI_CtrSource(1),
726 .src = (int[]){
727 NI_PFI(0),
728 NI_PFI(1),
729 NI_PFI(2),
730 NI_PFI(3),
731 NI_PFI(4),
732 NI_PFI(5),
733 NI_PFI(6),
734 NI_PFI(7),
735 NI_PFI(8),
736 NI_PFI(9),
737 NI_PFI(10),
738 NI_PFI(11),
739 NI_PFI(12),
740 NI_PFI(13),
741 NI_PFI(14),
742 NI_PFI(15),
743 TRIGGER_LINE(0),
744 TRIGGER_LINE(1),
745 TRIGGER_LINE(2),
746 TRIGGER_LINE(3),
747 TRIGGER_LINE(4),
748 TRIGGER_LINE(5),
749 TRIGGER_LINE(6),
750 TRIGGER_LINE(7),
751 NI_CtrGate(0),
752 NI_20MHzTimebase,
753 NI_80MHzTimebase,
754 NI_100kHzTimebase,
755 0,
756 }
757 },
758 {
759 .dest = NI_CtrGate(0),
760 .src = (int[]){
761 NI_PFI(0),
762 NI_PFI(1),
763 NI_PFI(2),
764 NI_PFI(3),
765 NI_PFI(4),
766 NI_PFI(5),
767 NI_PFI(6),
768 NI_PFI(7),
769 NI_PFI(8),
770 NI_PFI(9),
771 NI_PFI(10),
772 NI_PFI(11),
773 NI_PFI(12),
774 NI_PFI(13),
775 NI_PFI(14),
776 NI_PFI(15),
777 TRIGGER_LINE(0),
778 TRIGGER_LINE(1),
779 TRIGGER_LINE(2),
780 TRIGGER_LINE(3),
781 TRIGGER_LINE(4),
782 TRIGGER_LINE(5),
783 TRIGGER_LINE(6),
784 TRIGGER_LINE(7),
785 NI_CtrSource(1),
786 NI_CtrInternalOutput(1),
787 NI_AI_StartTrigger,
788 NI_AI_ReferenceTrigger,
789 0,
790 }
791 },
792 {
793 .dest = NI_CtrGate(1),
794 .src = (int[]){
795 NI_PFI(0),
796 NI_PFI(1),
797 NI_PFI(2),
798 NI_PFI(3),
799 NI_PFI(4),
800 NI_PFI(5),
801 NI_PFI(6),
802 NI_PFI(7),
803 NI_PFI(8),
804 NI_PFI(9),
805 NI_PFI(10),
806 NI_PFI(11),
807 NI_PFI(12),
808 NI_PFI(13),
809 NI_PFI(14),
810 NI_PFI(15),
811 TRIGGER_LINE(0),
812 TRIGGER_LINE(1),
813 TRIGGER_LINE(2),
814 TRIGGER_LINE(3),
815 TRIGGER_LINE(4),
816 TRIGGER_LINE(5),
817 TRIGGER_LINE(6),
818 TRIGGER_LINE(7),
819 NI_CtrSource(0),
820 NI_CtrInternalOutput(0),
821 NI_AI_StartTrigger,
822 NI_AI_ReferenceTrigger,
823 0,
824 }
825 },
826 {
827 .dest = NI_CtrAux(0),
828 .src = (int[]){
829 NI_PFI(0),
830 NI_PFI(1),
831 NI_PFI(2),
832 NI_PFI(3),
833 NI_PFI(4),
834 NI_PFI(5),
835 NI_PFI(6),
836 NI_PFI(7),
837 NI_PFI(8),
838 NI_PFI(9),
839 NI_PFI(10),
840 NI_PFI(11),
841 NI_PFI(12),
842 NI_PFI(13),
843 NI_PFI(14),
844 NI_PFI(15),
845 TRIGGER_LINE(0),
846 TRIGGER_LINE(1),
847 TRIGGER_LINE(2),
848 TRIGGER_LINE(3),
849 TRIGGER_LINE(4),
850 TRIGGER_LINE(5),
851 TRIGGER_LINE(6),
852 TRIGGER_LINE(7),
853 NI_CtrSource(1),
854 NI_CtrGate(0),
855 NI_CtrGate(1),
856 NI_CtrInternalOutput(1),
857 NI_AI_StartTrigger,
858 NI_AI_ReferenceTrigger,
859 0,
860 }
861 },
862 {
863 .dest = NI_CtrAux(1),
864 .src = (int[]){
865 NI_PFI(0),
866 NI_PFI(1),
867 NI_PFI(2),
868 NI_PFI(3),
869 NI_PFI(4),
870 NI_PFI(5),
871 NI_PFI(6),
872 NI_PFI(7),
873 NI_PFI(8),
874 NI_PFI(9),
875 NI_PFI(10),
876 NI_PFI(11),
877 NI_PFI(12),
878 NI_PFI(13),
879 NI_PFI(14),
880 NI_PFI(15),
881 TRIGGER_LINE(0),
882 TRIGGER_LINE(1),
883 TRIGGER_LINE(2),
884 TRIGGER_LINE(3),
885 TRIGGER_LINE(4),
886 TRIGGER_LINE(5),
887 TRIGGER_LINE(6),
888 TRIGGER_LINE(7),
889 NI_CtrSource(0),
890 NI_CtrGate(0),
891 NI_CtrGate(1),
892 NI_CtrInternalOutput(0),
893 NI_AI_StartTrigger,
894 NI_AI_ReferenceTrigger,
895 0,
896 }
897 },
898 {
899 .dest = NI_CtrA(0),
900 .src = (int[]){
901 NI_PFI(0),
902 NI_PFI(1),
903 NI_PFI(2),
904 NI_PFI(3),
905 NI_PFI(4),
906 NI_PFI(5),
907 NI_PFI(6),
908 NI_PFI(7),
909 NI_PFI(8),
910 NI_PFI(9),
911 NI_PFI(10),
912 NI_PFI(11),
913 NI_PFI(12),
914 NI_PFI(13),
915 NI_PFI(14),
916 NI_PFI(15),
917 TRIGGER_LINE(0),
918 TRIGGER_LINE(1),
919 TRIGGER_LINE(2),
920 TRIGGER_LINE(3),
921 TRIGGER_LINE(4),
922 TRIGGER_LINE(5),
923 TRIGGER_LINE(6),
924 TRIGGER_LINE(7),
925 0,
926 }
927 },
928 {
929 .dest = NI_CtrA(1),
930 .src = (int[]){
931 NI_PFI(0),
932 NI_PFI(1),
933 NI_PFI(2),
934 NI_PFI(3),
935 NI_PFI(4),
936 NI_PFI(5),
937 NI_PFI(6),
938 NI_PFI(7),
939 NI_PFI(8),
940 NI_PFI(9),
941 NI_PFI(10),
942 NI_PFI(11),
943 NI_PFI(12),
944 NI_PFI(13),
945 NI_PFI(14),
946 NI_PFI(15),
947 TRIGGER_LINE(0),
948 TRIGGER_LINE(1),
949 TRIGGER_LINE(2),
950 TRIGGER_LINE(3),
951 TRIGGER_LINE(4),
952 TRIGGER_LINE(5),
953 TRIGGER_LINE(6),
954 TRIGGER_LINE(7),
955 0,
956 }
957 },
958 {
959 .dest = NI_CtrB(0),
960 .src = (int[]){
961 NI_PFI(0),
962 NI_PFI(1),
963 NI_PFI(2),
964 NI_PFI(3),
965 NI_PFI(4),
966 NI_PFI(5),
967 NI_PFI(6),
968 NI_PFI(7),
969 NI_PFI(8),
970 NI_PFI(9),
971 NI_PFI(10),
972 NI_PFI(11),
973 NI_PFI(12),
974 NI_PFI(13),
975 NI_PFI(14),
976 NI_PFI(15),
977 TRIGGER_LINE(0),
978 TRIGGER_LINE(1),
979 TRIGGER_LINE(2),
980 TRIGGER_LINE(3),
981 TRIGGER_LINE(4),
982 TRIGGER_LINE(5),
983 TRIGGER_LINE(6),
984 TRIGGER_LINE(7),
985 0,
986 }
987 },
988 {
989 .dest = NI_CtrB(1),
990 .src = (int[]){
991 NI_PFI(0),
992 NI_PFI(1),
993 NI_PFI(2),
994 NI_PFI(3),
995 NI_PFI(4),
996 NI_PFI(5),
997 NI_PFI(6),
998 NI_PFI(7),
999 NI_PFI(8),
1000 NI_PFI(9),
1001 NI_PFI(10),
1002 NI_PFI(11),
1003 NI_PFI(12),
1004 NI_PFI(13),
1005 NI_PFI(14),
1006 NI_PFI(15),
1007 TRIGGER_LINE(0),
1008 TRIGGER_LINE(1),
1009 TRIGGER_LINE(2),
1010 TRIGGER_LINE(3),
1011 TRIGGER_LINE(4),
1012 TRIGGER_LINE(5),
1013 TRIGGER_LINE(6),
1014 TRIGGER_LINE(7),
1015 0,
1016 }
1017 },
1018 {
1019 .dest = NI_CtrZ(0),
1020 .src = (int[]){
1021 NI_PFI(0),
1022 NI_PFI(1),
1023 NI_PFI(2),
1024 NI_PFI(3),
1025 NI_PFI(4),
1026 NI_PFI(5),
1027 NI_PFI(6),
1028 NI_PFI(7),
1029 NI_PFI(8),
1030 NI_PFI(9),
1031 NI_PFI(10),
1032 NI_PFI(11),
1033 NI_PFI(12),
1034 NI_PFI(13),
1035 NI_PFI(14),
1036 NI_PFI(15),
1037 TRIGGER_LINE(0),
1038 TRIGGER_LINE(1),
1039 TRIGGER_LINE(2),
1040 TRIGGER_LINE(3),
1041 TRIGGER_LINE(4),
1042 TRIGGER_LINE(5),
1043 TRIGGER_LINE(6),
1044 TRIGGER_LINE(7),
1045 0,
1046 }
1047 },
1048 {
1049 .dest = NI_CtrZ(1),
1050 .src = (int[]){
1051 NI_PFI(0),
1052 NI_PFI(1),
1053 NI_PFI(2),
1054 NI_PFI(3),
1055 NI_PFI(4),
1056 NI_PFI(5),
1057 NI_PFI(6),
1058 NI_PFI(7),
1059 NI_PFI(8),
1060 NI_PFI(9),
1061 NI_PFI(10),
1062 NI_PFI(11),
1063 NI_PFI(12),
1064 NI_PFI(13),
1065 NI_PFI(14),
1066 NI_PFI(15),
1067 TRIGGER_LINE(0),
1068 TRIGGER_LINE(1),
1069 TRIGGER_LINE(2),
1070 TRIGGER_LINE(3),
1071 TRIGGER_LINE(4),
1072 TRIGGER_LINE(5),
1073 TRIGGER_LINE(6),
1074 TRIGGER_LINE(7),
1075 0,
1076 }
1077 },
1078 {
1079 .dest = NI_CtrArmStartTrigger(0),
1080 .src = (int[]){
1081 NI_PFI(0),
1082 NI_PFI(1),
1083 NI_PFI(2),
1084 NI_PFI(3),
1085 NI_PFI(4),
1086 NI_PFI(5),
1087 NI_PFI(6),
1088 NI_PFI(7),
1089 NI_PFI(8),
1090 NI_PFI(9),
1091 NI_PFI(10),
1092 NI_PFI(11),
1093 NI_PFI(12),
1094 NI_PFI(13),
1095 NI_PFI(14),
1096 NI_PFI(15),
1097 TRIGGER_LINE(0),
1098 TRIGGER_LINE(1),
1099 TRIGGER_LINE(2),
1100 TRIGGER_LINE(3),
1101 TRIGGER_LINE(4),
1102 TRIGGER_LINE(5),
1103 TRIGGER_LINE(6),
1104 TRIGGER_LINE(7),
1105 NI_CtrInternalOutput(1),
1106 NI_AI_StartTrigger,
1107 NI_AI_ReferenceTrigger,
1108 0,
1109 }
1110 },
1111 {
1112 .dest = NI_CtrArmStartTrigger(1),
1113 .src = (int[]){
1114 NI_PFI(0),
1115 NI_PFI(1),
1116 NI_PFI(2),
1117 NI_PFI(3),
1118 NI_PFI(4),
1119 NI_PFI(5),
1120 NI_PFI(6),
1121 NI_PFI(7),
1122 NI_PFI(8),
1123 NI_PFI(9),
1124 NI_PFI(10),
1125 NI_PFI(11),
1126 NI_PFI(12),
1127 NI_PFI(13),
1128 NI_PFI(14),
1129 NI_PFI(15),
1130 TRIGGER_LINE(0),
1131 TRIGGER_LINE(1),
1132 TRIGGER_LINE(2),
1133 TRIGGER_LINE(3),
1134 TRIGGER_LINE(4),
1135 TRIGGER_LINE(5),
1136 TRIGGER_LINE(6),
1137 TRIGGER_LINE(7),
1138 NI_CtrInternalOutput(0),
1139 NI_AI_StartTrigger,
1140 NI_AI_ReferenceTrigger,
1141 0,
1142 }
1143 },
1144 {
1145 .dest = NI_AI_SampleClock,
1146 .src = (int[]){
1147 NI_PFI(0),
1148 NI_PFI(1),
1149 NI_PFI(2),
1150 NI_PFI(3),
1151 NI_PFI(4),
1152 NI_PFI(5),
1153 NI_PFI(6),
1154 NI_PFI(7),
1155 NI_PFI(8),
1156 NI_PFI(9),
1157 NI_PFI(10),
1158 NI_PFI(11),
1159 NI_PFI(12),
1160 NI_PFI(13),
1161 NI_PFI(14),
1162 NI_PFI(15),
1163 TRIGGER_LINE(0),
1164 TRIGGER_LINE(1),
1165 TRIGGER_LINE(2),
1166 TRIGGER_LINE(3),
1167 TRIGGER_LINE(4),
1168 TRIGGER_LINE(5),
1169 TRIGGER_LINE(6),
1170 TRIGGER_LINE(7),
1171 NI_CtrInternalOutput(0),
1172 NI_CtrInternalOutput(1),
1173 NI_AI_SampleClockTimebase,
1174 0,
1175 }
1176 },
1177 {
1178 .dest = NI_AI_SampleClockTimebase,
1179 .src = (int[]){
1180 NI_PFI(0),
1181 NI_PFI(1),
1182 NI_PFI(2),
1183 NI_PFI(3),
1184 NI_PFI(4),
1185 NI_PFI(5),
1186 NI_PFI(6),
1187 NI_PFI(7),
1188 NI_PFI(8),
1189 NI_PFI(9),
1190 NI_PFI(10),
1191 NI_PFI(11),
1192 NI_PFI(12),
1193 NI_PFI(13),
1194 NI_PFI(14),
1195 NI_PFI(15),
1196 TRIGGER_LINE(0),
1197 TRIGGER_LINE(1),
1198 TRIGGER_LINE(2),
1199 TRIGGER_LINE(3),
1200 TRIGGER_LINE(4),
1201 TRIGGER_LINE(5),
1202 TRIGGER_LINE(6),
1203 TRIGGER_LINE(7),
1204 NI_20MHzTimebase,
1205 NI_100kHzTimebase,
1206 0,
1207 }
1208 },
1209 {
1210 .dest = NI_AI_StartTrigger,
1211 .src = (int[]){
1212 NI_PFI(0),
1213 NI_PFI(1),
1214 NI_PFI(2),
1215 NI_PFI(3),
1216 NI_PFI(4),
1217 NI_PFI(5),
1218 NI_PFI(6),
1219 NI_PFI(7),
1220 NI_PFI(8),
1221 NI_PFI(9),
1222 NI_PFI(10),
1223 NI_PFI(11),
1224 NI_PFI(12),
1225 NI_PFI(13),
1226 NI_PFI(14),
1227 NI_PFI(15),
1228 TRIGGER_LINE(0),
1229 TRIGGER_LINE(1),
1230 TRIGGER_LINE(2),
1231 TRIGGER_LINE(3),
1232 TRIGGER_LINE(4),
1233 TRIGGER_LINE(5),
1234 TRIGGER_LINE(6),
1235 TRIGGER_LINE(7),
1236 NI_CtrInternalOutput(0),
1237 NI_CtrInternalOutput(1),
1238 0,
1239 }
1240 },
1241 {
1242 .dest = NI_AI_ReferenceTrigger,
1243 .src = (int[]){
1244 NI_PFI(0),
1245 NI_PFI(1),
1246 NI_PFI(2),
1247 NI_PFI(3),
1248 NI_PFI(4),
1249 NI_PFI(5),
1250 NI_PFI(6),
1251 NI_PFI(7),
1252 NI_PFI(8),
1253 NI_PFI(9),
1254 NI_PFI(10),
1255 NI_PFI(11),
1256 NI_PFI(12),
1257 NI_PFI(13),
1258 NI_PFI(14),
1259 NI_PFI(15),
1260 TRIGGER_LINE(0),
1261 TRIGGER_LINE(1),
1262 TRIGGER_LINE(2),
1263 TRIGGER_LINE(3),
1264 TRIGGER_LINE(4),
1265 TRIGGER_LINE(5),
1266 TRIGGER_LINE(6),
1267 TRIGGER_LINE(7),
1268 0,
1269 }
1270 },
1271 {
1272 .dest = NI_AI_ConvertClock,
1273 .src = (int[]){
1274 NI_PFI(0),
1275 NI_PFI(1),
1276 NI_PFI(2),
1277 NI_PFI(3),
1278 NI_PFI(4),
1279 NI_PFI(5),
1280 NI_PFI(6),
1281 NI_PFI(7),
1282 NI_PFI(8),
1283 NI_PFI(9),
1284 NI_PFI(10),
1285 NI_PFI(11),
1286 NI_PFI(12),
1287 NI_PFI(13),
1288 NI_PFI(14),
1289 NI_PFI(15),
1290 TRIGGER_LINE(0),
1291 TRIGGER_LINE(1),
1292 TRIGGER_LINE(2),
1293 TRIGGER_LINE(3),
1294 TRIGGER_LINE(4),
1295 TRIGGER_LINE(5),
1296 TRIGGER_LINE(6),
1297 TRIGGER_LINE(7),
1298 NI_CtrInternalOutput(0),
1299 NI_CtrInternalOutput(1),
1300 NI_AI_ConvertClockTimebase,
1301 0,
1302 }
1303 },
1304 {
1305 .dest = NI_AI_ConvertClockTimebase,
1306 .src = (int[]){
1307 NI_AI_SampleClockTimebase,
1308 NI_20MHzTimebase,
1309 0,
1310 }
1311 },
1312 {
1313 .dest = NI_AI_PauseTrigger,
1314 .src = (int[]){
1315 NI_PFI(0),
1316 NI_PFI(1),
1317 NI_PFI(2),
1318 NI_PFI(3),
1319 NI_PFI(4),
1320 NI_PFI(5),
1321 NI_PFI(6),
1322 NI_PFI(7),
1323 NI_PFI(8),
1324 NI_PFI(9),
1325 NI_PFI(10),
1326 NI_PFI(11),
1327 NI_PFI(12),
1328 NI_PFI(13),
1329 NI_PFI(14),
1330 NI_PFI(15),
1331 TRIGGER_LINE(0),
1332 TRIGGER_LINE(1),
1333 TRIGGER_LINE(2),
1334 TRIGGER_LINE(3),
1335 TRIGGER_LINE(4),
1336 TRIGGER_LINE(5),
1337 TRIGGER_LINE(6),
1338 TRIGGER_LINE(7),
1339 0,
1340 }
1341 },
1342 {
1343 .dest = NI_DI_SampleClock,
1344 .src = (int[]){
1345 NI_PFI(0),
1346 NI_PFI(1),
1347 NI_PFI(2),
1348 NI_PFI(3),
1349 NI_PFI(4),
1350 NI_PFI(5),
1351 NI_PFI(6),
1352 NI_PFI(7),
1353 NI_PFI(8),
1354 NI_PFI(9),
1355 NI_PFI(10),
1356 NI_PFI(11),
1357 NI_PFI(12),
1358 NI_PFI(13),
1359 NI_PFI(14),
1360 NI_PFI(15),
1361 TRIGGER_LINE(0),
1362 TRIGGER_LINE(1),
1363 TRIGGER_LINE(2),
1364 TRIGGER_LINE(3),
1365 TRIGGER_LINE(4),
1366 TRIGGER_LINE(5),
1367 TRIGGER_LINE(6),
1368 TRIGGER_LINE(7),
1369 NI_CtrInternalOutput(0),
1370 NI_CtrInternalOutput(1),
1371 NI_AI_SampleClock,
1372 NI_AI_ConvertClock,
1373 NI_FrequencyOutput,
1374 NI_ChangeDetectionEvent,
1375 0,
1376 }
1377 },
1378 {
1379 .dest = NI_DO_SampleClock,
1380 .src = (int[]){
1381 NI_PFI(0),
1382 NI_PFI(1),
1383 NI_PFI(2),
1384 NI_PFI(3),
1385 NI_PFI(4),
1386 NI_PFI(5),
1387 NI_PFI(6),
1388 NI_PFI(7),
1389 NI_PFI(8),
1390 NI_PFI(9),
1391 NI_PFI(10),
1392 NI_PFI(11),
1393 NI_PFI(12),
1394 NI_PFI(13),
1395 NI_PFI(14),
1396 NI_PFI(15),
1397 TRIGGER_LINE(0),
1398 TRIGGER_LINE(1),
1399 TRIGGER_LINE(2),
1400 TRIGGER_LINE(3),
1401 TRIGGER_LINE(4),
1402 TRIGGER_LINE(5),
1403 TRIGGER_LINE(6),
1404 TRIGGER_LINE(7),
1405 NI_CtrInternalOutput(0),
1406 NI_CtrInternalOutput(1),
1407 NI_AI_SampleClock,
1408 NI_AI_ConvertClock,
1409 NI_FrequencyOutput,
1410 NI_ChangeDetectionEvent,
1411 0,
1412 }
1413 },
1414 {
1415 .dest = 0,
1416 },
1417 },
1418 };