| Adrian Bunk | fc238b3 | 2007-02-12 00:53:18 -0800 | [diff] [blame] | 1 | #ifndef __ISDN_SC_SCIOC_H__ | 
|  | 2 | #define __ISDN_SC_SCIOC_H__ | 
|  | 3 |  | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 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; | 
| Adrian Bunk | fc238b3 | 2007-02-12 00:53:18 -0800 | [diff] [blame] | 109 |  | 
|  | 110 | #endif  /*  __ISDN_SC_SCIOC_H__  */ | 
|  | 111 |  |