diff options
author | Bill Pemberton <wfp5p@virginia.edu> | 2012-09-20 16:55:27 -0400 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2012-09-21 09:04:18 -0700 |
commit | 0b52b74972712479ca285c04452db0d4b9025f80 (patch) | |
tree | 7e4c77510c7e420dcf672b931d0359cce68755a0 /drivers/staging/dgrp/digirp.h | |
parent | 5de69349ed4c10f43fa6dc6617051d94eee04e6c (diff) | |
download | op-kernel-dev-0b52b74972712479ca285c04452db0d4b9025f80.zip op-kernel-dev-0b52b74972712479ca285c04452db0d4b9025f80.tar.gz |
staging: Add dgrp driver for Digi Realport devices
This is based on dgrp-1.9 available from
ftp://ftp1.digi.com/support/beta/linux/dgrp/dgrp-1.9.tgz
Signed-off-by: Bill Pemberton <wfp5p@virginia.edu>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/staging/dgrp/digirp.h')
-rw-r--r-- | drivers/staging/dgrp/digirp.h | 129 |
1 files changed, 129 insertions, 0 deletions
diff --git a/drivers/staging/dgrp/digirp.h b/drivers/staging/dgrp/digirp.h new file mode 100644 index 0000000..33c1394 --- /dev/null +++ b/drivers/staging/dgrp/digirp.h @@ -0,0 +1,129 @@ +/************************************************************************ + * HP-UX Realport Daemon interface file. + * + * Copyright (C) 1998, by Digi International. All Rights Reserved. + ************************************************************************/ + +#ifndef _DIGIDRP_H +#define _DIGIDRP_H + +/************************************************************************ + * This file contains defines for the ioctl() interface to + * the realport driver. This ioctl() interface is used by the + * daemon to set speed setup parameters honored by the driver. + ************************************************************************/ + +struct link_struct { + int lk_fast_rate; /* Fast line rate to be used + when the delay is less-equal + to lk_fast_delay */ + + int lk_fast_delay; /* Fast line rate delay in + milliseconds */ + + int lk_slow_rate; /* Slow line rate to be used when + the delay is greater-equal + to lk_slow_delay */ + + int lk_slow_delay; /* Slow line rate delay in + milliseconds */ + + int lk_header_size; /* Estimated packet header size + when sent across the slowest + link. */ +}; + +#define DIGI_GETLINK _IOW('e', 103, struct link_struct) /* Get link parameters */ +#define DIGI_SETLINK _IOW('e', 104, struct link_struct) /* Set link parameters */ + + +/************************************************************************ + * This module provides application access to special Digi + * serial line enhancements which are not standard UNIX(tm) features. + ************************************************************************/ + +struct digiflow_struct { + unsigned char startc; /* flow cntl start char */ + unsigned char stopc; /* flow cntl stop char */ +}; + +/************************************************************************ + * Values for digi_flags + ************************************************************************/ +#define DIGI_IXON 0x0001 /* Handle IXON in the FEP */ +#define DIGI_FAST 0x0002 /* Fast baud rates */ +#define RTSPACE 0x0004 /* RTS input flow control */ +#define CTSPACE 0x0008 /* CTS output flow control */ +#define DSRPACE 0x0010 /* DSR output flow control */ +#define DCDPACE 0x0020 /* DCD output flow control */ +#define DTRPACE 0x0040 /* DTR input flow control */ +#define DIGI_COOK 0x0080 /* Cooked processing done in FEP */ +#define DIGI_FORCEDCD 0x0100 /* Force carrier */ +#define DIGI_ALTPIN 0x0200 /* Alternate RJ-45 pin config */ +#define DIGI_AIXON 0x0400 /* Aux flow control in fep */ +#define DIGI_PRINTER 0x0800 /* Hold port open for flow cntrl */ +#define DIGI_PP_INPUT 0x1000 /* Change parallel port to input */ +#define DIGI_422 0x4000 /* Change parallel port to input */ +#define DIGI_RTS_TOGGLE 0x8000 /* Support RTS Toggle */ + + +/************************************************************************ + * Values associated with transparent print + ************************************************************************/ +#define DIGI_PLEN 8 /* String length */ +#define DIGI_TSIZ 10 /* Terminal string len */ + + +/************************************************************************ + * Structure used with ioctl commands for DIGI parameters. + ************************************************************************/ +struct digi_struct { + unsigned short digi_flags; /* Flags (see above) */ + unsigned short digi_maxcps; /* Max printer CPS */ + unsigned short digi_maxchar; /* Max chars in print queue */ + unsigned short digi_bufsize; /* Buffer size */ + unsigned char digi_onlen; /* Length of ON string */ + unsigned char digi_offlen; /* Length of OFF string */ + char digi_onstr[DIGI_PLEN]; /* Printer on string */ + char digi_offstr[DIGI_PLEN]; /* Printer off string */ + char digi_term[DIGI_TSIZ]; /* terminal string */ +}; + +/************************************************************************ + * Ioctl command arguments for DIGI parameters. + ************************************************************************/ +/* Read params */ +#define DIGI_GETA _IOR('e', 94, struct digi_struct) + +/* Set params */ +#define DIGI_SETA _IOW('e', 95, struct digi_struct) + +/* Drain & set params */ +#define DIGI_SETAW _IOW('e', 96, struct digi_struct) + +/* Drain, flush & set params */ +#define DIGI_SETAF _IOW('e', 97, struct digi_struct) + +/* Get startc/stopc flow control characters */ +#define DIGI_GETFLOW _IOR('e', 99, struct digiflow_struct) + +/* Set startc/stopc flow control characters */ +#define DIGI_SETFLOW _IOW('e', 100, struct digiflow_struct) + +/* Get Aux. startc/stopc flow control chars */ +#define DIGI_GETAFLOW _IOR('e', 101, struct digiflow_struct) + +/* Set Aux. startc/stopc flow control chars */ +#define DIGI_SETAFLOW _IOW('e', 102, struct digiflow_struct) + +/* Set integer baud rate */ +#define DIGI_SETCUSTOMBAUD _IOW('e', 106, int) + +/* Get integer baud rate */ +#define DIGI_GETCUSTOMBAUD _IOR('e', 107, int) + +#define DIGI_GEDELAY _IOR('d', 246, int) /* Get edelay */ +#define DIGI_SEDELAY _IOW('d', 247, int) /* Get edelay */ + + +#endif /* _DIGIDRP_H */ |