xref: /reactos/hal/halx86/mp/halinit_mp.c (revision 40462c92)
1 /*
2  * COPYRIGHT:     See COPYING in the top level directory
3  * PROJECT:       ReactOS kernel
4  * FILE:          hal/halx86/mp/halinit_mp.c
5  * PURPOSE:       Initialize the x86 mp hal
6  * PROGRAMMER:    David Welch (welch@cwcom.net)
7  * UPDATE HISTORY:
8  *              11/06/98: Created
9  */
10 
11 /* INCLUDES *****************************************************************/
12 
13 #include <hal.h>
14 #define NDEBUG
15 #include <debug.h>
16 
17 /* GLOBALS ******************************************************************/
18 
19 const USHORT HalpBuildType = HAL_BUILD_TYPE;
20 extern BOOLEAN HaliFindSmpConfig(VOID);
21 ULONG_PTR KernelBase;
22 
23 /* FUNCTIONS ****************************************************************/
24 
25 VOID NTAPI HalpInitializePICs(IN BOOLEAN EnableInterrupts)
26 {
27     UNIMPLEMENTED;
28 }
29 
30 VOID
31 HalpInitPhase0(PLOADER_PARAMETER_BLOCK LoaderBlock)
32 
33 {
34    static BOOLEAN MPSInitialized = FALSE;
35 
36 
37    /* Only initialize MP system once. Once called the first time,
38       each subsequent call is part of the initialization sequence
39       for an application processor. */
40 
41    DPRINT("HalpInitPhase0()\n");
42 
43 
44    if (MPSInitialized)
45    {
46       ASSERT(FALSE);
47    }
48 
49    MPSInitialized = TRUE;
50 
51    if (!HaliFindSmpConfig())
52    {
53       ASSERT(FALSE);
54    }
55 
56    /* store the kernel base for later use */
57    KernelBase = (ULONG_PTR)CONTAINING_RECORD(LoaderBlock->LoadOrderListHead.Flink, LDR_DATA_TABLE_ENTRY, InLoadOrderLinks)->DllBase;
58 
59 }
60 
61 VOID
62 HalpInitPhase1(VOID)
63 {
64 }
65 
66 /* EOF */
67