Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
awilliam
GitHub Repository: awilliam/linux-vfio
Path: blob/master/drivers/isdn/sc/scioc.h
15111 views
1
#ifndef __ISDN_SC_SCIOC_H__
2
#define __ISDN_SC_SCIOC_H__
3
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;
109
110
#endif /* __ISDN_SC_SCIOC_H__ */
111
112
113