Annotation of q_a/samples/ddk/portio/gpioctl.h, revision 1.1

1.1     ! root        1: // gpioctl.h    Include file for Generic Port I/O Example Driver
        !             2: //
        !             3: // Define the IOCTL codes we will use.  The IOCTL code contains a command
        !             4: // identifier, plus other information about the device, the type of access
        !             5: // with which the file must have been opened, and the type of buffering.
        !             6: //
        !             7: // Robert B. Nelson (Microsoft)     March 1, 1993
        !             8: 
        !             9: // Device type           -- in the "User Defined" range."
        !            10: #define GPD_TYPE 40000
        !            11: 
        !            12: // The IOCTL function codes from 0x800 to 0xFFF are for customer use.
        !            13: 
        !            14: #define IOCTL_GPD_READ_PORT_UCHAR \
        !            15:     CTL_CODE( GPD_TYPE, 0x900, METHOD_BUFFERED, FILE_READ_ACCESS )
        !            16: 
        !            17: #define IOCTL_GPD_READ_PORT_USHORT \
        !            18:     CTL_CODE( GPD_TYPE, 0x901, METHOD_BUFFERED, FILE_READ_ACCESS )
        !            19: 
        !            20: #define IOCTL_GPD_READ_PORT_ULONG \
        !            21:     CTL_CODE( GPD_TYPE, 0x902, METHOD_BUFFERED, FILE_READ_ACCESS )
        !            22: 
        !            23: #define IOCTL_GPD_WRITE_PORT_UCHAR \
        !            24:     CTL_CODE(GPD_TYPE,  0x910, METHOD_BUFFERED, FILE_WRITE_ACCESS)
        !            25: 
        !            26: #define IOCTL_GPD_WRITE_PORT_USHORT \
        !            27:     CTL_CODE(GPD_TYPE,  0x911, METHOD_BUFFERED, FILE_WRITE_ACCESS)
        !            28: 
        !            29: #define IOCTL_GPD_WRITE_PORT_ULONG \
        !            30:     CTL_CODE(GPD_TYPE,  0x912, METHOD_BUFFERED, FILE_WRITE_ACCESS)
        !            31: 
        !            32: typedef struct  _GENPORT_WRITE_INPUT {
        !            33:     ULONG   PortNumber;     // Port # to write to
        !            34:     union   {               // Data to be output to port
        !            35:         ULONG   LongData;
        !            36:         USHORT  ShortData;
        !            37:         UCHAR   CharData;
        !            38:     };
        !            39: }   GENPORT_WRITE_INPUT;

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.