📄 hdlcdrv.h
字号:
/* * hdlcdrv.h -- HDLC packet radio network driver. * The Linux soundcard driver for 1200 baud and 9600 baud packet radio * (C) 1996-1998 by Thomas Sailer, HB9JNX/AE4WA */#ifndef _HDLCDRV_H#define _HDLCDRV_H/* -------------------------------------------------------------------- *//* * structs for the IOCTL commands */struct hdlcdrv_params { int iobase; int irq; int dma; int dma2; int seriobase; int pariobase; int midiiobase;}; struct hdlcdrv_channel_params { int tx_delay; /* the transmitter keyup delay in 10ms units */ int tx_tail; /* the transmitter keyoff delay in 10ms units */ int slottime; /* the slottime in 10ms; usually 10 = 100ms */ int ppersist; /* the p-persistence 0..255 */ int fulldup; /* some driver do not support full duplex, setting */ /* this just makes them send even if DCD is on */}; struct hdlcdrv_old_channel_state { int ptt; int dcd; int ptt_keyed;};struct hdlcdrv_channel_state { int ptt; int dcd; int ptt_keyed; unsigned long tx_packets; unsigned long tx_errors; unsigned long rx_packets; unsigned long rx_errors;};struct hdlcdrv_ioctl { int cmd; union { struct hdlcdrv_params mp; struct hdlcdrv_channel_params cp; struct hdlcdrv_channel_state cs; struct hdlcdrv_old_channel_state ocs; unsigned int calibrate; unsigned char bits; char modename[128]; char drivername[32]; } data;};/* -------------------------------------------------------------------- *//* * ioctl values */#define HDLCDRVCTL_GETMODEMPAR 0#define HDLCDRVCTL_SETMODEMPAR 1#define HDLCDRVCTL_MODEMPARMASK 2 /* not handled by hdlcdrv */#define HDLCDRVCTL_GETCHANNELPAR 10#define HDLCDRVCTL_SETCHANNELPAR 11#define HDLCDRVCTL_OLDGETSTAT 20#define HDLCDRVCTL_CALIBRATE 21#define HDLCDRVCTL_GETSTAT 22/* * these are mainly for debugging purposes */#define HDLCDRVCTL_GETSAMPLES 30#define HDLCDRVCTL_GETBITS 31/* * not handled by hdlcdrv, but by its depending drivers */#define HDLCDRVCTL_GETMODE 40#define HDLCDRVCTL_SETMODE 41#define HDLCDRVCTL_MODELIST 42#define HDLCDRVCTL_DRIVERNAME 43/* * mask of needed modem parameters, returned by HDLCDRVCTL_MODEMPARMASK */#define HDLCDRV_PARMASK_IOBASE (1<<0)#define HDLCDRV_PARMASK_IRQ (1<<1)#define HDLCDRV_PARMASK_DMA (1<<2)#define HDLCDRV_PARMASK_DMA2 (1<<3)#define HDLCDRV_PARMASK_SERIOBASE (1<<4)#define HDLCDRV_PARMASK_PARIOBASE (1<<5)#define HDLCDRV_PARMASK_MIDIIOBASE (1<<6)/* -------------------------------------------------------------------- *//* -------------------------------------------------------------------- */#endif /* _HDLCDRV_H *//* -------------------------------------------------------------------- */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -