Ticket #5406: multiple_sa3250_box_support.path

File multiple_sa3250_box_support.path, 3.5 KB (added by hadees, 12 years ago)

pathc for sa3250ch.c

Line 
17a8
2>  * Portions Copyright 2007 Benton Roberts <benton@bentonroberts.com> (1394 device selection code)
335,41c36,40
4< #define SA_VENDOR_ID1           0x000011e6
5< #define SA_VENDOR_ID2           0x000014f8
6< #define SA_VENDOR_ID3           0x00001692
7< #define SA_VENDOR_ID4           0x00001947
8< #define SA_VENDOR_ID5           0x00000f21
9< #define SA_VENDOR_ID6           0x00001ac3
10< #define SA_VENDOR_ID7           0x00000a73
11---
12> #define SA3250HD_VENDOR_ID1     0x000011e6
13> #define SA3250HD_VENDOR_ID2     0x000014f8
14> #define SA3250HD_VENDOR_ID3     0x00001692
15> #define SA3250HD_VENDOR_ID4     0x00001947
16> #define SA3250HD_VENDOR_ID5     0x00000f21
1742a42,43
18> #define SA4200HD_VENDOR_ID1     0x000014f8
19> #define SA4200HD_VENDOR_ID2     0x00001692
2044d44
21< #define SA4250HDC_MODEL_ID1     0x000010cc
2260a61,62
23>    fprintf(stderr, "  -n : FireWire Node Number\n");
24>    fprintf(stderr, "  -p : FireWire Port (Controller) Number\n");
2569a72,73
26>    int requested_device = -1;
27>    int port = 0;
2888a93,100
29>             case 'n':
30>                               i++;
31>                 requested_device = atoi(argv[i]);
32>                 break;
33>             case 'p':
34>                               i++;
35>                 port = atoi(argv[i]);
36>                 break;
37114c126
38<    if (raw1394_set_port(handle, 0) < 0) {
39---
40>    if (raw1394_set_port(handle, port) < 0) {
41133,142c145,153
42<       if (((dir.vendor_id == SA_VENDOR_ID1) ||
43<            (dir.vendor_id == SA_VENDOR_ID2) ||
44<            (dir.vendor_id == SA_VENDOR_ID3) ||
45<            (dir.vendor_id == SA_VENDOR_ID4) ||
46<            (dir.vendor_id == SA_VENDOR_ID5) ||
47<            (dir.vendor_id == SA_VENDOR_ID6) ||
48<            (dir.vendor_id == SA_VENDOR_ID7)) &&
49<           ((dir.model_id == SA3250HD_MODEL_ID1)  ||
50<            (dir.model_id == SA4200HD_MODEL_ID1)  ||
51<            (dir.model_id == SA4250HDC_MODEL_ID1)))
52---
53>       if ((((dir.vendor_id == SA4200HD_VENDOR_ID1) ||
54>             (dir.vendor_id == SA4200HD_VENDOR_ID2)) &&
55>           (dir.model_id == SA4200HD_MODEL_ID1))  ||
56>           (((dir.vendor_id == SA3250HD_VENDOR_ID1) ||
57>             (dir.vendor_id == SA3250HD_VENDOR_ID2) ||
58>             (dir.vendor_id == SA3250HD_VENDOR_ID3) ||
59>             (dir.vendor_id == SA3250HD_VENDOR_ID4) ||
60>             (dir.vendor_id == SA3250HD_VENDOR_ID5)) &&
61>             (dir.model_id == SA3250HD_MODEL_ID1)))
62144,153c155,163
63<           if (dir.model_id == SA4250HDC_MODEL_ID1)
64<           {
65<               fprintf(stderr, "Ignoring SA 4250HDC on node %d -- "
66<                       "sorry not supported yet\n", i);
67<           }
68<           else
69<           {
70<               device = i;
71<               break;
72<           }
73---
74>                       if (verbose) printf("Requested node %d\n", requested_device);
75>                       if (verbose) printf("Found compatible device at node %d\n", i);
76>                       /* If no device was requested, take the first one */
77>                       if ((requested_device == -1) |
78>                               ((requested_device == i) && (device == -1))) {
79>                                       if (verbose) printf("Using Device =  %d\n", requested_device);
80>                                       device = i;
81>                                       break;
82>                       }
83178c188
84<        avc1394_transaction_block(handle, 0, cmd, 3, 1);       
85---
86>        avc1394_transaction_block(handle, device, cmd, 3, 1);       
87193c203
88<        avc1394_transaction_block(handle, 0, cmd, 3, 1);
89---
90>        avc1394_transaction_block(handle, device, cmd, 3, 1);
91195c205
92<        cmd[1] = CTL_CMD1 | (chn << 8);
93---
94>        cmd[1] = CTL_CMD1 | (dig[0] << 16) | (dig[1] << 8) | dig[2];
95202c212
96<        avc1394_transaction_block(handle, 0, cmd, 3, 1);
97---
98>        avc1394_transaction_block(handle, device, cmd, 3, 1);