IOCTL_HAL_REQUEST_SYSINTR (Compact 2013)
10/16/2014
This I/O control message requests an interrupt request-to-system interrupt (IRQ-to-SYSINTR) mapping for bus drivers. Send this message with OEMIoControl.
Syntax
BOOL OEMIoControl(
DWORD dwIoControlCode, // use IOCTL_HAL_REQUEST_SYSINTR
LPVOID lpInBuffer, // pointer to input buffer
DWORD nInBufferSize, // input buffer size
LPVOID lpOutBuffer, // pointer to output buffer
DWORD nOutBufferSize, // output buffer size
LPDWORD lpBytesReturned // number of bytes returned
);
Parameters
- dwIoControlCode
[in] Control code for the operation. Use IOCTL_HAL_REQUEST_SYSINTR for this operation.
- lpInBuffer
[in] IRQ to translate into a SYSINTR.
- nInBufferSize
[in] Set to the size of lpInBuffer.
- lpOutBuffer
[out] SYSINTR translated from an IRQ.
- nOutBufferSize
[in] Set to the size of lpOutBuffer.
- lpBytesReturned
[out] If not NULL, set to sizeof(NULL).
Return Values
Returns TRUE if successful; otherwise, returns FALSE.
Remarks
To get extended error information, call GetLastError. GetLastError may return other standard error messages as appropriate.
A bus driver reads its SYSINTR value from the registry. It also reads the IRQ value, if necessary. If the driver is for a built-in device, it sets up the mapping in the OEMInit function and places the SYSINTR in the associated registry entry for the device. Bus drivers, such as the PCI bus driver, use IOCTL_HAL_REQUEST_SYSINTR to allocate SYSINTRs and subsequently populate the registry for the device it is loading a driver for.
Requirements
Header |
pkfuncs.h |
See Also
Reference
CEDDK IOCTLs
IOCTL_HAL_TRANSLATE_IRQ
IOCTL_HAL_RELEASE_SYSINTR
OEMInit
OEMIoControl