ReactOS 0.4.16-dev-2491-g3dc6630
halfuncs.h
Go to the documentation of this file.
1/*++ NDK Version: 0098
2
3Copyright (c) Alex Ionescu. All rights reserved.
4
5Header Name:
6
7 halfuncs.h
8
9Abstract:
10
11 Function definitions for the HAL.
12
13Author:
14
15 Alex Ionescu (alexi@tinykrnl.org) - Updated - 27-Feb-2006
16
17--*/
18
19#ifndef _HALFUNCS_H
20#define _HALFUNCS_H
21
22//
23// Dependencies
24//
25#include <umtypes.h>
26#include <haltypes.h>
27#include <ketypes.h>
28#include <section_attribs.h>
29
30#ifndef NTOS_MODE_USER
31
32//
33// Private HAL Callbacks
34//
35#define HalHandlerForBus HALPRIVATEDISPATCH->HalHandlerForBus
36#define HalHandlerForConfigSpace HALPRIVATEDISPATCH->HalHandlerForConfigSpace
37#define HalLocateHiberRanges HALPRIVATEDISPATCH->HalLocateHiberRanges
38#define HalRegisterBusHandler HALPRIVATEDISPATCH->HalRegisterBusHandler
39#define HalSetWakeEnable HALPRIVATEDISPATCH->HalSetWakeEnable
40#define HalSetWakeAlarm HALPRIVATEDISPATCH->HalSetWakeAlarm
41#define HalPciTranslateBusAddress HALPRIVATEDISPATCH->HalPciTranslateBusAddress
42#define HalPciAssignSlotResources HALPRIVATEDISPATCH->HalPciAssignSlotResources
43#define HalHaltSystem HALPRIVATEDISPATCH->HalHaltSystem
44#define HalFindBusAddressTranslation HALPRIVATEDISPATCH->HalFindBusAddressTranslation
45#define HalResetDisplay HALPRIVATEDISPATCH->HalResetDisplay
46#if (NTDDI_VERSION >= NTDDI_WS03)
47#define HalAllocateMapRegisters HALPRIVATEDISPATCH->HalAllocateMapRegisters
48#endif
49#if (NTDDI_VERSION >= NTDDI_WINXP)
50#define KdSetupPciDeviceForDebugging HALPRIVATEDISPATCH->KdSetupPciDeviceForDebugging
51#define KdReleasePciDeviceforDebugging HALPRIVATEDISPATCH->KdReleasePciDeviceforDebugging
52#define KdGetAcpiTablePhase0 HALPRIVATEDISPATCH->KdGetAcpiTablePhase0
53#define KdCheckPowerButton HALPRIVATEDISPATCH->KdCheckPowerButton
54#define HalVectorToIDTEntry HALPRIVATEDISPATCH->HalVectorToIDTEntry
55#define KdMapPhysicalMemory64 HALPRIVATEDISPATCH->KdMapPhysicalMemory64
56#define KdUnmapVirtualAddress HALPRIVATEDISPATCH->KdUnmapVirtualAddress
57#endif
58#if (NTDDI_VERSION >= NTDDI_LONGHORN)
59#define KdGetPciDataByOffset HALPRIVATEDISPATCH->KdGetPciDataByOffset
60#define KdSetPciDataByOffset HALPRIVATEDISPATCH->KdSetPciDataByOffset
61#define HalGetInterruptVectorOverride HALPRIVATEDISPATCH->HalGetInterruptVectorOverride
62#define HalGetVectorInputOverride HALPRIVATEDISPATCH->HalGetVectorInputOverride
63#define HalLoadMicrocode HALPRIVATEDISPATCH->HalLoadMicrocode
64#define HalUnloadMicrocode HALPRIVATEDISPATCH->HalUnloadMicrocode
65#define HalPostMicrocodeUpdate HALPRIVATEDISPATCH->HalPostMicrocodeUpdate
66#endif
67#if (NTDDI_VERSION >= NTDDI_VISTASP1)
68#define HalAllocateMessageTargetOverride HALPRIVATEDISPATCH->HalAllocateMessageTargetOverride
69#define HalFreeMessageTargetOverride HALPRIVATEDISPATCH->HalFreeMessageTargetOverride
70#define HalDpReplaceBegin HALPRIVATEDISPATCH->HalDpReplaceBegin
71#define HalDpReplaceTarget HALPRIVATEDISPATCH->HalDpReplaceTarget
72#define HalDpReplaceControl HALPRIVATEDISPATCH->HalDpReplaceControl
73#define HalDpReplaceEnd HALPRIVATEDISPATCH->HalDpReplaceEnd
74#define HalPrepareForBugcheck HALPRIVATEDISPATCH->HalPrepareForBugcheck
75#endif
76#if (NTDDI_VERSION >= NTDDI_WIN7)
77#define HalQueryWakeTime HALPRIVATEDISPATCH->HalQueryWakeTime
78#define HalReportIdleStateUsage HALPRIVATEDISPATCH->HalReportIdleStateUsage
79#define HalTscSynchronization HALPRIVATEDISPATCH->HalTscSynchronization
80#define HalWheaInitProcessorGenericSection HALPRIVATEDISPATCH->HalWheaInitProcessorGenericSection
81#define HalStopLegacyUsbInterrupts HALPRIVATEDISPATCH->HalStopLegacyUsbInterrupts
82#endif
83#if (NTDDI_VERSION >= NTDDI_VISTASP2)
84#define HalReadWheaPhysicalMemory HALPRIVATEDISPATCH->HalReadWheaPhysicalMemory
85#define HalWriteWheaPhysicalMemory HALPRIVATEDISPATCH->HalWriteWheaPhysicalMemory
86#endif
87#if (NTDDI_VERSION >= NTDDI_WIN7)
88#define HalDpMaskLevelTriggeredInterrupts HALPRIVATEDISPATCH->HalDpMaskLevelTriggeredInterrupts
89#define HalDpUnmaskLevelTriggeredInterrupts HALPRIVATEDISPATCH->HalDpUnmaskLevelTriggeredInterrupts
90#define HalDpGetInterruptReplayState HALPRIVATEDISPATCH->HalDpGetInterruptReplayState
91#define HalDpReplayInterrupts HALPRIVATEDISPATCH->HalDpReplayInterrupts
92#define HalQueryIoPortAccessSupported HALPRIVATEDISPATCH->HalQueryIoPortAccessSupported
93#endif
94#if (NTDDI_VERSION >= NTDDI_WIN8)
95#define KdSetupIntegratedDeviceForDebugging HALPRIVATEDISPATCH->KdSetupIntegratedDeviceForDebugging
96#define KdReleaseIntegratedDeviceForDebugging HALPRIVATEDISPATCH->KdReleaseIntegratedDeviceForDebugging
97#define HalGetEnlightenmentInformation HALPRIVATEDISPATCH->HalGetEnlightenmentInformation
98#define HalAllocateEarlyPages HALPRIVATEDISPATCH->HalAllocateEarlyPages
99#define HalMapEarlyPages HALPRIVATEDISPATCH->HalMapEarlyPages
100#if (NTDDI_VERSION == NTDDI_WIN8)
101#define HalGetClockOwner HALPRIVATEDISPATCH->HalGetClockOwner
102#define HalGetClockConfiguration HALPRIVATEDISPATCH->HalGetClockConfiguration
103#endif
104#define HalNotifyProcessorFreeze HALPRIVATEDISPATCH->HalNotifyProcessorFreeze
105#define HalPrepareProcessorForIdle HALPRIVATEDISPATCH->HalPrepareProcessorForIdle
106#define HalRegisterLogRoutine HALPRIVATEDISPATCH->HalRegisterLogRoutine
107#define HalResumeProcessorFromIdle HALPRIVATEDISPATCH->HalResumeProcessorFromIdle
108#define HalVectorToIDTEntryEx HALPRIVATEDISPATCH->HalVectorToIDTEntryEx
109#define HalSecondaryInterruptQueryPrimaryInformation HALPRIVATEDISPATCH->HalSecondaryInterruptQueryPrimaryInformation
110#define HalMaskInterrupt HALPRIVATEDISPATCH->HalMaskInterrupt
111#define HalUnmaskInterrupt HALPRIVATEDISPATCH->HalUnmaskInterrupt
112#define HalIsInterruptTypeSecondary HALPRIVATEDISPATCH->HalIsInterruptTypeSecondary
113#define HalAllocateGsivForSecondaryInterrupt HALPRIVATEDISPATCH->HalAllocateGsivForSecondaryInterrupt
114#define HalAddInterruptRemapping HALPRIVATEDISPATCH->HalAddInterruptRemapping
115#define HalRemoveInterruptRemapping HALPRIVATEDISPATCH->HalRemoveInterruptRemapping
116#define HalSaveAndDisableHvEnlightenment HALPRIVATEDISPATCH->HalSaveAndDisableHvEnlightenment
117#define HalRestoreHvEnlightenment HALPRIVATEDISPATCH->HalRestoreHvEnlightenment
118#define HalFlushIoBuffersExternalCache HALPRIVATEDISPATCH->HalFlushIoBuffersExternalCache
119#define HalFlushExternalCache HALPRIVATEDISPATCH->HalFlushExternalCache
120#define HalPciEarlyRestore HALPRIVATEDISPATCH->HalPciEarlyRestore
121#define HalGetProcessorId HALPRIVATEDISPATCH->HalGetProcessorId
122#define HalAllocatePmcCounterSet HALPRIVATEDISPATCH->HalAllocatePmcCounterSet
123#define HalCollectPmcCounters HALPRIVATEDISPATCH->HalCollectPmcCounters
124#define HalFreePmcCounterSet HALPRIVATEDISPATCH->HalFreePmcCounterSet
125#define HalProcessorHalt HALPRIVATEDISPATCH->HalProcessorHalt
126#define HalTimerQueryCycleCounter HALPRIVATEDISPATCH->HalTimerQueryCycleCounter
127#if (NTDDI_VERSION == NTDDI_WIN8)
128#define HalGetNextTickDuration HALPRIVATEDISPATCH->HalGetNextTickDuration
129#endif
130#define HalPciMarkHiberPhase HALPRIVATEDISPATCH->HalPciMarkHiberPhase
131#define HalQueryProcessorRestartEntryPoint HALPRIVATEDISPATCH->HalQueryProcessorRestartEntryPoint
132#define HalRequestInterrupt HALPRIVATEDISPATCH->HalRequestInterrupt
133#define HalEnumerateUnmaskedInterrupts HALPRIVATEDISPATCH->HalEnumerateUnmaskedInterrupts
134#define HalFlushAndInvalidatePageExternalCache HALPRIVATEDISPATCH->HalFlushAndInvalidatePageExternalCache
135#define KdEnumerateDebuggingDevices HALPRIVATEDISPATCH->KdEnumerateDebuggingDevices
136#define HalFlushIoRectangleExternalCache HALPRIVATEDISPATCH->HalFlushIoRectangleExternalCache
137#define HalPowerEarlyRestore HALPRIVATEDISPATCH->HalPowerEarlyRestore
138#define HalQueryCapsuleCapabilities HALPRIVATEDISPATCH->HalQueryCapsuleCapabilities
139#define HalUpdateCapsule HALPRIVATEDISPATCH->HalUpdateCapsule
140#define HalPciMultiStageResumeCapable HALPRIVATEDISPATCH->HalPciMultiStageResumeCapable
141#define HalDmaFreeCrashDumpRegisters HALPRIVATEDISPATCH->HalDmaFreeCrashDumpRegisters
142#define HalAcpiAoacCapable HALPRIVATEDISPATCH->HalAcpiAoacCapable
143#endif
144#if (NTDDI_VERSION >= NTDDI_WINBLUE)
145#define HalInterruptSetDestination HALPRIVATEDISPATCH->HalInterruptSetDestination
146#define HalGetClockConfiguration HALPRIVATEDISPATCH->HalGetClockConfiguration
147#define HalClockTimerActivate HALPRIVATEDISPATCH->HalClockTimerActivate
148#define HalClockTimerInitialize HALPRIVATEDISPATCH->HalClockTimerInitialize
149#define HalClockTimerStop HALPRIVATEDISPATCH->HalClockTimerStop
150#define HalClockTimerArm HALPRIVATEDISPATCH->HalClockTimerArm
151#define HalTimerOnlyClockInterruptPending HALPRIVATEDISPATCH->HalTimerOnlyClockInterruptPending
152#define HalAcpiGetMultiNode HALPRIVATEDISPATCH->HalAcpiGetMultiNode
153#define HalPowerSetRebootHandler HALPRIVATEDISPATCH->HalPowerSetRebootHandler
154#define HalIommuRegisterDispatchTable HALPRIVATEDISPATCH->HalIommuRegisterDispatchTable
155#define HalTimerWatchdogStart HALPRIVATEDISPATCH->HalTimerWatchdogStart
156#define HalTimerWatchdogResetCountdown HALPRIVATEDISPATCH->HalTimerWatchdogResetCountdown
157#define HalTimerWatchdogStop HALPRIVATEDISPATCH->HalTimerWatchdogStop
158#define HalTimerWatchdogGeneratedLastReset HALPRIVATEDISPATCH->HalTimerWatchdogGeneratedLastReset
159#define HalTimerWatchdogTriggerSystemReset HALPRIVATEDISPATCH->HalTimerWatchdogTriggerSystemReset
160#endif
161#if (NTDDI_VERSION >= NTDDI_WIN10)
162#define HalInterruptVectorDataToGsiv HALPRIVATEDISPATCH->HalInterruptVectorDataToGsiv
163#define HalInterruptGetHighestPriorityInterrupt HALPRIVATEDISPATCH->HalInterruptGetHighestPriorityInterrupt
164#define HalProcessorOn HALPRIVATEDISPATCH->HalProcessorOn
165#define HalProcessorOff HALPRIVATEDISPATCH->HalProcessorOff
166#define HalProcessorFreeze HALPRIVATEDISPATCH->HalProcessorFreeze
167#define HalDmaLinkDeviceObjectByToken HALPRIVATEDISPATCH->HalDmaLinkDeviceObjectByToken
168#define HalDmaCheckAdapterToken HALPRIVATEDISPATCH->HalDmaCheckAdapterToken
169#define HalPciLateRestore HALPRIVATEDISPATCH->HalPciLateRestore
170#define HalTimerConvertPerformanceCounterToAuxiliaryCounter HALPRIVATEDISPATCH->HalTimerConvertPerformanceCounterToAuxiliaryCounter
171#define HalTimerConvertAuxiliaryCounterToPerformanceCounter HALPRIVATEDISPATCH->HalTimerConvertAuxiliaryCounterToPerformanceCounter
172#define HalTimerQueryAuxiliaryCounterFrequency HALPRIVATEDISPATCH->HalTimerQueryAuxiliaryCounterFrequency
173#define HalConnectThermalInterrupt HALPRIVATEDISPATCH->HalConnectThermalInterrupt
174#define HalIsEFIRuntimeActive HALPRIVATEDISPATCH->HalIsEFIRuntimeActive
175#endif
176
177//
178// Private HAL IOMMU Callbacks
179//
180#define HalIommuSupportEnabled HalIommuDispatch->HalIommuSupportEnabled
181#define HalIommuGetConfiguration HalIommuDispatch->HalIommuGetConfiguration
182#define HalIommuGetLibraryContext HalIommuDispatch->HalIommuGetLibraryContext
183#define HalIommuMapDevice HalIommuDispatch->HalIommuMapDevice
184#define HalIommuEnableDevicePasid HalIommuDispatch->HalIommuEnableDevicePasid
185#define HalIommuSetAddressSpace HalIommuDispatch->HalIommuSetAddressSpace
186#define HalIommuDisableDevicePasid HalIommuDispatch->HalIommuDisableDevicePasid
187#define HalIommuUnmapDevice HalIommuDispatch->HalIommuUnmapDevice
188#define HalIommuFreeLibraryContext HalIommuDispatch->HalIommuFreeLibraryContext
189#define HalIommuFlushTb HalIommuDispatch->HalIommuFlushTb
190#define HalIommuFlushAllPasid HalIommuDispatch->HalIommuFlushAllPasid
191#define HalIommuProcessPageRequestQueue HalIommuDispatch->HalIommuProcessPageRequestQueue
192#define HalIommuFaultRoutine HalIommuDispatch->HalIommuFaultRoutine
193#define HalIommuReferenceAsid HalIommuDispatch->HalIommuReferenceAsid
194#define HalIommuDereferenceAsid HalIommuDispatch->HalIommuDereferenceAsid
195#define HalIommuServicePageFault HalIommuDispatch->HalIommuServicePageFault
196#define HalIommuDevicePowerChange HalIommuDispatch->HalIommuDevicePowerChange
197
198//
199// Display Functions
200//
202VOID
203NTAPI
206);
207
208//
209// Initialization Functions
210//
213NTAPI
215 VOID
216);
217
218#ifdef _ARC_
220VOID
221NTAPI
223 _In_ ULONG ProcessorNumber,
224 _In_ struct _LOADER_PARAMETER_BLOCK *LoaderBlock
225);
226
227CODE_SEG("INIT")
230NTAPI
232 _In_ ULONG BootPhase,
234);
235
238NTAPI
241 _In_ PKPROCESSOR_STATE ProcessorState
242);
243
244#endif
245
247VOID
248NTAPI
251);
252
253//
254// CPU Routines
255//
257VOID
258NTAPI
260 VOID
261);
262
263//
264// Interrupt Functions
265//
268NTAPI
273);
274
276VOID
280);
281
283VOID
284NTAPI
288);
289
292NTAPI
297);
298
299#ifdef __REACTOS__
301VOID
302NTAPI
305 _In_ PKTRAP_FRAME TrapFrame
306);
307#else
309VOID
310NTAPI
314);
315#endif
316
317#ifdef _ARM_ // FIXME: ndk/arm? armddk.h?
319ULONG
321 VOID
322);
323#endif
324
325CODE_SEG("INIT")
327VOID
328NTAPI
330 VOID
331);
332
334VOID
337 _In_ KIRQL SoftwareInterruptRequested
338);
339
340#ifdef _M_AMD64
341
343VOID
344NTAPI
345HalSendNMI(
346 _In_ KAFFINITY TargetSet);
347
349VOID
350NTAPI
351HalSendSoftwareInterrupt(
352 _In_ KAFFINITY TargetSet,
353 _In_ KIRQL Irql);
354
355#endif // _M_AMD64
356
358VOID
359NTAPI
361 _In_ KAFFINITY TargetSet
362);
363
365VOID
366NTAPI
368 PVOID NmiInfo
369);
370
372UCHAR
376 _Out_ PKINTERRUPT_ROUTINE **FlatDispatch,
377 _Out_ PKINTERRUPT_ROUTINE *NoConnection
378);
379
380//
381// Bus Functions
382//
385NTAPI
388);
389
390//
391// Environment Functions
392//
393#ifdef _ARC_
396NTAPI
398 _In_ PCH Name,
400);
401
404NTAPI
406 _In_ PCH Variable,
409);
410#endif
411
412//
413// Profiling Functions
414//
416VOID
417NTAPI
419 _In_ KPROFILE_SOURCE ProfileSource
420);
421
423VOID
424NTAPI
426 _In_ KPROFILE_SOURCE ProfileSource
427);
428
431NTAPI
434);
435
436//
437// Time Functions
438//
441NTAPI
443 _In_ PTIME_FIELDS RtcTime
444);
445
448NTAPI
450 _In_ PTIME_FIELDS RtcTime
451);
452
454ULONG
455NTAPI
458);
459
460
461//
462// BIOS call API
463//
466NTAPI
471
474NTAPI
478
481NTAPI
486 _In_ ULONG Size);
487
490NTAPI
495 _In_ ULONG Size);
496
499NTAPI
501 _In_ ULONG InterruptNumber,
502 _Inout_ PX86_BIOS_REGISTERS Registers);
503
504#endif // NTOS_MODE_USER
505#endif // _HALFUNCS_H
#define CODE_SEG(...)
unsigned char BOOLEAN
Definition: actypes.h:127
LONG NTSTATUS
Definition: precomp.h:26
Definition: bufpool.h:45
_Out_ PKIRQL Irql
Definition: csq.h:179
LPWSTR Name
Definition: desk.c:124
ULONG_PTR KAFFINITY
Definition: compat.h:85
UCHAR KIRQL
Definition: env_spec_w32.h:591
KIRQL * PKIRQL
Definition: env_spec_w32.h:592
IN OUT PLONG IN OUT PLONG Addend IN OUT PLONG IN LONG Increment
Definition: CrNtStubs.h:46
ULONG HalGetInterruptSource(VOID)
Definition: pic.c:108
BOOLEAN NTAPI HalStartNextProcessor(IN PLOADER_PARAMETER_BLOCK LoaderBlock, IN PKPROCESSOR_STATE ProcessorState)
Definition: processor.c:71
VOID NTAPI HalInitializeProcessor(IN ULONG ProcessorNumber, IN PLOADER_PARAMETER_BLOCK LoaderBlock)
Definition: processor.c:48
BOOLEAN NTAPI HalInitSystem(_In_ ULONG BootPhase, _In_ PLOADER_PARAMETER_BLOCK LoaderBlock)
Definition: halinit.c:45
NTHALAPI NTSTATUS NTAPI x86BiosWriteMemory(_In_ USHORT Segment, _In_ USHORT Offset, _In_reads_bytes_(Size) PVOID Buffer, _In_ ULONG Size)
Definition: x86bios.c:231
NTHALAPI NTSTATUS NTAPI HalAdjustResourceList(_Inout_ PIO_RESOURCE_REQUIREMENTS_LIST *pResourceList)
NTHALAPI BOOLEAN NTAPI HalAllProcessorsStarted(VOID)
Definition: processor.c:60
NTHALAPI NTSTATUS NTAPI x86BiosReadMemory(_In_ USHORT Segment, _In_ USHORT Offset, _Out_writes_bytes_(Size) PVOID Buffer, _In_ ULONG Size)
Definition: x86bios.c:204
NTHALAPI BOOLEAN NTAPI x86BiosCall(_In_ ULONG InterruptNumber, _Inout_ PX86_BIOS_REGISTERS Registers)
Definition: x86bios.c:410
NTHALAPI VOID NTAPI HalRequestIpi(_In_ KAFFINITY TargetSet)
Definition: up.c:19
NTHALAPI VOID FASTCALL HalRequestSoftwareInterrupt(_In_ KIRQL SoftwareInterruptRequested)
NTHALAPI VOID NTAPI HalReturnToFirmware(_In_ FIRMWARE_REENTRY Action)
Definition: reboot.c:21
NTHALAPI UCHAR FASTCALL HalSystemVectorDispatchEntry(_In_ ULONG Vector, _Out_ PKINTERRUPT_ROUTINE **FlatDispatch, _Out_ PKINTERRUPT_ROUTINE *NoConnection)
NTHALAPI NTSTATUS NTAPI x86BiosAllocateBuffer(_Inout_ ULONG *Size, _Out_ USHORT *Segment, _Out_ USHORT *Offset)
Definition: x86bios.c:151
NTHALAPI NTSTATUS NTAPI x86BiosFreeBuffer(_In_ USHORT Segment, _In_ USHORT Offset)
Definition: x86bios.c:180
NTHALAPI BOOLEAN NTAPI HalQueryRealTimeClock(_In_ PTIME_FIELDS RtcTime)
NTHALAPI VOID NTAPI HalHandleNMI(PVOID NmiInfo)
NTHALAPI BOOLEAN NTAPI HalEnableSystemInterrupt(_In_ ULONG Vector, _In_ KIRQL Irql, _In_ KINTERRUPT_MODE InterruptMode)
NTHALAPI VOID NTAPI HalProcessorIdle(VOID)
Definition: processor.c:83
NTHALAPI VOID NTAPI HalDisplayString(_In_ PCSTR String)
Definition: display.c:31
NTHALAPI ULONG NTAPI HalSetTimeIncrement(_In_ ULONG Increment)
NTHALAPI VOID NTAPI HalEndSystemInterrupt(_In_ KIRQL Irql, _In_ UCHAR Vector)
NTHALAPI VOID NTAPI HalDisableSystemInterrupt(_In_ ULONG Vector, _In_ KIRQL Irql)
NTHALAPI VOID NTAPI HalStopProfileInterrupt(_In_ KPROFILE_SOURCE ProfileSource)
Definition: profil.c:24
NTHALAPI BOOLEAN NTAPI HalSetRealTimeClock(_In_ PTIME_FIELDS RtcTime)
Definition: cmos.c:279
NTHALAPI VOID NTAPI HalReportResourceUsage(VOID)
Definition: usage.c:67
NTHALAPI VOID NTAPI HalStartProfileInterrupt(_In_ KPROFILE_SOURCE ProfileSource)
Definition: profil.c:41
NTHALAPI BOOLEAN NTAPI HalBeginSystemInterrupt(_In_ KIRQL Irql, _In_ ULONG Vector, _Out_ PKIRQL OldIrql)
NTHALAPI VOID FASTCALL HalClearSoftwareInterrupt(_In_ KIRQL Request)
NTHALAPI ULONG_PTR NTAPI HalSetProfileInterval(_In_ ULONG_PTR Interval)
Definition: profil.c:58
enum _FIRMWARE_REENTRY FIRMWARE_REENTRY
DWORD Interval
Definition: netstat.c:30
#define _In_reads_bytes_(s)
Definition: no_sal2.h:170
#define _Inout_
Definition: no_sal2.h:162
#define _Out_
Definition: no_sal2.h:160
#define _In_
Definition: no_sal2.h:158
#define _Out_writes_bytes_(s)
Definition: no_sal2.h:178
#define FASTCALL
Definition: nt_native.h:50
CHAR * PCH
Definition: ntbasedef.h:403
_In_ ULONG _In_ ULONG Offset
Definition: ntddpcm.h:101
_In_ ULONG _In_ ULONG _In_ ULONG Length
Definition: ntddpcm.h:102
#define NTHALAPI
Definition: ntoskrnl.h:40
unsigned short USHORT
Definition: pedump.c:61
ARC_STATUS NTAPI HalGetEnvironmentVariable(IN PCH Name, IN USHORT ValueLength, IN PCH Value)
Definition: rtc.c:70
ARC_STATUS NTAPI HalSetEnvironmentVariable(IN PCH Name, IN PCH Value)
Definition: rtc.c:57
enum _KINTERRUPT_MODE KINTERRUPT_MODE
ULONG ARC_STATUS
Definition: arc.h:4
#define NTAPI
Definition: typedefs.h:36
const char * PCSTR
Definition: typedefs.h:52
uint32_t ULONG_PTR
Definition: typedefs.h:65
uint32_t ULONG
Definition: typedefs.h:59
_Must_inspect_result_ _In_ WDFDEVICE _In_ PWDF_DEVICE_PROPERTY_DATA _In_ DEVPROPTYPE _In_ ULONG Size
Definition: wdfdevice.h:4539
_Must_inspect_result_ _In_ WDFDEVICE _In_ WDFSTRING String
Definition: wdfdevice.h:2439
_In_ WDFREQUEST Request
Definition: wdfdevice.h:547
_In_ WDFIOTARGET _In_ _Strict_type_match_ WDF_IO_TARGET_SENT_IO_ACTION Action
Definition: wdfiotarget.h:510
_Must_inspect_result_ _In_ WDFKEY _In_ PCUNICODE_STRING _Out_opt_ PUSHORT _Inout_opt_ PUNICODE_STRING Value
Definition: wdfregistry.h:413
enum _KPROFILE_SOURCE KPROFILE_SOURCE
_Inout_ PVOID Segment
Definition: exfuncs.h:1101
_In_ PKSERVICE_ROUTINE _In_opt_ PVOID _In_opt_ PKSPIN_LOCK _In_ ULONG _In_ KIRQL _In_ KIRQL _In_ KINTERRUPT_MODE InterruptMode
Definition: iofuncs.h:806
_Requires_lock_held_ Interrupt _Releases_lock_ Interrupt _In_ _IRQL_restores_ KIRQL OldIrql
Definition: kefuncs.h:778
VOID(NTAPI * PKINTERRUPT_ROUTINE)(VOID)
Definition: ketypes.h:554
unsigned char UCHAR
Definition: xmlstorage.h:181