Commit | Line | Data |
---|---|---|
fc238b37 AB |
1 | #ifndef __ISDN_SC_SCIOC_H__ |
2 | #define __ISDN_SC_SCIOC_H__ | |
3 | ||
1da177e4 LT |
4 | /* |
5 | * This software may be used and distributed according to the terms | |
6 | * of the GNU General Public License, incorporated herein by reference. | |
7 | */ | |
8 | ||
9 | /* | |
10 | * IOCTL Command Codes | |
11 | */ | |
12 | #define SCIOCLOAD 0x01 /* Load a firmware record */ | |
13 | #define SCIOCRESET 0x02 /* Perform hard reset */ | |
14 | #define SCIOCDEBUG 0x03 /* Set debug level */ | |
15 | #define SCIOCREV 0x04 /* Get driver revision(s) */ | |
16 | #define SCIOCSTART 0x05 /* Start the firmware */ | |
17 | #define SCIOCGETSWITCH 0x06 /* Get switch type */ | |
18 | #define SCIOCSETSWITCH 0x07 /* Set switch type */ | |
19 | #define SCIOCGETSPID 0x08 /* Get channel SPID */ | |
20 | #define SCIOCSETSPID 0x09 /* Set channel SPID */ | |
21 | #define SCIOCGETDN 0x0A /* Get channel DN */ | |
22 | #define SCIOCSETDN 0x0B /* Set channel DN */ | |
23 | #define SCIOCTRACE 0x0C /* Toggle trace mode */ | |
24 | #define SCIOCSTAT 0x0D /* Get line status */ | |
25 | #define SCIOCGETSPEED 0x0E /* Set channel speed */ | |
26 | #define SCIOCSETSPEED 0x0F /* Set channel speed */ | |
27 | #define SCIOCLOOPTST 0x10 /* Perform loopback test */ | |
28 | ||
29 | typedef struct { | |
30 | int device; | |
31 | int channel; | |
32 | unsigned long command; | |
33 | void __user *dataptr; | |
34 | } scs_ioctl; | |
35 | ||
36 | /* Size of strings */ | |
37 | #define SCIOC_SPIDSIZE 49 | |
38 | #define SCIOC_DNSIZE SCIOC_SPIDSIZE | |
39 | #define SCIOC_REVSIZE SCIOC_SPIDSIZE | |
40 | #define SCIOC_SRECSIZE 49 | |
41 | ||
42 | typedef struct { | |
43 | unsigned long tx_good; | |
44 | unsigned long tx_bad; | |
45 | unsigned long rx_good; | |
46 | unsigned long rx_bad; | |
47 | } ChLinkStats; | |
48 | ||
49 | typedef struct { | |
50 | char spid[49]; | |
51 | char dn[49]; | |
52 | char call_type; | |
53 | char phy_stat; | |
54 | ChLinkStats link_stats; | |
55 | } BRIStat; | |
56 | ||
57 | typedef BRIStat POTStat; | |
58 | ||
59 | typedef struct { | |
60 | char call_type; | |
61 | char call_state; | |
62 | char serv_state; | |
63 | char phy_stat; | |
64 | ChLinkStats link_stats; | |
65 | } PRIStat; | |
66 | ||
67 | typedef char PRIInfo; | |
68 | typedef char BRIInfo; | |
69 | typedef char POTInfo; | |
70 | ||
71 | ||
72 | typedef struct { | |
73 | char acfa_nos; | |
74 | char acfa_ais; | |
75 | char acfa_los; | |
76 | char acfa_rra; | |
77 | char acfa_slpp; | |
78 | char acfa_slpn; | |
79 | char acfa_fsrf; | |
80 | } ACFAStat; | |
81 | ||
82 | typedef struct { | |
83 | unsigned char modelid; | |
84 | char serial_no[13]; | |
85 | char part_no[13]; | |
86 | char load_ver[11]; | |
87 | char proc_ver[11]; | |
88 | int iobase; | |
89 | long rambase; | |
90 | char irq; | |
91 | long ramsize; | |
92 | char interface; | |
93 | char switch_type; | |
94 | char l1_status; | |
95 | char l2_status; | |
96 | ChLinkStats dch_stats; | |
97 | ACFAStat AcfaStats; | |
98 | union { | |
99 | PRIStat pristats[23]; | |
100 | BRIStat bristats[2]; | |
101 | POTStat potsstats[2]; | |
102 | } status; | |
103 | union { | |
104 | PRIInfo priinfo; | |
105 | BRIInfo briinfo; | |
106 | POTInfo potsinfo; | |
107 | } info; | |
108 | } boardInfo; | |
fc238b37 AB |
109 | |
110 | #endif /* __ISDN_SC_SCIOC_H__ */ | |
111 |