windows-nt/Source/XPSP1/NT/base/hals/halacpi/amd64/ixipi.c
2020-09-26 16:20:57 +08:00

96 lines
1.3 KiB
C

/*++
Copyright (c) 2000 Microsoft Corporation
Module Name:
ixipi.c
Abstract:
Provides the HAL support for Interprocessor Interrupts.
This is the UP version.
Author:
John Vert (jvert) 16-Jul-1991
Revision History:
Forrest Foltz (forrestf) 23-Oct-2000
Ported from ixipi.asm to ixipi.c
--*/
#include "halcmn.h"
VOID
HalInitializeProcessor(
ULONG Number,
PLOADER_PARAMETER_BLOCK LoaderBlock
)
/*++
Routine Description:
Initialize hal pcr values for current processor (if any)
(called shortly after processor reaches kernel, before
HalInitSystem if P0)
IPI's and KeReadir/LowerIrq's must be available once this function
returns. (IPI's are only used once two or more processors are
available)
Arguments:
Number - Logical processor number of calling processor
Return Value:
None.
--*/
{
KAFFINITY mask;
mask = (KAFFINITY)1 << Number;
HalpDefaultInterruptAffinity |= mask;
HalpActiveProcessors |= mask;
HalpRegisterKdSupportFunctions(LoaderBlock);
}
VOID
HalRequestIpi (
IN KAFFINITY Mask
)
/*++
Routine Description:
Requests an interprocessor interrupt
Arguments:
Mask - Supplies a mask of the processors to interrupt
Return Value:
None.
--*/
{
KdBreakPoint();
}