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