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