1 #ifndef __INCLUDE_DDK_HALFUNCS_H
2 #define __INCLUDE_DDK_HALFUNCS_H
3 /* $Id: halfuncs.h,v 1.8 2003/07/12 10:24:45 chorns Exp $ */
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
);
105 HalGetEnvironmentVariable(IN PCH Name
,
107 IN USHORT ValueLength
);
110 HalGetInterruptVector(INTERFACE_TYPE InterfaceType
,
112 ULONG BusInterruptLevel
,
113 ULONG BusInterruptVector
,
115 PKAFFINITY Affinity
);
118 HalMakeBeep(ULONG Frequency
);
121 HalQueryDisplayParameters(PULONG DispSizeX
,
127 HalQueryRealTimeClock(PTIME_FIELDS Time
);
130 * HalQuerySystemInformation() is not exported explicitly.
131 * It is exported by the HalDispatchTable.
134 * HalQuerySystemInformation(VOID);
138 HalReadDmaCounter(PADAPTER_OBJECT AdapterObject
);
141 HalRequestIpi(ULONG Unknown
);
145 HalRequestSoftwareInterrupt
149 HalSetBusData(BUS_DATA_TYPE BusDataType
,
156 HalSetBusDataByOffset(BUS_DATA_TYPE BusDataType
,
164 HalSetDisplayParameters(ULONG CursorPosX
,
168 HalSetEnvironmentVariable(IN PCH Name
,
172 HalSetProfileInterval
176 HalSetRealTimeClock(PTIME_FIELDS Time
);
183 HalStartNextProcessor(ULONG Unknown1
,
187 HalStartProfileInterrupt
191 HalStopProfileInterrupt
195 HalSystemVectorDispatchEntry(ULONG Unknown1
,
200 HalTranslateBusAddress(INTERFACE_TYPE InterfaceType
,
202 PHYSICAL_ADDRESS BusAddress
,
204 PPHYSICAL_ADDRESS TranslatedAddress
);
208 * Kernel debugger support functions
212 KdPortInitialize(PKD_PORT_INFORMATION PortInformation
,
217 KdPortGetByte(PUCHAR ByteRecieved
);
220 KdPortPollByte(PUCHAR ByteRecieved
);
223 KdPortPutByte(UCHAR ByteToSend
);
231 READ_PORT_BUFFER_UCHAR(PUCHAR Port
,
236 READ_PORT_BUFFER_ULONG(PULONG Port
,
241 READ_PORT_BUFFER_USHORT(PUSHORT Port
,
246 READ_PORT_UCHAR(PUCHAR Port
);
249 READ_PORT_ULONG(PULONG Port
);
252 READ_PORT_USHORT(PUSHORT Port
);
255 WRITE_PORT_BUFFER_UCHAR(PUCHAR Port
,
260 WRITE_PORT_BUFFER_ULONG(PULONG Port
,
265 WRITE_PORT_BUFFER_USHORT(PUSHORT Port
,
270 WRITE_PORT_UCHAR(PUCHAR Port
,
274 WRITE_PORT_ULONG(PULONG Port
,
278 WRITE_PORT_USHORT(PUSHORT Port
,
281 #endif /* __INCLUDE_DDK_HALDDK_H */