20 #ifndef _ARM_KETYPES_H 21 #define _ARM_KETYPES_H 32 #define SYNCH_LEVEL DISPATCH_LEVEL 46 #define CP15_MIDR 15, 0, 0, 0, 0 47 #define CP15_CTR 15, 0, 0, 0, 1 48 #define CP15_TCMTR 15, 0, 0, 0, 2 49 #define CP15_TLBTR 15, 0, 0, 0, 3 50 #define CP15_MPIDR 15, 0, 0, 0, 5 51 #define CP15_PFR0 15, 0, 0, 1, 0 52 #define CP15_PFR1 15, 0, 0, 1, 1 53 #define CP15_DFR0 15, 0, 0, 1, 2 54 #define CP15_AFR0 15, 0, 0, 1, 3 55 #define CP15_MMFR0 15, 0, 0, 1, 4 56 #define CP15_MMFR1 15, 0, 0, 1, 5 57 #define CP15_MMFR2 15, 0, 0, 1, 6 58 #define CP15_MMFR3 15, 0, 0, 1, 7 59 #define CP15_ISAR0 15, 0, 0, 2, 0 60 #define CP15_ISAR1 15, 0, 0, 2, 1 61 #define CP15_ISAR2 15, 0, 0, 2, 2 62 #define CP15_ISAR3 15, 0, 0, 2, 3 63 #define CP15_ISAR4 15, 0, 0, 2, 4 64 #define CP15_ISAR5 15, 0, 0, 2, 5 65 #define CP15_ISAR6 15, 0, 0, 2, 6 66 #define CP15_ISAR7 15, 0, 0, 2, 7 67 #define CP15_SCTLR 15, 0, 1, 0, 0 68 #define CP15_ACTLR 15, 0, 1, 0, 1 69 #define CP15_CPACR 15, 0, 1, 0, 2 70 #define CP15_SCR 15, 0, 1, 1, 0 71 #define CP15_SDER 15, 0, 1, 1, 1 72 #define CP15_NSACR 15, 0, 1, 1, 2 73 #define CP15_TTBR0 15, 0, 2, 0, 0 74 #define CP15_TTBR1 15, 0, 2, 0, 1 75 #define CP15_TTBCR 15, 0, 2, 0, 2 76 #define CP15_DACR 15, 0, 3, 0, 0 77 #define CP15_DFSR 15, 0, 5, 0, 0 78 #define CP15_IFSR 15, 0, 5, 0, 1 79 #define CP15_DFAR 15, 0, 6, 0, 0 80 #define CP15_IFAR 15, 0, 6, 0, 2 81 #define CP15_ICIALLUIS 15, 0, 7, 1, 0 82 #define CP15_BPIALLIS 15, 0, 7, 1, 6 83 #define CP15_ICIALLU 15, 0, 7, 5, 0 84 #define CP15_ICIMVAU 15, 0, 7, 5, 1 85 #define CP15_BPIALL 15, 0, 7, 5, 6 86 #define CP15_BPIMVA 15, 0, 7, 5, 7 87 #define CP15_DCIMVAC 15, 0, 7, 6, 1 88 #define CP15_DCISW 15, 0, 7, 6, 2 89 #define CP15_DCCMVAC 15, 0, 7, 10, 1 90 #define CP15_DCCSW 15, 0, 7, 10, 2 91 #define CP15_DCCMVAU 15, 0, 7, 11, 1 92 #define CP15_DCCIMVAC 15, 0, 7, 14, 1 93 #define CP15_DCCISW 15, 0, 7, 14, 2 94 #define CP15_PAR 15, 0, 7, 4, 0 95 #define CP15_ATS1CPR 15, 0, 7, 8, 0 96 #define CP15_ATS1CPW 15, 0, 7, 8, 1 97 #define CP15_ATS1CUR 15, 0, 7, 8, 2 98 #define CP15_ATS1CUW 15, 0, 7, 8, 3 99 #define CP15_ISB 15, 0, 7, 5, 4 100 #define CP15_DSB 15, 0, 7, 10, 4 101 #define CP15_DMB 15, 0, 7, 10, 5 102 #define CP15_TLBIALLIS 15, 0, 8, 3, 0 103 #define CP15_TLBIMVAIS 15, 0, 8, 3, 1 104 #define CP15_TLBIASIDIS 15, 0, 8, 3, 2 105 #define CP15_TLBIMVAAIS 15, 0, 8, 3, 3 106 #define CP15_ITLBIALL 15, 0, 8, 5, 0 107 #define CP15_ITLBIMVA 15, 0, 8, 5, 1 108 #define CP15_ITLBIASID 15, 0, 8, 5, 2 109 #define CP15_DTLBIALL 15, 0, 8, 6, 0 110 #define CP15_DTLBIMVA 15, 0, 8, 6, 1 111 #define CP15_DTLBIASID 15, 0, 8, 6, 2 112 #define CP15_TLBIALL 15, 0, 8, 7, 0 113 #define CP15_TLBIMVA 15, 0, 8, 7, 1 114 #define CP15_TLBIASID 15, 0, 8, 7, 2 115 #define CP15_TLBIMVAA 15, 0, 8, 7, 3 116 #define CP15_PMCR 15, 0, 9, 12, 0 117 #define CP15_PMCNTENSET 15, 0, 9, 12, 1 118 #define CP15_PMCNTENCLR 15, 0, 9, 12, 2 119 #define CP15_PMOVSR 15, 0, 9, 12, 3 120 #define CP15_PSWINC 15, 0, 9, 12, 4 121 #define CP15_PMSELR 15, 0, 9, 12, 5 122 #define CP15_PMCCNTR 15, 0, 9, 13, 0 123 #define CP15_PMXEVTYPER 15, 0, 9, 13, 1 124 #define CP15_PMXEVCNTR 15, 0, 9, 13, 2 125 #define CP15_PMUSERENR 15, 0, 9, 14, 0 126 #define CP15_PMINTENSET 15, 0, 9, 14, 1 127 #define CP15_PMINTENCLR 15, 0, 9, 14, 2 128 #define CP15_PRRR 15, 0, 10, 2, 0 129 #define CP15_NMRR 15, 0, 10, 2, 1 130 #define CP15_VBAR 15, 0, 12, 0, 0 131 #define CP15_MVBAR 15, 0, 12, 0, 1 132 #define CP15_ISR 15, 0, 12, 1, 0 133 #define CP15_CONTEXTIDR 15, 0, 13, 0, 1 134 #define CP15_TPIDRURW 15, 0, 13, 0, 2 135 #define CP15_TPIDRURO 15, 0, 13, 0, 3 136 #define CP15_TPIDRPRW 15, 0, 13, 0, 4 137 #define CP15_CCSIDR 15, 1, 0, 0, 0 138 #define CP15_CLIDR 15, 1, 0, 0, 1 139 #define CP15_AIDR 15, 1, 0, 0, 7 140 #define CP15_CSSELR 15, 2, 0, 0, 0 141 #define CP14_DBGDIDR 14, 0, 0, 0, 0 142 #define CP14_DBGWFAR 14, 0, 0, 6, 0 143 #define CP14_DBGVCR 14, 0, 0, 7, 0 144 #define CP14_DBGECR 14, 0, 0, 9, 0 145 #define CP14_DBGDSCCR 14, 0, 0, 10, 0 146 #define CP14_DBGDSMCR 14, 0, 0, 11, 0 147 #define CP14_DBGDTRRX 14, 0, 0, 0, 2 148 #define CP14_DBGPCSR 14, 0, 0, 1, 2 149 #define CP14_DBGITR 14, 0, 0, 1, 2 150 #define CP14_DBGDSCR 14, 0, 0, 2, 2 151 #define CP14_DBGDTRTX 14, 0, 0, 3, 2 152 #define CP14_DBGDRCR 14, 0, 0, 4, 2 153 #define CP14_DBGCIDSR 14, 0, 0, 9, 2 154 #define CP14_DBGBVR0 14, 0, 0, 0, 4 155 #define CP14_DBGBVR1 14, 0, 0, 1, 4 156 #define CP14_DBGBVR2 14, 0, 0, 2, 4 157 #define CP14_DBGBVR3 14, 0, 0, 3, 4 158 #define CP14_DBGBVR4 14, 0, 0, 4, 4 159 #define CP14_DBGBVR5 14, 0, 0, 5, 4 160 #define CP14_DBGBVR6 14, 0, 0, 6, 4 161 #define CP14_DBGBVR7 14, 0, 0, 7, 4 162 #define CP14_DBGBCR0 14, 0, 0, 0, 5 163 #define CP14_DBGBCR1 14, 0, 0, 1, 5 164 #define CP14_DBGBCR2 14, 0, 0, 2, 5 165 #define CP14_DBGBCR3 14, 0, 0, 3, 5 166 #define CP14_DBGBCR4 14, 0, 0, 4, 5 167 #define CP14_DBGBCR5 14, 0, 0, 5, 5 168 #define CP14_DBGBCR6 14, 0, 0, 6, 5 169 #define CP14_DBGBCR7 14, 0, 0, 7, 5 170 #define CP14_DBGWVR0 14, 0, 0, 0, 6 171 #define CP14_DBGWVR1 14, 0, 0, 1, 6 172 #define CP14_DBGWVR2 14, 0, 0, 2, 6 173 #define CP14_DBGWVR3 14, 0, 0, 3, 6 174 #define CP14_DBGWCR0 14, 0, 0, 0, 7 175 #define CP14_DBGWCR1 14, 0, 0, 1, 7 176 #define CP14_DBGWCR2 14, 0, 0, 2, 7 177 #define CP14_DBGWCR3 14, 0, 0, 3, 7 178 #define CPVFP_FPSID 10, 7, 0, 0, 0 179 #define CPVFP_FPSCR 10, 7, 1, 0, 0 180 #define CPVFP_MVFR1 10, 7, 6, 0, 0 181 #define CPVFP_MVFR0 10, 7, 7, 0, 0 182 #define CPVFP_FPEXC 10, 7, 8, 0, 0 183 #define CP15_TTBRx_PD_MASK 0xffffc000 189 #define CPSRM_USER 0x10 190 #define CPSRM_FIQ 0x11 191 #define CPSRM_INT 0x12 192 #define CPSRM_SVC 0x13 193 #define CPSRM_ABT 0x17 194 #define CPSRM_UDF 0x1b 195 #define CPSRM_SYS 0x1f 196 #define CPSRM_MASK 0x1f 197 #define SYSCALL_PSR 0x30 199 #define CPSRF_N 0x80000000 200 #define CPSRF_Z 0x40000000 201 #define CPSRF_C 0x20000000 202 #define CPSRF_V 0x10000000 203 #define CPSRF_Q 0x08000000 204 #define CPSR_IT_MASK 0x600fc00 206 #define FPSCRF_N 0x80000000 207 #define FPSCRF_Z 0x40000000 208 #define FPSCRF_C 0x20000000 209 #define FPSCRF_V 0x10000000 210 #define FPSCRF_QC 0x08000000 212 #define FPSCRM_AHP 0x4000000 213 #define FPSCRM_DN 0x2000000 214 #define FPSCRM_FZ 0x1000000 215 #define FPSCRM_RMODE_MASK 0xc00000 216 #define FPSCRM_RMODE_RN 0x0 217 #define FPSCRM_RMODE_RP 0x400000 218 #define FPSCRM_RMODE_RM 0x800000 219 #define FPSCRM_RMODE_RZ 0xc00000 220 #define FPSCRM_DEPRECATED 0x370000 222 #define FPSCR_IDE 0x8000 223 #define FPSCR_IXE 0x1000 224 #define FPSCR_UFE 0x800 225 #define FPSCR_OFE 0x400 226 #define FPSCR_DZE 0x200 227 #define FPSCR_IOE 0x100 228 #define FPSCR_IDC 0x80 229 #define FPSCR_IXC 0x10 230 #define FPSCR_UFC 0x8 231 #define FPSCR_OFC 0x4 232 #define FPSCR_DZC 0x2 233 #define FPSCR_IOC 0x1 235 #define CPSRC_INT 0x80 236 #define CPSRC_ABORT 0x100 237 #define CPSRC_THUMB 0x20 239 #define SWFS_PAGE_FAULT 0x10 240 #define SWFS_ALIGN_FAULT 0x20 241 #define SWFS_HWERR_FAULT 0x40 242 #define SWFS_DEBUG_FAULT 0x80 243 #define SWFS_EXECUTE 0x8 244 #define SWFS_WRITE 0x1 246 #define CP14_DBGDSCR_MOE_MASK 0x3c 247 #define CP14_DBGDSCR_MOE_SHIFT 0x2 248 #define CP14_DBGDSCR_MOE_HALT 0x0 249 #define CP14_DBGDSCR_MOE_BP 0x1 250 #define CP14_DBGDSCR_MOE_WPASYNC 0x2 251 #define CP14_DBGDSCR_MOE_BKPT 0x3 252 #define CP14_DBGDSCR_MOE_EXTERNAL 0x4 253 #define CP14_DBGDSCR_MOE_VECTOR 0x5 254 #define CP14_DBGDSCR_MOE_WPSYNC 0xa 256 #define CP15_PMCR_DP 0x20 257 #define CP15_PMCR_X 0x10 258 #define CP15_PMCR_CLKCNT_DIV 0x8 259 #define CP15_PMCR_CLKCNT_RST 0x4 260 #define CP15_PMCR_CNT_RST 0x2 261 #define CP15_PMCR_ENABLE 0x1 266 #define C1_MMU_CONTROL 0x01 267 #define C1_ALIGNMENT_CONTROL 0x02 268 #define C1_DCACHE_CONTROL 0x04 269 #define C1_ICACHE_CONTROL 0x1000 270 #define C1_VECTOR_CONTROL 0x2000 278 #define IPI_PACKET_READY 6 279 #define IPI_SYNCH_REQUEST 16 284 #define PRCB_MINOR_VERSION 1 285 #define PRCB_MAJOR_VERSION 1 286 #define PRCB_BUILD_DEBUG 1 287 #define PRCB_BUILD_UNIPROCESSOR 2 292 #define LDT_ENTRY ULONG 297 #define INITIAL_STALL_COUNT 100 298 #define MM_HAL_VA_START 0xFFC00000 299 #define MM_HAL_VA_END 0xFFFFFFFF 304 #define KSEG0_BASE 0x80000000 309 #define NUMBER_POOL_LOOKASIDE_LISTS 32 372 #ifndef NTOS_MODE_USER 739 #if (NTDDI_VERSION < NTDDI_LONGHORN) 740 #define GENERAL_LOOKASIDE_POOL PP_LOOKASIDE_LIST 840 #if (NTDDI_VERSION >= NTDDI_WIN8) 875 #if (NTDDI_VERSION >= NTDDI_LONGHORN) 923 #if (NTDDI_VERSION >= NTDDI_WIN8) 1013 #if (NTDDI_VERSION < NTDDI_WIN8) // FIXME 1103 #define KeGetCurrentIrql() KeGetPcr()->CurrentIrql 1104 #define _KeGetCurrentThread() KeGetCurrentPrcb()->CurrentThread 1105 #define _KeGetPreviousMode() KeGetCurrentPrcb()->CurrentThread->PreviousMode 1106 #define _KeIsExecutingDpc() (KeGetCurrentPrcb()->DpcRoutineActive != 0) 1107 #define KeGetCurrentThread() _KeGetCurrentThread() 1108 #define KeGetPreviousMode() _KeGetPreviousMode() 1111 #endif // !NTOS_MODE_USER 1117 #endif // !_ARM_KETYPES_H
C_ASSERT(sizeof(ARM_CONTROL_REGISTER)==sizeof(ULONG))
GENERAL_LOOKASIDE_POOL PPNPagedLookasideList[NUMBER_POOL_LOOKASIDE_LISTS]
KARM_MINI_STACK AbtMiniStack
struct _KARM_MINI_STACK * PKARM_MINI_STACK
ULONG CcFastReadResourceMiss
union _ARM_CONTROL_REGISTER * PARM_CONTROL_REGISTER
struct _KARM_ARCH_STATE * PKARM_ARCH_STATE
ULONG Cp15_Cr2_TtbControl
LONG IoWriteOperationCount
struct _KSWITCH_FRAME * PKSWITCH_FRAME
ULONG SharedReadyQueueMask
LONG MmMappedPagesWriteCount
UINT64 CycleCounterFrequency
PVOID NonVolatileRegisters
SYNCH_COUNTERS SynchCounters
ULONG Cp15_Cr9_PmEventType[31]
ULONG CcPinReadNoWaitMiss
UCHAR SecondLevelCacheAssociativity
ULONG Cp15_Cr9_PmInterruptSelect
struct _UCALLOUT_FRAME * PUCALLOUT_FRAME
USHORT SoftwareInterruptPending
union _CPU_INFO * PCPU_INFO
FORCEINLINE struct _KPRCB * KeGetCurrentPrcb(VOID)
ULONG Cp15_Cr9_PmCountEnableSet
LARGE_INTEGER IoWriteTransferCount
LONG AffinitizedSelectionMask
KARM_MINI_STACK PanicMiniStack
ULONG AlignmentFaultsEnabled
PROCESSOR_POWER_STATE PowerState
SLIST_HEADER InterruptObjectPool
SINGLE_LIST_ENTRY AbPropagateBoostsList
KSPECIAL_REGISTERS SpecialRegisters
ULONG DpcNormalLocalInterrupt
ULONG Cp15_Cr9_PmUserEnable
KEXCEPTION_FRAME * PKCALLOUT_FRAME
ULONG CcPinMappedDataCount
ULONG RoundRobinReplacementEnabled
ULONG CachedResidentAvailable
UCHAR ProcessorVendorString[2]
ULONG DpcNormalProcessingActive
ULONG Cp15_Cr10_PrimaryMemoryRemap
KEXCEPTION_FRAME KCALLOUT_FRAME
UCHAR GroupSchedulingOverQuota
struct _MACHINE_FRAME * PMACHINE_FRAME
ULONG CcFastMdlReadResourceMiss
BOOLEAN DebugRegistersValid
struct _KEXCEPTION_FRAME KEXCEPTION_FRAME
union _ARM_ID_CODE_REGISTER ARM_ID_CODE_REGISTER
struct _KSHARED_READY_QUEUE * SharedReadyQueue
union _ARM_DOMAIN_REGISTER ARM_DOMAIN_REGISTER
struct _KARM_VFP_STATE * PKARM_VFP_STATE
PP_LOOKASIDE_LIST PPLookasideList[16]
KSPIN_LOCK_QUEUE DECLSPEC_ALIGN(128) LockQueue[17]
struct _KTRAP_FRAME KTRAP_FRAME
GENERAL_LOOKASIDE_POOL PPNxPagedLookasideList[32]
struct _KDESCRIPTOR * PKDESCRIPTOR
struct _KPROCESSOR_STATE * PKPROCESSOR_STATE
KARM_MINI_STACK UdfMiniStack
ULONG KeAlignmentFixupCount
struct _KEXCEPTION_FRAME * PKEXCEPTION_FRAME
struct _KSWITCH_FRAME KSWITCH_FRAME
struct _KSPECIAL_REGISTERS * PKSPECIAL_REGISTERS
LONG MmMappedWriteIoCount
LONG IoReadOperationCount
struct _KPRCB * CurrentPrcb
ULONG SecondLevelCacheSize
BOOLEAN ContextFromKFramesUnwound
struct _KARM_VFP_STATE KARM_VFP_STATE
struct _DISPATCHER_CONTEXT * PDISPATCHER_CONTEXT
LONG MmCacheTransitionCount
_Reserved_ PVOID Reserved
union _ARM_TTB_REGISTER ARM_TTB_REGISTER
ULONG SharedReadyQueueOffset
ULONG Cp15_Cr1_AuxControl
ULONG CcFastReadNotPossible
ULONG Cp15_Cr10_NormalMemoryRemap
UCHAR CoresPerPhysicalProcessor
struct _UCALLOUT_FRAME UCALLOUT_FRAME
struct _KARM_ARCH_STATE KARM_ARCH_STATE
ULONG DpcNormalDpcPresent
struct _KNODE * ParentNode
ULONG CcFastMdlReadNotPossible
ULONG CcMdlReadNoWaitMiss
enum _ARM_DOMAINS ARM_DOMAINS
SINGLE_LIST_ENTRY AbSelfIoBoostsList
UINT64 CacheProcessorMask[5]
ULONG Cp15_Cr9_PmCycleCounter
LARGE_INTEGER IoOtherTransferCount
KPROCESSOR_STATE ProcessorState
LONG IoOtherOperationCount
union _ARM_STATUS_REGISTER ARM_STATUS_REGISTER
ULONG DpcNormalProcessingRequested
union _ARM_LOCKDOWN_REGISTER ARM_LOCKDOWN_REGISTER
KARM_MINI_STACK IrqMiniStack
ULONG CcFastMdlReadNoWait
UCHAR DpcInterruptRequested
struct _DISPATCHER_CONTEXT DISPATCHER_CONTEXT
struct _KSPECIAL_REGISTERS KSPECIAL_REGISTERS
struct _KDESCRIPTOR KDESCRIPTOR
union _ARM_CACHE_REGISTER ARM_CACHE_REGISTER
LARGE_INTEGER IoReadTransferCount
ULONG Cp15_Cr9_PmOverflowStatus
SINGLE_LIST_ENTRY DeferredReadyListHead
struct _KSTART_FRAME KSTART_FRAME
struct _REQUEST_MAILBOX * Mailbox
ULONG DpcNormalThreadSignal
ULONG KeExceptionDispatchCount
#define FIELD_OFFSET(t, f)
union _ARM_CONTROL_REGISTER ARM_CONTROL_REGISTER
union _ARM_LOCKDOWN_REGISTER * PARM_LOCKDOWN_REGISTER
ULONG Cp15_Cr13_ContextId
struct _KARM_MINI_STACK KARM_MINI_STACK
KARM_ARCH_STATE ArchState
struct _KSPIN_LOCK_QUEUE * LockArray
_In_ CLIPOBJ _In_ BRUSHOBJ _In_ LONG _In_ LONG _In_ LONG x2
MACHINE_FRAME MachineFrame
ULONG CcMapDataNoWaitMiss
LIST_ENTRY DispatcherReadyListHead[32]
UCHAR LogicalProcessorsPerCore
struct _KARM_VFP_STATE * Link
ULONG64 AffinitizedCycles
KSPIN_LOCK_QUEUE LockQueue[LockQueueMaximumLock]
struct _KSTART_FRAME * PKSTART_FRAME
struct _KTRAP_FRAME * PKTRAP_FRAME
struct _MACHINE_FRAME MACHINE_FRAME
unsigned long long UINT64
KENTROPY_TIMING_STATE EntropyTimingState
ULONG DpcNormalTimerExpiration
LONG MaximumDpcQueueDepth
ULONG CcLazyWriteHotSpots
LONG MmDirtyPagesWriteCount
struct _KPROCESSOR_STATE KPROCESSOR_STATE
ULONG CcLostDelayedWrites
union _ARM_CACHE_REGISTER * PARM_CACHE_REGISTER
ULONG CcCopyReadNoWaitMiss
KARM_MINI_STACK FiqMiniStack
union _ARM_ID_CODE_REGISTER * PARM_ID_CODE_REGISTER
ULONG Cp15_Cr9_PmEventCounter[31]
GENERAL_LOOKASIDE_POOL PPPagedLookasideList[NUMBER_POOL_LOOKASIDE_LISTS]