[REACTOS]
[reactos.git] / reactos / hal / halx86 / up / halinit_up.c
1 /*
2 * COPYRIGHT: See COPYING in the top level directory
3 * PROJECT: ReactOS kernel
4 * FILE: ntoskrnl/hal/x86/halinit.c
5 * PURPOSE: Initialize the x86 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
21 /* FUNCTIONS ****************************************************************/
22
23 VOID
24 NTAPI
25 HalpInitProcessor(
26 IN ULONG ProcessorNumber,
27 IN PLOADER_PARAMETER_BLOCK LoaderBlock)
28 {
29 /* Set default IDR */
30 KeGetPcr()->IDR = 0xFFFFFFFB;
31 }
32
33 VOID
34 HalpInitPhase0(IN PLOADER_PARAMETER_BLOCK LoaderBlock)
35 {
36
37 }
38
39 VOID
40 HalpInitPhase1(VOID)
41 {
42 /* Enable IRQ 0 */
43 HalpEnableInterruptHandler(IDT_DEVICE,
44 0,
45 PRIMARY_VECTOR_BASE,
46 CLOCK2_LEVEL,
47 HalpClockInterrupt,
48 Latched);
49
50 /* Enable IRQ 8 */
51 HalpEnableInterruptHandler(IDT_DEVICE,
52 0,
53 PRIMARY_VECTOR_BASE + 8,
54 PROFILE_LEVEL,
55 HalpProfileInterrupt,
56 Latched);
57
58 /* Initialize DMA. NT does this in Phase 0 */
59 HalpInitDma();
60 }
61
62 /* EOF */