OEMIpiHandler (Compact 2013)

3/28/2014

This function handles platform-specific interprocessor interrupts (IPIs).

Syntax

void OEMIpiHandler(
    DWORD dwCommand,
   DWORD dwData
);

Parameters

  • dwCommand
    The interrupt command, which is implementation-specific. The range that an OEM can use for this value is above 0x1000; the values from 0 (zero) to 0xfff are reserved for the kernel.
  • dwData
    Implementation-specific data that corresponds to the interrupt command.

Return Value

None.

Remarks

This function is optional for multiprocessor support. If you implement OEMIpiHandler, set the pfnIpiHandler member of OEMGLOBAL to point to this function.

IPI commands from 0 (zero) through 0xfff are reserved for use by the OS. An OEM can define platform-specific IPIs from 0x1000 (OEM_FIRST_IPI_COMMAND) and up. When the kernel receives an IPI command that it does not recognize, it calls this function to have the OEM adaptation layer (OAL) handle the IPI.

To send a platform-specific IPI, use the pfnNKSendIPI member of NKGLOBAL, or use the NKSendInterProcessorInterrupt function, which is a wrapper to the function that pfnNKSendIPI points to.

Requirements

Header

oemglobal.h

Library

OEMMain.lib or OEMMain_StaticKITL.lib

See Also

Reference

SMP Functions
OEMIpiHandler