Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris...
[linux/fpc-iii.git] / drivers / staging / dgrp / digirp.h
blob33c1394fade79db220cf594fb4c46ab22ee9261f
1 /************************************************************************
2 * HP-UX Realport Daemon interface file.
4 * Copyright (C) 1998, by Digi International. All Rights Reserved.
5 ************************************************************************/
7 #ifndef _DIGIDRP_H
8 #define _DIGIDRP_H
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 ************************************************************************/
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 */
21 int lk_fast_delay; /* Fast line rate delay in
22 milliseconds */
24 int lk_slow_rate; /* Slow line rate to be used when
25 the delay is greater-equal
26 to lk_slow_delay */
28 int lk_slow_delay; /* Slow line rate delay in
29 milliseconds */
31 int lk_header_size; /* Estimated packet header size
32 when sent across the slowest
33 link. */
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 */
40 /************************************************************************
41 * This module provides application access to special Digi
42 * serial line enhancements which are not standard UNIX(tm) features.
43 ************************************************************************/
45 struct digiflow_struct {
46 unsigned char startc; /* flow cntl start char */
47 unsigned char stopc; /* flow cntl stop char */
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 */
70 /************************************************************************
71 * Values associated with transparent print
72 ************************************************************************/
73 #define DIGI_PLEN 8 /* String length */
74 #define DIGI_TSIZ 10 /* Terminal string len */
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 */
92 /************************************************************************
93 * Ioctl command arguments for DIGI parameters.
94 ************************************************************************/
95 /* Read params */
96 #define DIGI_GETA _IOR('e', 94, struct digi_struct)
98 /* Set params */
99 #define DIGI_SETA _IOW('e', 95, struct digi_struct)
101 /* Drain & set params */
102 #define DIGI_SETAW _IOW('e', 96, struct digi_struct)
104 /* Drain, flush & set params */
105 #define DIGI_SETAF _IOW('e', 97, struct digi_struct)
107 /* Get startc/stopc flow control characters */
108 #define DIGI_GETFLOW _IOR('e', 99, struct digiflow_struct)
110 /* Set startc/stopc flow control characters */
111 #define DIGI_SETFLOW _IOW('e', 100, struct digiflow_struct)
113 /* Get Aux. startc/stopc flow control chars */
114 #define DIGI_GETAFLOW _IOR('e', 101, struct digiflow_struct)
116 /* Set Aux. startc/stopc flow control chars */
117 #define DIGI_SETAFLOW _IOW('e', 102, struct digiflow_struct)
119 /* Set integer baud rate */
120 #define DIGI_SETCUSTOMBAUD _IOW('e', 106, int)
122 /* Get integer baud rate */
123 #define DIGI_GETCUSTOMBAUD _IOR('e', 107, int)
125 #define DIGI_GEDELAY _IOR('d', 246, int) /* Get edelay */
126 #define DIGI_SEDELAY _IOW('d', 247, int) /* Get edelay */
129 #endif /* _DIGIDRP_H */