mirror of https://gitee.com/openkylin/linux.git
111 lines
2.3 KiB
C
111 lines
2.3 KiB
C
#ifndef __ISDN_SC_SCIOC_H__
|
|
#define __ISDN_SC_SCIOC_H__
|
|
|
|
/*
|
|
* This software may be used and distributed according to the terms
|
|
* of the GNU General Public License, incorporated herein by reference.
|
|
*/
|
|
|
|
/*
|
|
* IOCTL Command Codes
|
|
*/
|
|
#define SCIOCLOAD 0x01 /* Load a firmware record */
|
|
#define SCIOCRESET 0x02 /* Perform hard reset */
|
|
#define SCIOCDEBUG 0x03 /* Set debug level */
|
|
#define SCIOCREV 0x04 /* Get driver revision(s) */
|
|
#define SCIOCSTART 0x05 /* Start the firmware */
|
|
#define SCIOCGETSWITCH 0x06 /* Get switch type */
|
|
#define SCIOCSETSWITCH 0x07 /* Set switch type */
|
|
#define SCIOCGETSPID 0x08 /* Get channel SPID */
|
|
#define SCIOCSETSPID 0x09 /* Set channel SPID */
|
|
#define SCIOCGETDN 0x0A /* Get channel DN */
|
|
#define SCIOCSETDN 0x0B /* Set channel DN */
|
|
#define SCIOCTRACE 0x0C /* Toggle trace mode */
|
|
#define SCIOCSTAT 0x0D /* Get line status */
|
|
#define SCIOCGETSPEED 0x0E /* Set channel speed */
|
|
#define SCIOCSETSPEED 0x0F /* Set channel speed */
|
|
#define SCIOCLOOPTST 0x10 /* Perform loopback test */
|
|
|
|
typedef struct {
|
|
int device;
|
|
int channel;
|
|
unsigned long command;
|
|
void __user *dataptr;
|
|
} scs_ioctl;
|
|
|
|
/* Size of strings */
|
|
#define SCIOC_SPIDSIZE 49
|
|
#define SCIOC_DNSIZE SCIOC_SPIDSIZE
|
|
#define SCIOC_REVSIZE SCIOC_SPIDSIZE
|
|
#define SCIOC_SRECSIZE 49
|
|
|
|
typedef struct {
|
|
unsigned long tx_good;
|
|
unsigned long tx_bad;
|
|
unsigned long rx_good;
|
|
unsigned long rx_bad;
|
|
} ChLinkStats;
|
|
|
|
typedef struct {
|
|
char spid[49];
|
|
char dn[49];
|
|
char call_type;
|
|
char phy_stat;
|
|
ChLinkStats link_stats;
|
|
} BRIStat;
|
|
|
|
typedef BRIStat POTStat;
|
|
|
|
typedef struct {
|
|
char call_type;
|
|
char call_state;
|
|
char serv_state;
|
|
char phy_stat;
|
|
ChLinkStats link_stats;
|
|
} PRIStat;
|
|
|
|
typedef char PRIInfo;
|
|
typedef char BRIInfo;
|
|
typedef char POTInfo;
|
|
|
|
|
|
typedef struct {
|
|
char acfa_nos;
|
|
char acfa_ais;
|
|
char acfa_los;
|
|
char acfa_rra;
|
|
char acfa_slpp;
|
|
char acfa_slpn;
|
|
char acfa_fsrf;
|
|
} ACFAStat;
|
|
|
|
typedef struct {
|
|
unsigned char modelid;
|
|
char serial_no[13];
|
|
char part_no[13];
|
|
char load_ver[11];
|
|
char proc_ver[11];
|
|
int iobase;
|
|
long rambase;
|
|
char irq;
|
|
long ramsize;
|
|
char interface;
|
|
char switch_type;
|
|
char l1_status;
|
|
char l2_status;
|
|
ChLinkStats dch_stats;
|
|
ACFAStat AcfaStats;
|
|
union {
|
|
PRIStat pristats[23];
|
|
BRIStat bristats[2];
|
|
POTStat potsstats[2];
|
|
} status;
|
|
union {
|
|
PRIInfo priinfo;
|
|
BRIInfo briinfo;
|
|
POTInfo potsinfo;
|
|
} info;
|
|
} boardInfo;
|
|
|
|
#endif /* __ISDN_SC_SCIOC_H__ */
|