| #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__ */ |