Home | History | Annotate | Download | only in linux
      1 /****************************************************************************
      2  ****************************************************************************
      3  ***
      4  ***   This header was automatically generated from a Linux kernel header
      5  ***   of the same name, to make information necessary for userspace to
      6  ***   call into the kernel available to libc.  It contains only constants,
      7  ***   structures, and macros generated from the original header, and thus,
      8  ***   contains no copyrightable information.
      9  ***
     10  ***   To edit the content of this header, modify the corresponding
     11  ***   source file (e.g. under external/kernel-headers/original/) then
     12  ***   run bionic/libc/kernel/tools/update_all.py
     13  ***
     14  ***   Any manual change here will be lost the next time this script will
     15  ***   be run. You've been warned!
     16  ***
     17  ****************************************************************************
     18  ****************************************************************************/
     19 #ifndef _UAPI_HDLCDRV_H
     20 #define _UAPI_HDLCDRV_H
     21 struct hdlcdrv_params {
     22   int iobase;
     23   int irq;
     24   int dma;
     25   int dma2;
     26   int seriobase;
     27   int pariobase;
     28   int midiiobase;
     29 };
     30 struct hdlcdrv_channel_params {
     31   int tx_delay;
     32   int tx_tail;
     33   int slottime;
     34   int ppersist;
     35   int fulldup;
     36 };
     37 struct hdlcdrv_old_channel_state {
     38   int ptt;
     39   int dcd;
     40   int ptt_keyed;
     41 };
     42 struct hdlcdrv_channel_state {
     43   int ptt;
     44   int dcd;
     45   int ptt_keyed;
     46   unsigned long tx_packets;
     47   unsigned long tx_errors;
     48   unsigned long rx_packets;
     49   unsigned long rx_errors;
     50 };
     51 struct hdlcdrv_ioctl {
     52   int cmd;
     53   union {
     54     struct hdlcdrv_params mp;
     55     struct hdlcdrv_channel_params cp;
     56     struct hdlcdrv_channel_state cs;
     57     struct hdlcdrv_old_channel_state ocs;
     58     unsigned int calibrate;
     59     unsigned char bits;
     60     char modename[128];
     61     char drivername[32];
     62   } data;
     63 };
     64 #define HDLCDRVCTL_GETMODEMPAR 0
     65 #define HDLCDRVCTL_SETMODEMPAR 1
     66 #define HDLCDRVCTL_MODEMPARMASK 2
     67 #define HDLCDRVCTL_GETCHANNELPAR 10
     68 #define HDLCDRVCTL_SETCHANNELPAR 11
     69 #define HDLCDRVCTL_OLDGETSTAT 20
     70 #define HDLCDRVCTL_CALIBRATE 21
     71 #define HDLCDRVCTL_GETSTAT 22
     72 #define HDLCDRVCTL_GETSAMPLES 30
     73 #define HDLCDRVCTL_GETBITS 31
     74 #define HDLCDRVCTL_GETMODE 40
     75 #define HDLCDRVCTL_SETMODE 41
     76 #define HDLCDRVCTL_MODELIST 42
     77 #define HDLCDRVCTL_DRIVERNAME 43
     78 #define HDLCDRV_PARMASK_IOBASE (1 << 0)
     79 #define HDLCDRV_PARMASK_IRQ (1 << 1)
     80 #define HDLCDRV_PARMASK_DMA (1 << 2)
     81 #define HDLCDRV_PARMASK_DMA2 (1 << 3)
     82 #define HDLCDRV_PARMASK_SERIOBASE (1 << 4)
     83 #define HDLCDRV_PARMASK_PARIOBASE (1 << 5)
     84 #define HDLCDRV_PARMASK_MIDIIOBASE (1 << 6)
     85 #endif
     86