Home | Info | Community | Development | myReactOS | Contact Us
ReactOS Development > Doxygenksarm.h
Go to the documentation of this file.
00001 /* 00002 * PROJECT: ReactOS Kernel 00003 * LICENSE: BSD - See COPYING.ARM in the top level directory 00004 * FILE: ntoskrnl/include/internal/arm/ksarm.h 00005 * PURPOSE: Definitions and offsets for ARM Assembly and C code 00006 * PROGRAMMERS: ReactOS Portable Systems Group 00007 */ 00008 00009 #ifdef _ASM_ 00010 00011 /* 00012 * CPSR Values 00013 */ 00014 .equ CPSR_THUMB_ENABLE, 0x20 00015 .equ CPSR_FIQ_DISABLE, 0x40 00016 .equ CPSR_IRQ_DISABLE, 0x80 00017 .equ CPSR_USER_MODE, 0x10 00018 .equ CPSR_FIQ_MODE, 0x11 00019 .equ CPSR_IRQ_MODE, 0x12 00020 .equ CPSR_SVC_MODE, 0x13 00021 .equ CPSR_ABORT_MODE, 0x17 00022 .equ CPSR_UND_MODE, 0x1B 00023 .equ CPSR_MODES, 0x1F 00024 00025 00026 /* 00027 * C1 Register Values 00028 */ 00029 .equ C1_MMU_CONTROL, 0x01 00030 .equ C1_ALIGNMENT_CONTROL, 0x02 00031 .equ C1_DCACHE_CONTROL, 0x04 00032 .equ C1_ICACHE_CONTROL, 0x1000 00033 .equ C1_VECTOR_CONTROL, 0x2000 00034 00035 /* 00036 * Loader Parameter Block Offsets 00037 */ 00038 .equ LpbKernelStack, 0x18 00039 .equ LpbPanicStack, 0x74 00040 .equ LpbInterruptStack, 0x5C 00041 00042 /* 00043 * Trap Frame offsets 00044 */ 00045 .equ TrDbgArgMark, 0x00 00046 .equ TrR0, 0x04 00047 .equ TrR1, 0x08 00048 .equ TrR2, 0x0C 00049 .equ TrR3, 0x10 00050 .equ TrR4, 0x14 00051 .equ TrR5, 0x18 00052 .equ TrR6, 0x1C 00053 .equ TrR7, 0x20 00054 .equ TrR8, 0x24 00055 .equ TrR9, 0x28 00056 .equ TrR10, 0x2C 00057 .equ TrR11, 0x30 00058 .equ TrR12, 0x34 00059 .equ TrUserSp, 0x38 00060 .equ TrUserLr, 0x3C 00061 .equ TrSvcSp, 0x40 00062 .equ TrSvcLr, 0x44 00063 .equ TrPc, 0x48 00064 .equ TrSpsr, 0x4C 00065 .equ TrapFrameLength, (23 * 0x04) 00066 00067 /* 00068 * Exception Frame offsets 00069 */ 00070 .equ ExR4, 0x00 00071 .equ ExR5, 0x04 00072 .equ ExR6, 0x08 00073 .equ ExR7, 0x0C 00074 .equ ExR8, 0x10 00075 .equ ExR9, 0x14 00076 .equ ExR10, 0x18 00077 .equ ExR11, 0x1C 00078 .equ ExLr, 0x20 00079 .equ ExSpsr, 0x24 00080 .equ ExceptionFrameLength, (10 * 0x04) 00081 00082 /* 00083 * PCR 00084 */ 00085 .equ KiPcr, 0xFFFFF000 00086 00087 /* 00088 * PCR Offsets 00089 */ 00090 .equ PcCurrentIrql, 0x14C 00091 00092 /* 00093 * KTHREAD Offsets 00094 */ 00095 .equ ThKernelStack, 0x20 00096 00097 /* 00098 * CONTEXT Offsets 00099 */ 00100 .equ CONTEXT_FULL, 0x43 00101 .equ CsContextFlags, 0x00 00102 .equ CsR0, 0x04 00103 .equ CsR1, 0x08 00104 .equ CsR2, 0x0C 00105 .equ CsR3, 0x10 00106 .equ CsR4, 0x14 00107 .equ CsR5, 0x18 00108 .equ CsR6, 0x1C 00109 .equ CsR7, 0x20 00110 .equ CsR8, 0x24 00111 .equ CsR9, 0x28 00112 .equ CsR10, 0x2C 00113 .equ CsR11, 0x30 00114 .equ CsR12, 0x34 00115 .equ CsSp, 0x38 00116 .equ CsLr, 0x3C 00117 .equ CsPc, 0x40 00118 .equ CsPsr, 0x44 00119 00120 /* 00121 * DebugService Control Types 00122 */ 00123 .equ BREAKPOINT_BREAK, 0 00124 .equ BREAKPOINT_PRINT, 1 00125 .equ BREAKPOINT_PROMPT, 2 00126 .equ BREAKPOINT_LOAD_SYMBOLS, 3 00127 .equ BREAKPOINT_UNLOAD_SYMBOLS, 4 00128 .equ BREAKPOINT_COMMAND_STRING, 5 00129 00130 #else 00131 00132 /* 00133 * CPSR Values 00134 */ 00135 #define CPSR_THUMB_ENABLE 0x20 00136 #define CPSR_FIQ_DISABLE 0x40 00137 #define CPSR_IRQ_DISABLE 0x80 00138 #define CPSR_USER_MODE 0x10 00139 #define CPSR_FIQ_MODE 0x11 00140 #define CPSR_IRQ_MODE 0x12 00141 #define CPSR_SVC_MODE 0x13 00142 #define CPSR_ABORT_MODE 0x17 00143 #define CPSR_UND_MODE 0x1B 00144 #define CPSR_MODES 0x1F 00145 00146 #endif Generated on Sun May 27 2012 04:37:12 for ReactOS by
1.7.6.1
|