ReactOS  0.4.15-dev-1384-g878186b
halinit_up.c
Go to the documentation of this file.
1 /*
2  * PROJECT: ReactOS Hardware Abstraction Layer
3  * LICENSE: GPL-2.0-or-later (https://spdx.org/licenses/GPL-2.0-or-later)
4  * PURPOSE: Initialize the x86 HAL
5  * COPYRIGHT: Copyright 1998 David Welch (welch@cwcom.net)
6  */
7 
8 /* INCLUDES *****************************************************************/
9 
10 #include <hal.h>
11 
12 #define NDEBUG
13 #include <debug.h>
14 
15 /* GLOBALS ******************************************************************/
16 
18 
19 /* FUNCTIONS ****************************************************************/
20 
21 VOID
22 NTAPI
24  IN ULONG ProcessorNumber,
25  IN PLOADER_PARAMETER_BLOCK LoaderBlock)
26 {
27  /* Set default IDR */
28  KeGetPcr()->IDR = 0xFFFFFFFF & ~(1 << PIC_CASCADE_IRQ);
29 }
30 
31 VOID
33 {
34 
35 }
36 
37 VOID
39 {
40  /* Enable timer interrupt handler */
42  0,
46  Latched);
47 
48  /* Enable RTC interrupt handler */
50  0,
54  Latched);
55 
56  /* Initialize DMA. NT does this in Phase 0 */
57  HalpInitDma();
58 }
59 
60 /* EOF */
#define PIC_RTC_IRQ
Definition: halhw.h:157
#define IN
Definition: typedefs.h:39
#define PRIMARY_VECTOR_BASE
Definition: halp.h:16
#define HAL_BUILD_TYPE
Definition: halp.h:10
#define KeGetPcr()
Definition: ke.h:26
VOID NTAPI HalpInitProcessor(IN ULONG ProcessorNumber, IN PLOADER_PARAMETER_BLOCK LoaderBlock)
Definition: halinit_up.c:23
NTSTATUS(* NTAPI)(IN PFILE_FULL_EA_INFORMATION EaBuffer, IN ULONG EaLength, OUT PULONG ErrorOffset)
Definition: IoEaTest.cpp:117
VOID HalpInitDma(VOID)
Definition: dma.c:121
VOID HalpProfileInterrupt(VOID)
#define PIC_CASCADE_IRQ
Definition: halhw.h:156
VOID NTAPI HalpEnableInterruptHandler(IN UCHAR Flags, IN ULONG BusVector, IN ULONG SystemVector, IN KIRQL Irql, IN PVOID Handler, IN KINTERRUPT_MODE Mode)
Definition: usage.c:49
#define CLOCK2_LEVEL
Definition: env_spec_w32.h:700
VOID HalpClockInterrupt(VOID)
Definition: timer.c:30
VOID HalpInitPhase1(VOID)
Definition: halinit_up.c:26
VOID HalpInitPhase0(IN PLOADER_PARAMETER_BLOCK LoaderBlock)
Definition: halinit_up.c:20
#define PIC_TIMER_IRQ
Definition: halhw.h:155
unsigned short USHORT
Definition: pedump.c:61
#define PROFILE_LEVEL
Definition: env_spec_w32.h:698
unsigned int ULONG
Definition: retypes.h:1
#define IDT_DEVICE
Definition: halp.h:22
const USHORT HalpBuildType
Definition: halinit_up.c:17