#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 130 of file busemul.c.
138{
139
141 {
142
151 }
152 else
153 {
154
163 }
164}
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 BusType
◆ HalGetBusData()
Definition at line 171 of file busemul.c.
176{
177
182 0,
184}
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 191 of file busemul.c.
197{
199
200
201 if (BusDataType ==
Cmos)
202 {
203
205 }
207 {
208
210 }
214 {
215
218
219
221 &BusHandler,
226 }
227
228
229 return 0;
230}
const 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 238 of file busemul.c.
244{
245
250}
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 23 of file busemul.c.
24{
25
28
29
30#if (NTDDI_VERSION >= NTDDI_VISTA)
33#else
36#endif
37
38
40}
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 258 of file busemul.c.
263{
264
269 0,
271}
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 278 of file busemul.c.
284{
286
287
288 if (BusDataType ==
Cmos)
289 {
290
292 }
294 {
295
298
299
301 &BusHandler,
306 }
307
308
309 return 0;
310}
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 317 of file busemul.c.
322{
323
325 {
326
332 }
333 else
334 {
335
338 }
339}
#define HalPciTranslateBusAddress
_Must_inspect_result_ _In_ WDFDEVICE _In_ LPCGUID InterfaceType
_In_ ULONG _In_ PHYSICAL_ADDRESS _Inout_ PULONG AddressSpace