Add the rt linux 4.1.3-rt3 as base
[kvmfornfv.git] / kernel / drivers / isdn / sc / scioc.h
diff --git a/kernel/drivers/isdn/sc/scioc.h b/kernel/drivers/isdn/sc/scioc.h
new file mode 100644 (file)
index 0000000..a50e143
--- /dev/null
@@ -0,0 +1,110 @@
+#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__  */