1 #ifndef __INCLUDE_DDK_HALFUNCS_H
2 #define __INCLUDE_DDK_HALFUNCS_H
5 #include <ntos/haltypes.h>
8 HalAcquireDisplayOwnership(IN PHAL_RESET_DISPLAY_PARAMETERS ResetDisplayParameters);
11 HalAdjustResourceList(PCM_RESOURCE_LIST Resources);
14 HalAllocateAdapterChannel(IN PADAPTER_OBJECT AdapterObject,
15 IN PDEVICE_OBJECT DeviceObject,
16 IN ULONG NumberOfMapRegisters,
17 IN PDRIVER_CONTROL ExecutionRoutine,
21 HalAllocateCommonBuffer(PADAPTER_OBJECT AdapterObject,
23 PPHYSICAL_ADDRESS LogicalAddress,
24 BOOLEAN CacheEnabled);
27 HalAllocateCrashDumpRegisters(IN PADAPTER_OBJECT AdapterObject,
28 IN OUT PULONG NumberOfMapRegisters);
31 HalAssignSlotResources(
32 PUNICODE_STRING RegistryPath,
33 PUNICODE_STRING DriverClassName,
34 PDRIVER_OBJECT DriverObject,
35 PDEVICE_OBJECT DeviceObject,
36 INTERFACE_TYPE BusType,
39 PCM_RESOURCE_LIST *AllocatedResources
43 HalCalibratePerformanceCounter(ULONG Count);
47 HalClearSoftwareInterrupt
51 HalDisplayString(IN PCH String);
54 * HalExamineMBR() is not exported explicitly.
55 * It is exported by the HalDispatchTable.
58 * HalExamineMBR(PDEVICE_OBJECT DeviceObject,
60 * ULONG MBRTypeIdentifier,
65 HalFlushCommonBuffer(ULONG Unknown1,
75 HalFreeCommonBuffer(PADAPTER_OBJECT AdapterObject,
77 PHYSICAL_ADDRESS LogicalAddress,
79 BOOLEAN CacheEnabled);
81 PADAPTER_OBJECT STDCALL
82 HalGetAdapter(PDEVICE_DESCRIPTION DeviceDescription,
83 PULONG NumberOfMapRegisters);
86 HalGetBusData(BUS_DATA_TYPE BusDataType,
93 HalGetBusDataByOffset(BUS_DATA_TYPE BusDataType,
100 /* Is this function really exported ??
102 HalGetDmaAlignmentRequirement(VOID);
108 HalGetDmaAlignmentRequirement(
113 HalGetEnvironmentVariable(IN PCH Name,
115 IN USHORT ValueLength);
118 HalGetInterruptVector(INTERFACE_TYPE InterfaceType,
120 ULONG BusInterruptLevel,
121 ULONG BusInterruptVector,
123 PKAFFINITY Affinity);
126 HalMakeBeep(ULONG Frequency);
129 HalQueryDisplayParameters(PULONG DispSizeX,
135 HalQueryRealTimeClock(PTIME_FIELDS Time);
138 * HalQuerySystemInformation() is not exported explicitly.
139 * It is exported by the HalDispatchTable.
142 * HalQuerySystemInformation(VOID);
146 HalReadDmaCounter(PADAPTER_OBJECT AdapterObject);
149 HalRequestIpi(ULONG Unknown);
153 HalRequestSoftwareInterrupt
157 HalSetBusData(BUS_DATA_TYPE BusDataType,
164 HalSetBusDataByOffset(BUS_DATA_TYPE BusDataType,
172 HalSetDisplayParameters(ULONG CursorPosX,
176 HalSetEnvironmentVariable(IN PCH Name,
180 HalSetProfileInterval
184 HalSetRealTimeClock(PTIME_FIELDS Time);
191 HalStartNextProcessor(ULONG Unknown1,
195 HalStartProfileInterrupt
199 HalStopProfileInterrupt
203 HalSystemVectorDispatchEntry(ULONG Unknown1,
208 HalTranslateBusAddress(INTERFACE_TYPE InterfaceType,
210 PHYSICAL_ADDRESS BusAddress,
212 PPHYSICAL_ADDRESS TranslatedAddress);
216 * Kernel debugger support functions
220 KdPortInitialize(PKD_PORT_INFORMATION PortInformation,
225 KdPortGetByte(PUCHAR ByteRecieved);
228 KdPortPollByte(PUCHAR ByteRecieved);
231 KdPortPutByte(UCHAR ByteToSend);
239 READ_PORT_BUFFER_UCHAR(PUCHAR Port,
244 READ_PORT_BUFFER_ULONG(PULONG Port,
249 READ_PORT_BUFFER_USHORT(PUSHORT Port,
254 READ_PORT_UCHAR(PUCHAR Port);
257 READ_PORT_ULONG(PULONG Port);
260 READ_PORT_USHORT(PUSHORT Port);
263 WRITE_PORT_BUFFER_UCHAR(PUCHAR Port,
268 WRITE_PORT_BUFFER_ULONG(PULONG Port,
273 WRITE_PORT_BUFFER_USHORT(PUSHORT Port,
278 WRITE_PORT_UCHAR(PUCHAR Port,
282 WRITE_PORT_ULONG(PULONG Port,
286 WRITE_PORT_USHORT(PUSHORT Port,
289 #endif /* __INCLUDE_DDK_HALDDK_H */