1 // SPDX-License-Identifier: GPL-2.0+ 2 /* 3 * comedi/drivers/ni_routing/ni_device_routes/pxie-6535.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_pxie_6535_device_routes = { 31 .device = "pxie-6535", 32 .routes = (struct ni_route_set[]){ 33 { 34 .dest = NI_PFI(0), 35 .src = (int[]){ 36 NI_PFI(1), 37 NI_PFI(2), 38 NI_PFI(3), 39 NI_PFI(4), 40 NI_PFI(5), 41 TRIGGER_LINE(0), 42 TRIGGER_LINE(1), 43 TRIGGER_LINE(2), 44 TRIGGER_LINE(3), 45 TRIGGER_LINE(4), 46 TRIGGER_LINE(5), 47 TRIGGER_LINE(6), 48 NI_DI_StartTrigger, 49 NI_DI_ReferenceTrigger, 50 NI_DI_InputBufferFull, 51 NI_DI_ReadyForStartEvent, 52 NI_DI_ReadyForTransferEventBurst, 53 NI_DI_ReadyForTransferEventPipelined, 54 NI_DO_StartTrigger, 55 NI_DO_OutputBufferFull, 56 NI_DO_DataActiveEvent, 57 NI_DO_ReadyForStartEvent, 58 NI_DO_ReadyForTransferEvent, 59 NI_ChangeDetectionEvent, 60 0, /* Termination */ 61 } 62 }, 63 { 64 .dest = NI_PFI(1), 65 .src = (int[]){ 66 NI_PFI(0), 67 NI_PFI(2), 68 NI_PFI(3), 69 NI_PFI(4), 70 NI_PFI(5), 71 TRIGGER_LINE(0), 72 TRIGGER_LINE(1), 73 TRIGGER_LINE(2), 74 TRIGGER_LINE(3), 75 TRIGGER_LINE(4), 76 TRIGGER_LINE(5), 77 TRIGGER_LINE(6), 78 NI_DI_StartTrigger, 79 NI_DI_ReferenceTrigger, 80 NI_DI_InputBufferFull, 81 NI_DI_ReadyForStartEvent, 82 NI_DI_ReadyForTransferEventBurst, 83 NI_DI_ReadyForTransferEventPipelined, 84 NI_DO_StartTrigger, 85 NI_DO_OutputBufferFull, 86 NI_DO_DataActiveEvent, 87 NI_DO_ReadyForStartEvent, 88 NI_DO_ReadyForTransferEvent, 89 NI_ChangeDetectionEvent, 90 0, /* Termination */ 91 } 92 }, 93 { 94 .dest = NI_PFI(2), 95 .src = (int[]){ 96 NI_PFI(0), 97 NI_PFI(1), 98 NI_PFI(3), 99 NI_PFI(4), 100 NI_PFI(5), 101 TRIGGER_LINE(0), 102 TRIGGER_LINE(1), 103 TRIGGER_LINE(2), 104 TRIGGER_LINE(3), 105 TRIGGER_LINE(4), 106 TRIGGER_LINE(5), 107 TRIGGER_LINE(6), 108 NI_DI_StartTrigger, 109 NI_DI_ReferenceTrigger, 110 NI_DI_InputBufferFull, 111 NI_DI_ReadyForStartEvent, 112 NI_DI_ReadyForTransferEventBurst, 113 NI_DI_ReadyForTransferEventPipelined, 114 NI_DO_StartTrigger, 115 NI_DO_OutputBufferFull, 116 NI_DO_DataActiveEvent, 117 NI_DO_ReadyForStartEvent, 118 NI_DO_ReadyForTransferEvent, 119 NI_ChangeDetectionEvent, 120 0, /* Termination */ 121 } 122 }, 123 { 124 .dest = NI_PFI(3), 125 .src = (int[]){ 126 NI_PFI(0), 127 NI_PFI(1), 128 NI_PFI(2), 129 NI_PFI(4), 130 NI_PFI(5), 131 TRIGGER_LINE(0), 132 TRIGGER_LINE(1), 133 TRIGGER_LINE(2), 134 TRIGGER_LINE(3), 135 TRIGGER_LINE(4), 136 TRIGGER_LINE(5), 137 TRIGGER_LINE(6), 138 NI_DI_StartTrigger, 139 NI_DI_ReferenceTrigger, 140 NI_DI_InputBufferFull, 141 NI_DI_ReadyForStartEvent, 142 NI_DI_ReadyForTransferEventBurst, 143 NI_DI_ReadyForTransferEventPipelined, 144 NI_DO_StartTrigger, 145 NI_DO_OutputBufferFull, 146 NI_DO_DataActiveEvent, 147 NI_DO_ReadyForStartEvent, 148 NI_DO_ReadyForTransferEvent, 149 NI_ChangeDetectionEvent, 150 0, /* Termination */ 151 } 152 }, 153 { 154 .dest = NI_PFI(4), 155 .src = (int[]){ 156 NI_PFI(0), 157 NI_PFI(1), 158 NI_PFI(2), 159 NI_PFI(3), 160 NI_PFI(5), 161 TRIGGER_LINE(0), 162 TRIGGER_LINE(1), 163 TRIGGER_LINE(2), 164 TRIGGER_LINE(3), 165 TRIGGER_LINE(4), 166 TRIGGER_LINE(5), 167 TRIGGER_LINE(6), 168 TRIGGER_LINE(7), 169 NI_DI_StartTrigger, 170 NI_DI_ReferenceTrigger, 171 NI_DI_InputBufferFull, 172 NI_DI_ReadyForStartEvent, 173 NI_DI_ReadyForTransferEventBurst, 174 NI_DI_ReadyForTransferEventPipelined, 175 NI_DO_SampleClock, 176 NI_DO_StartTrigger, 177 NI_DO_OutputBufferFull, 178 NI_DO_DataActiveEvent, 179 NI_DO_ReadyForStartEvent, 180 NI_DO_ReadyForTransferEvent, 181 NI_ChangeDetectionEvent, 182 0, /* Termination */ 183 } 184 }, 185 { 186 .dest = NI_PFI(5), 187 .src = (int[]){ 188 NI_PFI(0), 189 NI_PFI(1), 190 NI_PFI(2), 191 NI_PFI(3), 192 NI_PFI(4), 193 TRIGGER_LINE(0), 194 TRIGGER_LINE(1), 195 TRIGGER_LINE(2), 196 TRIGGER_LINE(3), 197 TRIGGER_LINE(4), 198 TRIGGER_LINE(5), 199 TRIGGER_LINE(6), 200 TRIGGER_LINE(7), 201 NI_DI_SampleClock, 202 NI_DI_StartTrigger, 203 NI_DI_ReferenceTrigger, 204 NI_DI_InputBufferFull, 205 NI_DI_ReadyForStartEvent, 206 NI_DI_ReadyForTransferEventBurst, 207 NI_DI_ReadyForTransferEventPipelined, 208 NI_DO_StartTrigger, 209 NI_DO_OutputBufferFull, 210 NI_DO_DataActiveEvent, 211 NI_DO_ReadyForStartEvent, 212 NI_DO_ReadyForTransferEvent, 213 NI_ChangeDetectionEvent, 214 0, /* Termination */ 215 } 216 }, 217 { 218 .dest = TRIGGER_LINE(0), 219 .src = (int[]){ 220 NI_PFI(0), 221 NI_PFI(1), 222 NI_PFI(2), 223 NI_PFI(3), 224 NI_PFI(4), 225 NI_PFI(5), 226 TRIGGER_LINE(1), 227 TRIGGER_LINE(2), 228 TRIGGER_LINE(3), 229 TRIGGER_LINE(4), 230 TRIGGER_LINE(5), 231 TRIGGER_LINE(6), 232 NI_DI_StartTrigger, 233 NI_DI_ReferenceTrigger, 234 NI_DI_InputBufferFull, 235 NI_DI_ReadyForStartEvent, 236 NI_DI_ReadyForTransferEventBurst, 237 NI_DI_ReadyForTransferEventPipelined, 238 NI_DO_StartTrigger, 239 NI_DO_OutputBufferFull, 240 NI_DO_DataActiveEvent, 241 NI_DO_ReadyForStartEvent, 242 NI_DO_ReadyForTransferEvent, 243 NI_ChangeDetectionEvent, 244 0, /* Termination */ 245 } 246 }, 247 { 248 .dest = TRIGGER_LINE(1), 249 .src = (int[]){ 250 NI_PFI(0), 251 NI_PFI(1), 252 NI_PFI(2), 253 NI_PFI(3), 254 NI_PFI(4), 255 NI_PFI(5), 256 TRIGGER_LINE(0), 257 TRIGGER_LINE(2), 258 TRIGGER_LINE(3), 259 TRIGGER_LINE(4), 260 TRIGGER_LINE(5), 261 TRIGGER_LINE(6), 262 NI_DI_StartTrigger, 263 NI_DI_ReferenceTrigger, 264 NI_DI_InputBufferFull, 265 NI_DI_ReadyForStartEvent, 266 NI_DI_ReadyForTransferEventBurst, 267 NI_DI_ReadyForTransferEventPipelined, 268 NI_DO_StartTrigger, 269 NI_DO_OutputBufferFull, 270 NI_DO_DataActiveEvent, 271 NI_DO_ReadyForStartEvent, 272 NI_DO_ReadyForTransferEvent, 273 NI_ChangeDetectionEvent, 274 0, /* Termination */ 275 } 276 }, 277 { 278 .dest = TRIGGER_LINE(2), 279 .src = (int[]){ 280 NI_PFI(0), 281 NI_PFI(1), 282 NI_PFI(2), 283 NI_PFI(3), 284 NI_PFI(4), 285 NI_PFI(5), 286 TRIGGER_LINE(0), 287 TRIGGER_LINE(1), 288 TRIGGER_LINE(3), 289 TRIGGER_LINE(4), 290 TRIGGER_LINE(5), 291 TRIGGER_LINE(6), 292 NI_DI_StartTrigger, 293 NI_DI_ReferenceTrigger, 294 NI_DI_InputBufferFull, 295 NI_DI_ReadyForStartEvent, 296 NI_DI_ReadyForTransferEventBurst, 297 NI_DI_ReadyForTransferEventPipelined, 298 NI_DO_StartTrigger, 299 NI_DO_OutputBufferFull, 300 NI_DO_DataActiveEvent, 301 NI_DO_ReadyForStartEvent, 302 NI_DO_ReadyForTransferEvent, 303 NI_ChangeDetectionEvent, 304 0, /* Termination */ 305 } 306 }, 307 { 308 .dest = TRIGGER_LINE(3), 309 .src = (int[]){ 310 NI_PFI(0), 311 NI_PFI(1), 312 NI_PFI(2), 313 NI_PFI(3), 314 NI_PFI(4), 315 NI_PFI(5), 316 TRIGGER_LINE(0), 317 TRIGGER_LINE(1), 318 TRIGGER_LINE(2), 319 TRIGGER_LINE(4), 320 TRIGGER_LINE(5), 321 TRIGGER_LINE(6), 322 NI_DI_StartTrigger, 323 NI_DI_ReferenceTrigger, 324 NI_DI_InputBufferFull, 325 NI_DI_ReadyForStartEvent, 326 NI_DI_ReadyForTransferEventBurst, 327 NI_DI_ReadyForTransferEventPipelined, 328 NI_DO_StartTrigger, 329 NI_DO_OutputBufferFull, 330 NI_DO_DataActiveEvent, 331 NI_DO_ReadyForStartEvent, 332 NI_DO_ReadyForTransferEvent, 333 NI_ChangeDetectionEvent, 334 0, /* Termination */ 335 } 336 }, 337 { 338 .dest = TRIGGER_LINE(4), 339 .src = (int[]){ 340 NI_PFI(0), 341 NI_PFI(1), 342 NI_PFI(2), 343 NI_PFI(3), 344 NI_PFI(4), 345 NI_PFI(5), 346 TRIGGER_LINE(0), 347 TRIGGER_LINE(1), 348 TRIGGER_LINE(2), 349 TRIGGER_LINE(3), 350 TRIGGER_LINE(5), 351 TRIGGER_LINE(6), 352 NI_DI_StartTrigger, 353 NI_DI_ReferenceTrigger, 354 NI_DI_InputBufferFull, 355 NI_DI_ReadyForStartEvent, 356 NI_DI_ReadyForTransferEventBurst, 357 NI_DI_ReadyForTransferEventPipelined, 358 NI_DO_StartTrigger, 359 NI_DO_OutputBufferFull, 360 NI_DO_DataActiveEvent, 361 NI_DO_ReadyForStartEvent, 362 NI_DO_ReadyForTransferEvent, 363 NI_ChangeDetectionEvent, 364 0, /* Termination */ 365 } 366 }, 367 { 368 .dest = TRIGGER_LINE(5), 369 .src = (int[]){ 370 NI_PFI(0), 371 NI_PFI(1), 372 NI_PFI(2), 373 NI_PFI(3), 374 NI_PFI(4), 375 NI_PFI(5), 376 TRIGGER_LINE(0), 377 TRIGGER_LINE(1), 378 TRIGGER_LINE(2), 379 TRIGGER_LINE(3), 380 TRIGGER_LINE(4), 381 TRIGGER_LINE(6), 382 NI_DI_StartTrigger, 383 NI_DI_ReferenceTrigger, 384 NI_DI_InputBufferFull, 385 NI_DI_ReadyForStartEvent, 386 NI_DI_ReadyForTransferEventBurst, 387 NI_DI_ReadyForTransferEventPipelined, 388 NI_DO_StartTrigger, 389 NI_DO_OutputBufferFull, 390 NI_DO_DataActiveEvent, 391 NI_DO_ReadyForStartEvent, 392 NI_DO_ReadyForTransferEvent, 393 NI_ChangeDetectionEvent, 394 0, /* Termination */ 395 } 396 }, 397 { 398 .dest = TRIGGER_LINE(6), 399 .src = (int[]){ 400 NI_PFI(0), 401 NI_PFI(1), 402 NI_PFI(2), 403 NI_PFI(3), 404 NI_PFI(4), 405 NI_PFI(5), 406 TRIGGER_LINE(0), 407 TRIGGER_LINE(1), 408 TRIGGER_LINE(2), 409 TRIGGER_LINE(3), 410 TRIGGER_LINE(4), 411 TRIGGER_LINE(5), 412 NI_DI_StartTrigger, 413 NI_DI_ReferenceTrigger, 414 NI_DI_InputBufferFull, 415 NI_DI_ReadyForStartEvent, 416 NI_DI_ReadyForTransferEventBurst, 417 NI_DI_ReadyForTransferEventPipelined, 418 NI_DO_StartTrigger, 419 NI_DO_OutputBufferFull, 420 NI_DO_DataActiveEvent, 421 NI_DO_ReadyForStartEvent, 422 NI_DO_ReadyForTransferEvent, 423 NI_ChangeDetectionEvent, 424 0, /* Termination */ 425 } 426 }, 427 { 428 .dest = TRIGGER_LINE(7), 429 .src = (int[]){ 430 NI_PFI(0), 431 NI_PFI(1), 432 NI_PFI(2), 433 NI_PFI(3), 434 NI_PFI(4), 435 NI_PFI(5), 436 TRIGGER_LINE(0), 437 TRIGGER_LINE(1), 438 TRIGGER_LINE(2), 439 TRIGGER_LINE(3), 440 TRIGGER_LINE(4), 441 TRIGGER_LINE(5), 442 TRIGGER_LINE(6), 443 NI_DI_StartTrigger, 444 NI_DI_ReferenceTrigger, 445 NI_DI_InputBufferFull, 446 NI_DI_ReadyForStartEvent, 447 NI_DI_ReadyForTransferEventBurst, 448 NI_DI_ReadyForTransferEventPipelined, 449 NI_DO_SampleClock, 450 NI_DO_StartTrigger, 451 NI_DO_OutputBufferFull, 452 NI_DO_DataActiveEvent, 453 NI_DO_ReadyForStartEvent, 454 NI_DO_ReadyForTransferEvent, 455 NI_ChangeDetectionEvent, 456 0, /* Termination */ 457 } 458 }, 459 { 460 .dest = NI_DI_SampleClock, 461 .src = (int[]){ 462 NI_PFI(5), 463 TRIGGER_LINE(7), 464 0, /* Termination */ 465 } 466 }, 467 { 468 .dest = NI_DI_StartTrigger, 469 .src = (int[]){ 470 NI_PFI(0), 471 NI_PFI(1), 472 NI_PFI(2), 473 NI_PFI(3), 474 NI_PFI(4), 475 NI_PFI(5), 476 TRIGGER_LINE(0), 477 TRIGGER_LINE(1), 478 TRIGGER_LINE(2), 479 TRIGGER_LINE(3), 480 TRIGGER_LINE(4), 481 TRIGGER_LINE(5), 482 TRIGGER_LINE(6), 483 0, /* Termination */ 484 } 485 }, 486 { 487 .dest = NI_DI_ReferenceTrigger, 488 .src = (int[]){ 489 NI_PFI(0), 490 NI_PFI(1), 491 NI_PFI(2), 492 NI_PFI(3), 493 NI_PFI(4), 494 NI_PFI(5), 495 TRIGGER_LINE(0), 496 TRIGGER_LINE(1), 497 TRIGGER_LINE(2), 498 TRIGGER_LINE(3), 499 TRIGGER_LINE(4), 500 TRIGGER_LINE(5), 501 TRIGGER_LINE(6), 502 0, /* Termination */ 503 } 504 }, 505 { 506 .dest = NI_DI_PauseTrigger, 507 .src = (int[]){ 508 NI_PFI(0), 509 NI_PFI(1), 510 NI_PFI(2), 511 NI_PFI(3), 512 NI_PFI(4), 513 NI_PFI(5), 514 TRIGGER_LINE(0), 515 TRIGGER_LINE(1), 516 TRIGGER_LINE(2), 517 TRIGGER_LINE(3), 518 TRIGGER_LINE(4), 519 TRIGGER_LINE(5), 520 TRIGGER_LINE(6), 521 0, /* Termination */ 522 } 523 }, 524 { 525 .dest = NI_DO_SampleClock, 526 .src = (int[]){ 527 NI_PFI(4), 528 TRIGGER_LINE(7), 529 0, /* Termination */ 530 } 531 }, 532 { 533 .dest = NI_DO_StartTrigger, 534 .src = (int[]){ 535 NI_PFI(0), 536 NI_PFI(1), 537 NI_PFI(2), 538 NI_PFI(3), 539 NI_PFI(4), 540 NI_PFI(5), 541 TRIGGER_LINE(0), 542 TRIGGER_LINE(1), 543 TRIGGER_LINE(2), 544 TRIGGER_LINE(3), 545 TRIGGER_LINE(4), 546 TRIGGER_LINE(5), 547 TRIGGER_LINE(6), 548 0, /* Termination */ 549 } 550 }, 551 { 552 .dest = NI_DO_PauseTrigger, 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 TRIGGER_LINE(0), 561 TRIGGER_LINE(1), 562 TRIGGER_LINE(2), 563 TRIGGER_LINE(3), 564 TRIGGER_LINE(4), 565 TRIGGER_LINE(5), 566 TRIGGER_LINE(6), 567 0, /* Termination */ 568 } 569 }, 570 { /* Termination of list */ 571 .dest = 0, 572 }, 573 }, 574 }; 575