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