Home | History | Annotate | Download | only in hdlc
      1 #ifndef __HDLC_IOCTL_H__
      2 #define __HDLC_IOCTL_H__
      3 
      4 
      5 #define GENERIC_HDLC_VERSION 4	/* For synchronization with sethdlc utility */
      6 
      7 #define CLOCK_DEFAULT   0	/* Default setting */
      8 #define CLOCK_EXT	1	/* External TX and RX clock - DTE */
      9 #define CLOCK_INT	2	/* Internal TX and RX clock - DCE */
     10 #define CLOCK_TXINT	3	/* Internal TX and external RX clock */
     11 #define CLOCK_TXFROMRX	4	/* TX clock derived from external RX clock */
     12 
     13 
     14 #define ENCODING_DEFAULT	0 /* Default setting */
     15 #define ENCODING_NRZ		1
     16 #define ENCODING_NRZI		2
     17 #define ENCODING_FM_MARK	3
     18 #define ENCODING_FM_SPACE	4
     19 #define ENCODING_MANCHESTER	5
     20 
     21 
     22 #define PARITY_DEFAULT		0 /* Default setting */
     23 #define PARITY_NONE		1 /* No parity */
     24 #define PARITY_CRC16_PR0	2 /* CRC16, initial value 0x0000 */
     25 #define PARITY_CRC16_PR1	3 /* CRC16, initial value 0xFFFF */
     26 #define PARITY_CRC16_PR0_CCITT	4 /* CRC16, initial 0x0000, ITU-T version */
     27 #define PARITY_CRC16_PR1_CCITT	5 /* CRC16, initial 0xFFFF, ITU-T version */
     28 #define PARITY_CRC32_PR0_CCITT	6 /* CRC32, initial value 0x00000000 */
     29 #define PARITY_CRC32_PR1_CCITT	7 /* CRC32, initial value 0xFFFFFFFF */
     30 
     31 #define LMI_DEFAULT		0 /* Default setting */
     32 #define LMI_NONE		1 /* No LMI, all PVCs are static */
     33 #define LMI_ANSI		2 /* ANSI Annex D */
     34 #define LMI_CCITT		3 /* ITU-T Annex A */
     35 #define LMI_CISCO		4 /* The "original" LMI, aka Gang of Four */
     36 
     37 #ifndef __ASSEMBLY__
     38 
     39 typedef struct {
     40 	unsigned int clock_rate; /* bits per second */
     41 	unsigned int clock_type; /* internal, external, TX-internal etc. */
     42 	unsigned short loopback;
     43 } sync_serial_settings;          /* V.35, V.24, X.21 */
     44 
     45 typedef struct {
     46 	unsigned int clock_rate; /* bits per second */
     47 	unsigned int clock_type; /* internal, external, TX-internal etc. */
     48 	unsigned short loopback;
     49 	unsigned int slot_map;
     50 } te1_settings;                  /* T1, E1 */
     51 
     52 typedef struct {
     53 	unsigned short encoding;
     54 	unsigned short parity;
     55 } raw_hdlc_proto;
     56 
     57 typedef struct {
     58 	unsigned int t391;
     59 	unsigned int t392;
     60 	unsigned int n391;
     61 	unsigned int n392;
     62 	unsigned int n393;
     63 	unsigned short lmi;
     64 	unsigned short dce; /* 1 for DCE (network side) operation */
     65 } fr_proto;
     66 
     67 typedef struct {
     68 	unsigned int dlci;
     69 } fr_proto_pvc;          /* for creating/deleting FR PVCs */
     70 
     71 typedef struct {
     72 	unsigned int dlci;
     73 	char master[IFNAMSIZ];	/* Name of master FRAD device */
     74 }fr_proto_pvc_info;		/* for returning PVC information only */
     75 
     76 typedef struct {
     77     unsigned int interval;
     78     unsigned int timeout;
     79 } cisco_proto;
     80 
     81 /* PPP doesn't need any info now - supply length = 0 to ioctl */
     82 
     83 #endif /* __ASSEMBLY__ */
     84 #endif /* __HDLC_IOCTL_H__ */
     85