]> git.kernelconcepts.de Git - karo-tx-linux.git/blob - drivers/staging/dgrp/digirp.h
Merge remote-tracking branch 'asoc/fix/samsung' into asoc-linus
[karo-tx-linux.git] / drivers / staging / dgrp / digirp.h
1 /************************************************************************
2  * HP-UX Realport Daemon interface file.
3  *
4  * Copyright (C) 1998, by Digi International.  All Rights Reserved.
5  ************************************************************************/
6
7 #ifndef _DIGIDRP_H
8 #define _DIGIDRP_H
9
10 /************************************************************************
11  * This file contains defines for the ioctl() interface to
12  * the realport driver.   This ioctl() interface is used by the
13  * daemon to set speed setup parameters honored by the driver.
14  ************************************************************************/
15
16 struct link_struct {
17         int lk_fast_rate;  /* Fast line rate to be used
18                               when the delay is less-equal
19                               to lk_fast_delay */
20
21         int lk_fast_delay; /* Fast line rate delay in
22                               milliseconds */
23
24         int lk_slow_rate;  /* Slow line rate to be used when
25                               the delay is greater-equal
26                               to lk_slow_delay */
27
28         int lk_slow_delay; /* Slow line rate delay in
29                               milliseconds */
30
31         int lk_header_size; /* Estimated packet header size
32                                when sent across the slowest
33                                link.  */
34 };
35
36 #define DIGI_GETLINK    _IOW('e', 103, struct link_struct)      /* Get link parameters */
37 #define DIGI_SETLINK    _IOW('e', 104, struct link_struct)      /* Set link parameters */
38
39
40 /************************************************************************
41  * This module provides application access to special Digi
42  * serial line enhancements which are not standard UNIX(tm) features.
43  ************************************************************************/
44
45 struct  digiflow_struct {
46         unsigned char   startc;                         /* flow cntl start char */
47         unsigned char   stopc;                          /* flow cntl stop char  */
48 };
49
50 /************************************************************************
51  * Values for digi_flags
52  ************************************************************************/
53 #define DIGI_IXON       0x0001          /* Handle IXON in the FEP       */
54 #define DIGI_FAST       0x0002          /* Fast baud rates              */
55 #define RTSPACE         0x0004          /* RTS input flow control       */
56 #define CTSPACE         0x0008          /* CTS output flow control      */
57 #define DSRPACE         0x0010          /* DSR output flow control      */
58 #define DCDPACE         0x0020          /* DCD output flow control      */
59 #define DTRPACE         0x0040          /* DTR input flow control       */
60 #define DIGI_COOK       0x0080          /* Cooked processing done in FEP */
61 #define DIGI_FORCEDCD   0x0100          /* Force carrier                */
62 #define DIGI_ALTPIN     0x0200          /* Alternate RJ-45 pin config   */
63 #define DIGI_AIXON      0x0400          /* Aux flow control in fep      */
64 #define DIGI_PRINTER    0x0800          /* Hold port open for flow cntrl */
65 #define DIGI_PP_INPUT   0x1000          /* Change parallel port to input */
66 #define DIGI_422        0x4000          /* Change parallel port to input */
67 #define DIGI_RTS_TOGGLE 0x8000          /* Support RTS Toggle            */
68
69
70 /************************************************************************
71  * Values associated with transparent print
72  ************************************************************************/
73 #define DIGI_PLEN       8               /* String length */
74 #define DIGI_TSIZ       10              /* Terminal string len */
75
76
77 /************************************************************************
78  * Structure used with ioctl commands for DIGI parameters.
79  ************************************************************************/
80 struct digi_struct {
81         unsigned short  digi_flags;             /* Flags (see above)    */
82         unsigned short  digi_maxcps;            /* Max printer CPS      */
83         unsigned short  digi_maxchar;           /* Max chars in print queue */
84         unsigned short  digi_bufsize;           /* Buffer size          */
85         unsigned char   digi_onlen;             /* Length of ON string  */
86         unsigned char   digi_offlen;            /* Length of OFF string */
87         char            digi_onstr[DIGI_PLEN];  /* Printer on string    */
88         char            digi_offstr[DIGI_PLEN]; /* Printer off string   */
89         char            digi_term[DIGI_TSIZ];   /* terminal string      */
90 };
91
92 /************************************************************************
93  * Ioctl command arguments for DIGI parameters.
94  ************************************************************************/
95 /* Read params */
96 #define DIGI_GETA       _IOR('e', 94, struct digi_struct)
97
98 /* Set params */
99 #define DIGI_SETA       _IOW('e', 95, struct digi_struct)
100
101 /* Drain & set params   */
102 #define DIGI_SETAW      _IOW('e', 96, struct digi_struct)
103
104 /* Drain, flush & set params */
105 #define DIGI_SETAF      _IOW('e', 97, struct digi_struct)
106
107 /* Get startc/stopc flow control characters */
108 #define DIGI_GETFLOW    _IOR('e', 99, struct digiflow_struct)
109
110 /* Set startc/stopc flow control characters */
111 #define DIGI_SETFLOW    _IOW('e', 100, struct digiflow_struct)
112
113 /* Get Aux. startc/stopc flow control chars */
114 #define DIGI_GETAFLOW   _IOR('e', 101, struct digiflow_struct)
115
116 /* Set Aux. startc/stopc flow control chars */
117 #define DIGI_SETAFLOW   _IOW('e', 102, struct digiflow_struct)
118
119 /* Set integer baud rate */
120 #define DIGI_SETCUSTOMBAUD      _IOW('e', 106, int)
121
122 /* Get integer baud rate */
123 #define DIGI_GETCUSTOMBAUD      _IOR('e', 107, int)
124
125 #define DIGI_GEDELAY    _IOR('d', 246, int)     /* Get edelay */
126 #define DIGI_SEDELAY    _IOW('d', 247, int)     /* Get edelay */
127
128
129 #endif /* _DIGIDRP_H */