#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_reads_bytes_(Length) 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