_IO_CONNECT_INTERRUPT_PARAMETERS structure

The IO_CONNECT_INTERRUPT_PARAMETERS structure contains the parameters that a driver supplies to the IoConnectInterruptEx routine to register an interrupt service routine (ISR).

Syntax

typedef struct _IO_CONNECT_INTERRUPT_PARAMETERS {
  ULONG Version;
  union {
    IO_CONNECT_INTERRUPT_FULLY_SPECIFIED_PARAMETERS FullySpecified;
    IO_CONNECT_INTERRUPT_LINE_BASED_PARAMETERS      LineBased;
    IO_CONNECT_INTERRUPT_MESSAGE_BASED_PARAMETERS   MessageBased;
  };
} IO_CONNECT_INTERRUPT_PARAMETERS, *PIO_CONNECT_INTERRUPT_PARAMETERS;

Members

Version

On input, specifies the particular operation to be performed by IoConnectInterruptEx, as follows.

Version value IoConnectInterruptEx operation
CONNECT_FULLY_SPECIFIED Connects to a specific interrupt using information provided by the Plug and Play (PnP) manager. Use the FullySpecified member to provide the additional parameters of the operation.
CONNECT_LINE_BASED Registers an InterruptService routine for the device's line-based interrupts. Use the LineBased member to provide the additional parameters of the operation.
CONNECT_MESSAGE_BASED Registers an InterruptMessageService routine for the device's message-signaled interrupts. The caller can also specify a fallback InterruptService routine if the device only has line-based interrupts. Use the MessageBased member to provide the additional parameters of the operation.

On return, the routine provides information about the operation, as follows.

Version value Description
CONNECT_FULLY_SPECIFIED The caller specified CONNECT_LINE_BASED or CONNECT_MESSAGE_BASED for Version on a platform that does not support it. Retry the operation using CONNECT_FULLY_SPECIFIED.
CONNECT_LINE_BASED The caller specified CONNECT_MESSAGE_BASED and the caller's fallback InterruptService routine was registered.
CONNECT_MESSAGE_BASED The caller specified CONNECT_MESSAGE_BASED and the caller's InterruptMessageService routine was registered.

Remarks

The IoConnectInterruptEx routine takes a single Parameters parameter, which points to an IO_CONNECT_INTERRUPT_PARAMETERS structure that contains all of the parameters of the operation.

Requirements

   
Header wdm.h (include Wdm.h, Ntddk.h, Ntifs.h)

See Also

IoConnectInterruptEx