1 // SPDX-License-Identifier: GPL-2.0+ 2 /* vim: set ts=8 sw=8 noet tw=80 nowrap: */ 3 /* 4 * comedi/drivers/ni_routing/ni_device_routes/pci-6220.c 5 * List of valid routes for specific NI boards. 6 * 7 * COMEDI - Linux Control and Measurement Device Interface 8 * Copyright (C) 2016 Spencer E. Olson <olsonse@umich.edu> 9 * 10 * This program is free software; you can redistribute it and/or modify 11 * it under the terms of the GNU General Public License as published by 12 * the Free Software Foundation; either version 2 of the License, or 13 * (at your option) any later version. 14 * 15 * This program is distributed in the hope that it will be useful, 16 * but WITHOUT ANY WARRANTY; without even the implied warranty of 17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 18 * GNU General Public License for more details. 19 */ 20 21 /* 22 * The contents of this file are generated using the tools in 23 * comedi/drivers/ni_routing/tools 24 * 25 * Please use those tools to help maintain the contents of this file. 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, /* Termination */ 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, /* Termination */ 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, /* Termination */ 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, /* Termination */ 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, /* Termination */ 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, /* Termination */ 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, /* Termination */ 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, /* Termination */ 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, /* Termination */ 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, /* Termination */ 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, /* Termination */ 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, /* Termination */ 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, /* Termination */ 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, /* Termination */ 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, /* Termination */ 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, /* Termination */ 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, /* Termination */ 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, /* Termination */ 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, /* Termination */ 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, /* Termination */ 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, /* Termination */ 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, /* Termination */ 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, /* Termination */ 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, /* Termination */ 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, /* Termination */ 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, /* Termination */ 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, /* Termination */ 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, /* Termination */ 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, /* Termination */ 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, /* Termination */ 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, /* Termination */ 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, /* Termination */ 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, /* Termination */ 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, /* Termination */ 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, /* Termination */ 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, /* Termination */ 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, /* Termination */ 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, /* Termination */ 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, /* Termination */ 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, /* Termination */ 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, /* Termination */ 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, /* Termination */ 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, /* Termination */ 1302 } 1303 }, 1304 { 1305 .dest = NI_AI_ConvertClockTimebase, 1306 .src = (int[]){ 1307 NI_AI_SampleClockTimebase, 1308 NI_20MHzTimebase, 1309 0, /* Termination */ 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, /* Termination */ 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, /* Termination */ 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, /* Termination */ 1412 } 1413 }, 1414 { /* Termination of list */ 1415 .dest = 0, 1416 }, 1417 }, 1418 }; 1419