linux/include/uapi/linux/parport.h

/*
 * Any part of this program may be used in documents licensed under
 * the GNU Free Documentation License, Version 1.1 or any later version
 * published by the Free Software Foundation.
 */

#ifndef _UAPI_PARPORT_H_
#define _UAPI_PARPORT_H_

/* Start off with user-visible constants */

/* Maximum of 16 ports per machine */
#define PARPORT_MAX

/* Magic numbers */
#define PARPORT_IRQ_NONE
#define PARPORT_DMA_NONE
#define PARPORT_IRQ_AUTO
#define PARPORT_DMA_AUTO
#define PARPORT_DMA_NOFIFO
#define PARPORT_DISABLE
#define PARPORT_IRQ_PROBEONLY
#define PARPORT_IOHI_AUTO

#define PARPORT_CONTROL_STROBE
#define PARPORT_CONTROL_AUTOFD
#define PARPORT_CONTROL_INIT
#define PARPORT_CONTROL_SELECT

#define PARPORT_STATUS_ERROR
#define PARPORT_STATUS_SELECT
#define PARPORT_STATUS_PAPEROUT
#define PARPORT_STATUS_ACK
#define PARPORT_STATUS_BUSY

/* Type classes for Plug-and-Play probe.  */
parport_device_class;

/* The "modes" entry in parport is a bit field representing the
   capabilities of the hardware. */
#define PARPORT_MODE_PCSPP
#define PARPORT_MODE_TRISTATE
#define PARPORT_MODE_EPP
#define PARPORT_MODE_ECP
#define PARPORT_MODE_COMPAT
#define PARPORT_MODE_DMA
#define PARPORT_MODE_SAFEININT

/* IEEE1284 modes: 
   Nibble mode, byte mode, ECP, ECPRLE and EPP are their own
   'extensibility request' values.  Others are special.
   'Real' ECP modes must have the IEEE1284_MODE_ECP bit set.  */
#define IEEE1284_MODE_NIBBLE
#define IEEE1284_MODE_BYTE
#define IEEE1284_MODE_COMPAT
#define IEEE1284_MODE_BECP
#define IEEE1284_MODE_ECP
#define IEEE1284_MODE_ECPRLE
#define IEEE1284_MODE_ECPSWE
#define IEEE1284_MODE_EPP
#define IEEE1284_MODE_EPPSL
#define IEEE1284_MODE_EPPSWE
#define IEEE1284_DEVICEID
#define IEEE1284_EXT_LINK

/* For the benefit of parport_read/write, you can use these with
 * parport_negotiate to use address operations.  They have no effect
 * other than to make parport_read/write use address transfers. */
#define IEEE1284_ADDR
#define IEEE1284_DATA

/* Flags for block transfer operations. */
#define PARPORT_EPP_FAST
#define PARPORT_W91284PIC
#define PARPORT_EPP_FAST_32
#define PARPORT_EPP_FAST_16
#define PARPORT_EPP_FAST_8

/* The rest is for the kernel only */
#endif /* _UAPI_PARPORT_H_ */