#include <hal.h>
#include <debug.h>
Go to the source code of this file.
|
VOID NTAPI | HalpRegisterKdSupportFunctions (VOID) |
|
NTSTATUS NTAPI | HalpAssignSlotResources (IN PUNICODE_STRING RegistryPath, IN PUNICODE_STRING DriverClassName, IN PDRIVER_OBJECT DriverObject, IN PDEVICE_OBJECT DeviceObject, IN INTERFACE_TYPE BusType, IN ULONG BusNumber, IN ULONG SlotNumber, IN OUT PCM_RESOURCE_LIST *AllocatedResources) |
|
BOOLEAN NTAPI | HalpTranslateBusAddress (IN INTERFACE_TYPE InterfaceType, IN ULONG BusNumber, IN PHYSICAL_ADDRESS BusAddress, IN OUT PULONG AddressSpace, OUT PPHYSICAL_ADDRESS TranslatedAddress) |
|
BOOLEAN NTAPI | HalpFindBusAddressTranslation (IN PHYSICAL_ADDRESS BusAddress, IN OUT PULONG AddressSpace, OUT PPHYSICAL_ADDRESS TranslatedAddress, IN OUT PULONG_PTR Context, IN BOOLEAN NextBus) |
|
NTSTATUS NTAPI | HalAdjustResourceList (IN OUT PIO_RESOURCE_REQUIREMENTS_LIST *pRequirementsList) |
|
NTSTATUS NTAPI | HalAssignSlotResources (IN PUNICODE_STRING RegistryPath, IN PUNICODE_STRING DriverClassName, IN PDRIVER_OBJECT DriverObject, IN PDEVICE_OBJECT DeviceObject, IN INTERFACE_TYPE BusType, IN ULONG BusNumber, IN ULONG SlotNumber, IN OUT PCM_RESOURCE_LIST *AllocatedResources) |
|
ULONG NTAPI | HalGetBusData (IN BUS_DATA_TYPE BusDataType, IN ULONG BusNumber, IN ULONG SlotNumber, IN PVOID Buffer, IN ULONG Length) |
|
ULONG NTAPI | HalGetBusDataByOffset (IN BUS_DATA_TYPE BusDataType, IN ULONG BusNumber, IN ULONG SlotNumber, IN PVOID Buffer, IN ULONG Offset, IN ULONG Length) |
|
ULONG NTAPI | HalGetInterruptVector (IN INTERFACE_TYPE InterfaceType, IN ULONG BusNumber, IN ULONG BusInterruptLevel, IN ULONG BusInterruptVector, OUT PKIRQL Irql, OUT PKAFFINITY Affinity) |
|
ULONG NTAPI | HalSetBusData (IN BUS_DATA_TYPE BusDataType, IN ULONG BusNumber, IN ULONG SlotNumber, IN PVOID Buffer, IN ULONG Length) |
|
ULONG NTAPI | HalSetBusDataByOffset (IN BUS_DATA_TYPE BusDataType, IN ULONG BusNumber, IN ULONG SlotNumber, IN PVOID Buffer, IN ULONG Offset, IN ULONG Length) |
|
BOOLEAN NTAPI | HalTranslateBusAddress (IN INTERFACE_TYPE InterfaceType, IN ULONG BusNumber, IN PHYSICAL_ADDRESS BusAddress, IN OUT PULONG AddressSpace, OUT PPHYSICAL_ADDRESS TranslatedAddress) |
|
◆ NDEBUG
◆ HalAdjustResourceList()
◆ HalAssignSlotResources()
Definition at line 128 of file busemul.c.
136{
137
139 {
140
149 }
150 else
151 {
152
161 }
162}
NTSTATUS NTAPI HalpAssignSlotResources(IN PUNICODE_STRING RegistryPath, IN PUNICODE_STRING DriverClassName, IN PDRIVER_OBJECT DriverObject, IN PDEVICE_OBJECT DeviceObject, IN INTERFACE_TYPE BusType, IN ULONG BusNumber, IN ULONG SlotNumber, IN OUT PCM_RESOURCE_LIST *AllocatedResources)
_Inout_opt_ PDEVICE_OBJECT _Inout_opt_ PDEVICE_OBJECT _Inout_opt_ PDEVICE_OBJECT _Inout_opt_ PCM_RESOURCE_LIST * AllocatedResources
#define HalPciAssignSlotResources
_In_ PDEVICE_OBJECT DeviceObject
_Must_inspect_result_ _In_ PDRIVER_OBJECT _In_ PCUNICODE_STRING RegistryPath
_Must_inspect_result_ _In_ PDRIVER_OBJECT DriverObject
_In_ WDFIORESREQLIST _In_ ULONG SlotNumber
_In_opt_ PUNICODE_STRING DriverClassName
_In_opt_ PUNICODE_STRING _In_ PDRIVER_OBJECT _In_ PDEVICE_OBJECT _In_ INTERFACE_TYPE _In_ ULONG BusNumber
_In_opt_ PUNICODE_STRING _In_ PDRIVER_OBJECT _In_ PDEVICE_OBJECT _In_ INTERFACE_TYPE BusType
◆ HalGetBusData()
Definition at line 169 of file busemul.c.
174{
175
180 0,
182}
ULONG NTAPI HalGetBusDataByOffset(IN BUS_DATA_TYPE BusDataType, IN ULONG BusNumber, IN ULONG SlotNumber, IN PVOID Buffer, IN ULONG Offset, IN ULONG Length)
_In_ ULONG _In_ ULONG _In_ ULONG Length
◆ HalGetBusDataByOffset()
Definition at line 189 of file busemul.c.
195{
197
198
199 if (BusDataType ==
Cmos)
200 {
201
203 }
205 {
206
208 }
212 {
213
216
217
219 &BusHandler,
224 }
225
226
227 return 0;
228}
BUS_HANDLER HalpFakePciBusHandler
BOOLEAN HalpPCIConfigInitialized
ULONG NTAPI HalpGetPCIData(IN PBUS_HANDLER BusHandler, IN PBUS_HANDLER RootBusHandler, IN ULONG SlotNumber, IN PVOID Buffer, IN ULONG Offset, IN ULONG Length)
ULONG NTAPI HalpGetCmosData(_In_ ULONG BusNumber, _In_ ULONG SlotNumber, _Out_writes_bytes_(Length) PVOID Buffer, _In_ ULONG Length)
_In_ ULONG _In_ ULONG Offset
#define RtlCopyMemory(Destination, Source, Length)
Referenced by HalGetBusData().
◆ HalGetInterruptVector()
Definition at line 235 of file busemul.c.
241{
242
247}
ULONG NTAPI HalpGetRootInterruptVector(_In_ ULONG BusInterruptLevel, _In_ ULONG BusInterruptVector, _Out_ PKIRQL OutIrql, _Out_ PKAFFINITY OutAffinity)
_In_ ULONG _In_ ULONG BusInterruptLevel
_In_ ULONG _In_ ULONG _In_ ULONG BusInterruptVector
_In_ ULONG _In_ ULONG _In_ ULONG _Out_ PKIRQL _Out_ PKAFFINITY Affinity
◆ HalpAssignSlotResources()
Definition at line 45 of file busemul.c.
53{
56
57
59
60
63
64
66 &BusHandler,
73}
NTSTATUS NTAPI HalpAssignPCISlotResources(IN PBUS_HANDLER BusHandler, IN PBUS_HANDLER RootHandler, IN PUNICODE_STRING RegistryPath, IN PUNICODE_STRING DriverClassName OPTIONAL, IN PDRIVER_OBJECT DriverObject, IN PDEVICE_OBJECT DeviceObject OPTIONAL, IN ULONG Slot, IN OUT PCM_RESOURCE_LIST *pAllocatedResources)
#define STATUS_NOT_IMPLEMENTED
Referenced by HalAssignSlotResources(), HalpInitBusHandler(), and HalpInitNonBusHandler().
◆ HalpFindBusAddressTranslation()
Definition at line 90 of file busemul.c.
95{
96
98
99
101
102
104
105
108}
_In_ ULONG _In_ PHYSICAL_ADDRESS BusAddress
_In_ ULONG _In_ PHYSICAL_ADDRESS _Inout_ PULONG _Out_ PPHYSICAL_ADDRESS TranslatedAddress
Referenced by HalpInitNonBusHandler().
◆ HalpRegisterKdSupportFunctions()
Definition at line 22 of file busemul.c.
23{
24
27
28
29#ifndef _MINIHAL_
30#if (NTDDI_VERSION >= NTDDI_VISTA)
33#else
36#endif
37#endif
38
39
41}
PVOID NTAPI HalpMapPhysicalMemory64Vista(IN PHYSICAL_ADDRESS PhysicalAddress, IN PFN_COUNT PageCount, IN BOOLEAN FlushCurrentTLB)
VOID NTAPI HalpUnmapVirtualAddress(IN PVOID VirtualAddress, IN PFN_COUNT PageCount)
VOID NTAPI HalpUnmapVirtualAddressVista(IN PVOID VirtualAddress, IN PFN_COUNT PageCount, IN BOOLEAN FlushCurrentTLB)
PVOID NTAPI HalpMapPhysicalMemory64(IN PHYSICAL_ADDRESS PhysicalAddress, IN PFN_COUNT PageCount)
VOID NTAPI HalpCheckPowerButton(VOID)
NTSTATUS NTAPI HalpReleasePciDeviceForDebugging(_Inout_ PDEBUG_DEVICE_DESCRIPTOR PciDevice)
Releases the PCI device MMIO mappings previously allocated with HalpSetupPciDeviceForDebugging().
NTSTATUS NTAPI HalpSetupPciDeviceForDebugging(_In_opt_ PVOID LoaderBlock, _Inout_ PDEBUG_DEVICE_DESCRIPTOR PciDevice)
Finds and fully initializes the PCI device associated with the supplied debug device descriptor.
#define KdUnmapVirtualAddress
#define KdMapPhysicalMemory64
#define KdSetupPciDeviceForDebugging
#define KdReleasePciDeviceforDebugging
#define KdCheckPowerButton
Referenced by HalInitializeProcessor().
◆ HalpTranslateBusAddress()
◆ HalSetBusData()
Definition at line 254 of file busemul.c.
259{
260
265 0,
267}
ULONG NTAPI HalSetBusDataByOffset(IN BUS_DATA_TYPE BusDataType, IN ULONG BusNumber, IN ULONG SlotNumber, IN PVOID Buffer, IN ULONG Offset, IN ULONG Length)
◆ HalSetBusDataByOffset()
Definition at line 274 of file busemul.c.
280{
282
283
284 if (BusDataType ==
Cmos)
285 {
286
288 }
290 {
291
294
295
297 &BusHandler,
302 }
303
304
305 return 0;
306}
ULONG NTAPI HalpSetPCIData(IN PBUS_HANDLER BusHandler, IN PBUS_HANDLER RootBusHandler, IN ULONG SlotNumber, IN PVOID Buffer, IN ULONG Offset, IN ULONG Length)
ULONG NTAPI HalpSetCmosData(IN ULONG BusNumber, IN ULONG SlotNumber, IN PVOID Buffer, IN ULONG Length)
Referenced by HalSetBusData().
◆ HalTranslateBusAddress()
Definition at line 313 of file busemul.c.
318{
319
321 {
322
328 }
329 else
330 {
331
334 }
335}
#define HalPciTranslateBusAddress
_Must_inspect_result_ _In_ WDFDEVICE _In_ LPCGUID InterfaceType
_In_ ULONG _In_ PHYSICAL_ADDRESS _Inout_ PULONG AddressSpace