2cbf5e88eea524316378e1a2e43c0119a209e23b
[reactos.git] / reactos / ntoskrnl / include / internal / arm / ke.h
1 #ifndef __NTOSKRNL_INCLUDE_INTERNAL_ARM_KE_H
2 #define __NTOSKRNL_INCLUDE_INTERNAL_ARM_KE_H
3
4 //
5 //Lockdown TLB entries
6 //
7 #define PCR_ENTRY 0
8 #define PDR_ENTRY 2
9
10 #define IMAGE_FILE_MACHINE_ARCHITECTURE IMAGE_FILE_MACHINE_ARM
11
12 //
13 // BKPT is 4 bytes long
14 //
15 #define KD_BREAKPOINT_SIZE 4
16
17 //
18 // Macros for getting and setting special purpose registers in portable code
19 //
20 #define KeGetContextPc(Context) \
21 ((Context)->Pc)
22
23 #define KeSetContextPc(Context, ProgramCounter) \
24 ((Context)->Pc = (ProgramCounter))
25
26 #define KeGetTrapFramePc(TrapFrame) \
27 ((TrapFrame)->Pc)
28
29 #define KeGetContextReturnRegister(Context) \
30 ((Context)->R0)
31
32 #define KeSetContextReturnRegister(Context, ReturnValue) \
33 ((Context)->R0 = (ReturnValue))
34
35 VOID
36 KiPassiveRelease(
37 VOID
38
39 );
40
41 VOID
42 KiApcInterrupt(
43 VOID
44 );
45
46 #include "mm.h"
47
48 VOID
49 KeFillFixedEntryTb(
50 IN ARM_PTE Pte,
51 IN PVOID Virtual,
52 IN ULONG Index
53 );
54
55 VOID
56 KeFlushTb(
57 VOID
58 );
59
60 #define KiSystemStartupReal KiSystemStartup
61
62 #define KiGetPreviousMode(tf) \
63 ((tf->Spsr & CPSR_MODES) == CPSR_USER_MODE) ? UserMode: KernelMode
64
65 #endif