3 * COPYRIGHT: See COPYING in the top level directory
4 * PROJECT: ReactOS kernel
5 * FILE: ntoskrnl/hal/x86/halinit.c
6 * PURPOSE: Initalize the x86 hal
7 * PROGRAMMER: David Welch (welch@cwcom.net)
12 /* INCLUDES *****************************************************************/
18 /* GLOBALS *****************************************************************/
20 PVOID HalpZeroPageMapping
= NULL
;
23 /* FUNCTIONS ***************************************************************/
28 PDRIVER_OBJECT DriverObject
,
29 PUNICODE_STRING RegistryPath
)
31 return STATUS_SUCCESS
;
35 HalInitSystem (ULONG BootPhase
,
36 PLOADER_PARAMETER_BLOCK LoaderBlock
)
40 RtlZeroMemory(&HalpHooks
, sizeof(HALP_HOOKS
));
41 HalpInitPhase0((PROS_LOADER_PARAMETER_BLOCK
)LoaderBlock
);
43 else if (BootPhase
== 1)
45 /* Initialize the clock interrupt */
48 /* Initialize display and make the screen black */
49 HalInitializeDisplay ((PROS_LOADER_PARAMETER_BLOCK
)LoaderBlock
);
50 HalpInitBusHandlers();
53 /* Enumerate the devices on the motherboard */
54 HalpStartEnumerator();
56 else if (BootPhase
== 2)
58 PHYSICAL_ADDRESS Null
= {{0}};
60 /* Go to blue screen */
61 HalClearDisplay (0x17); /* grey on blue */
63 HalpZeroPageMapping
= MmMapIoSpace(Null
, PAGE_SIZE
, MmNonCached
);