-/*\r
-* PROJECT: ReactOS Kernel\r
-* LICENSE: GPL - See COPYING in the top level directory\r
-* FILE: ntoskrnl/fstub/halstub.c\r
-* PURPOSE: I/O Stub HAL Routines\r
-* PROGRAMMERS: Alex Ionescu (alex.ionescu@reactos.org)\r
-*/\r
-\r
-/* INCLUDES ******************************************************************/\r
-\r
-#include <ntoskrnl.h>\r
-#define NDEBUG\r
-#include <internal/debug.h>\r
-\r
-/* GLOBALS *******************************************************************/\r
-\r
-HAL_DISPATCH HalDispatchTable =\r
-{\r
- HAL_DISPATCH_VERSION,\r
- (pHalQuerySystemInformation)NULL,\r
- (pHalSetSystemInformation)NULL,\r
- (pHalQueryBusSlots)NULL,\r
- 0,\r
- (pHalExamineMBR)HalExamineMBR,\r
- (pHalIoAssignDriveLetters)IoAssignDriveLetters,\r
- (pHalIoReadPartitionTable)IoReadPartitionTable,\r
- (pHalIoSetPartitionInformation)IoSetPartitionInformation,\r
- (pHalIoWritePartitionTable)IoWritePartitionTable,\r
- (pHalHandlerForBus)NULL,\r
- (pHalReferenceBusHandler)NULL,\r
- (pHalReferenceBusHandler)NULL,\r
- (pHalInitPnpDriver)NULL,\r
- (pHalInitPowerManagement)NULL,\r
- (pHalGetDmaAdapter) NULL,\r
- (pHalGetInterruptTranslator)NULL,\r
- (pHalStartMirroring)NULL,\r
- (pHalEndMirroring)NULL,\r
- (pHalMirrorPhysicalMemory)NULL,\r
- (pHalEndOfBoot)NULL,\r
- (pHalMirrorVerify)NULL\r
-};\r
-\r
-HAL_PRIVATE_DISPATCH HalPrivateDispatchTable =\r
-{\r
- HAL_PRIVATE_DISPATCH_VERSION,\r
- (pHalHandlerForBus)NULL,\r
- (pHalHandlerForConfigSpace)NULL,\r
- (pHalLocateHiberRanges)NULL,\r
- (pHalRegisterBusHandler)NULL,\r
- (pHalSetWakeEnable)NULL,\r
- (pHalSetWakeAlarm)NULL,\r
- (pHalTranslateBusAddress)NULL,\r
- (pHalAssignSlotResources)NULL,\r
- (pHalHaltSystem)NULL,\r
- (pHalFindBusAddressTranslation)NULL,\r
- (pHalResetDisplay)NULL,\r
- (pHalAllocateMapRegisters)NULL,\r
- (pKdSetupPciDeviceForDebugging)NULL,\r
- (pKdReleasePciDeviceForDebugging)NULL,\r
- (pKdGetAcpiTablePhase0)NULL,\r
- (pKdCheckPowerButton)NULL,\r
- (pHalVectorToIDTEntry)NULL,\r
- (pKdMapPhysicalMemory64)NULL,\r
- (pKdUnmapVirtualAddress)NULL\r
-};\r
-\r
-/* FUNCTIONS *****************************************************************/\r
-\r
-\r
-/* EOF */\r
+/*
+* PROJECT: ReactOS Kernel
+* LICENSE: GPL - See COPYING in the top level directory
+* FILE: ntoskrnl/fstub/halstub.c
+* PURPOSE: I/O Stub HAL Routines
+* PROGRAMMERS: Alex Ionescu (alex.ionescu@reactos.org)
+ Pierre Schweitzer (pierre.schweitzer@reactos.org)
+*/
+
+/* INCLUDES ******************************************************************/
+
+#include <ntoskrnl.h>
+#define NDEBUG
+#include <debug.h>
+
+/* GLOBALS *******************************************************************/
+
+HAL_DISPATCH HalDispatchTable =
+{
+ HAL_DISPATCH_VERSION,
+ xHalQuerySystemInformation,
+ xHalSetSystemInformation,
+ xHalQueryBusSlots,
+ 0,
+ xHalExamineMBR,
+ xHalIoAssignDriveLetters,
+ xHalIoReadPartitionTable,
+ xHalIoSetPartitionInformation,
+ xHalIoWritePartitionTable,
+ xHalHandlerForBus,
+ xHalReferenceHandler,
+ xHalReferenceHandler,
+ xHalInitPnpDriver,
+ xHalInitPowerManagement,
+ (pHalGetDmaAdapter) NULL,
+ xHalGetInterruptTranslator,
+ xHalStartMirroring,
+ xHalEndMirroring,
+ xHalMirrorPhysicalMemory,
+ xHalEndOfBoot,
+ xHalMirrorPhysicalMemory
+};
+
+HAL_PRIVATE_DISPATCH HalPrivateDispatchTable =
+{
+ HAL_PRIVATE_DISPATCH_VERSION,
+ xHalHandlerForBus,
+ (pHalHandlerForConfigSpace)xHalHandlerForBus,
+ xHalLocateHiberRanges,
+ xHalRegisterBusHandler,
+ xHalSetWakeEnable,
+ xHalSetWakeAlarm,
+ xHalTranslateBusAddress,
+ (pHalAssignSlotResources)xHalTranslateBusAddress,
+ xHalHaltSystem,
+ (pHalFindBusAddressTranslation)NULL,
+ (pHalResetDisplay)NULL,
+ xHalAllocateMapRegisters,
+ xKdSetupPciDeviceForDebugging,
+ xKdReleasePciDeviceForDebugging,
+ xKdGetAcpiTablePhase,
+ (pKdCheckPowerButton)xHalReferenceHandler,
+ xHalVectorToIDTEntry,
+ (pKdMapPhysicalMemory64)MatchAll,
+ (pKdUnmapVirtualAddress)xKdUnmapVirtualAddress
+};
+
+/* FUNCTIONS *****************************************************************/
+
+UCHAR
+NTAPI
+xHalVectorToIDTEntry(IN ULONG Vector)
+{
+ /* Return the vector */
+ return Vector;
+}
+
+VOID
+NTAPI
+xHalHaltSystem(VOID)
+{
+ /* Halt execution */
+ while (TRUE);
+}
+
+VOID
+NTAPI
+xHalEndOfBoot(VOID)
+{
+ PAGED_CODE();
+
+ /* Nothing */
+ return;
+}
+
+VOID
+NTAPI
+xHalSetWakeEnable(IN BOOLEAN Enable)
+{
+ /* Nothing */
+ return;
+}
+
+PBUS_HANDLER
+FASTCALL
+xHalHandlerForBus(IN INTERFACE_TYPE InterfaceType,
+ IN ULONG BusNumber)
+{
+ return NULL;
+}
+
+VOID
+FASTCALL
+xHalReferenceHandler(IN PBUS_HANDLER BusHandler)
+{
+ /* Nothing */
+ return;
+}
+
+NTSTATUS
+NTAPI
+xHalInitPnpDriver(VOID)
+{
+ return STATUS_NOT_SUPPORTED;
+}
+
+NTSTATUS
+NTAPI
+xHalInitPowerManagement(IN PPM_DISPATCH_TABLE PmDriverDispatchTable,
+ OUT PPM_DISPATCH_TABLE *PmHalDispatchTable)
+{
+ return STATUS_NOT_SUPPORTED;
+}
+
+NTSTATUS
+NTAPI
+xHalStartMirroring(VOID)
+{
+ PAGED_CODE();
+
+ return STATUS_NOT_SUPPORTED;
+}
+
+NTSTATUS
+NTAPI
+xHalEndMirroring(IN ULONG PassNumber)
+{
+ return STATUS_NOT_SUPPORTED;
+}
+
+NTSTATUS
+NTAPI
+xHalMirrorPhysicalMemory(IN PHYSICAL_ADDRESS PhysicalAddress,
+ IN LARGE_INTEGER NumberOfBytes)
+{
+ return STATUS_NOT_SUPPORTED;
+}
+
+NTSTATUS
+NTAPI
+xHalQueryBusSlots(IN PBUS_HANDLER BusHandler,
+ IN ULONG BufferSize,
+ OUT PULONG SlotNumbers,
+ OUT PULONG ReturnedLength)
+{
+ PAGED_CODE();
+
+ return STATUS_NOT_SUPPORTED;
+}
+
+NTSTATUS
+NTAPI
+xHalSetSystemInformation(IN HAL_SET_INFORMATION_CLASS InformationClass,
+ IN ULONG BufferSize,
+ IN PVOID Buffer)
+{
+ PAGED_CODE();
+
+ return STATUS_INVALID_LEVEL;
+}
+
+NTSTATUS
+NTAPI
+xHalQuerySystemInformation(IN HAL_QUERY_INFORMATION_CLASS InformationClass,
+ IN ULONG BufferSize,
+ IN OUT PVOID Buffer,
+ OUT PULONG ReturnedLength)
+{
+ PAGED_CODE();
+
+ return STATUS_INVALID_LEVEL;
+}
+
+VOID
+NTAPI
+xHalLocateHiberRanges(IN PVOID MemoryMap)
+{
+ /* Nothing */
+ return;
+}
+
+NTSTATUS
+NTAPI
+xHalRegisterBusHandler(IN INTERFACE_TYPE InterfaceType,
+ IN BUS_DATA_TYPE ConfigSpace,
+ IN ULONG BusNumber,
+ IN INTERFACE_TYPE ParentInterfaceType,
+ IN ULONG ParentBusNumber,
+ IN ULONG ContextSize,
+ IN PINSTALL_BUS_HANDLER InstallCallback,
+ OUT PBUS_HANDLER *BusHandler)
+{
+ PAGED_CODE();
+
+ return STATUS_NOT_SUPPORTED;
+}
+
+VOID
+NTAPI
+xHalSetWakeAlarm(IN ULONGLONG AlartTime,
+ IN PTIME_FIELDS TimeFields)
+{
+ /* Nothing */
+ return;
+}
+
+BOOLEAN
+NTAPI
+xHalTranslateBusAddress(IN INTERFACE_TYPE InterfaceType,
+ IN ULONG BusNumber,
+ IN PHYSICAL_ADDRESS BusAddress,
+ IN OUT PULONG AddressSpace,
+ OUT PPHYSICAL_ADDRESS TranslatedAddress)
+{
+ KeBugCheckEx(HAL_INITIALIZATION_FAILED, 0, 0, 0, 0);
+
+ return FALSE;
+}
+
+NTSTATUS
+NTAPI
+xHalAllocateMapRegisters(IN PADAPTER_OBJECT AdapterObject,
+ IN ULONG Unknown,
+ IN ULONG Unknown2,
+ PMAP_REGISTER_ENTRY Registers)
+{
+ PAGED_CODE();
+
+ return STATUS_NOT_IMPLEMENTED;
+}
+
+NTSTATUS
+NTAPI
+xKdSetupPciDeviceForDebugging(IN PVOID LoaderBlock OPTIONAL,
+ IN OUT PDEBUG_DEVICE_DESCRIPTOR PciDevice)
+{
+ return STATUS_NOT_IMPLEMENTED;
+}
+
+NTSTATUS
+NTAPI
+xKdReleasePciDeviceForDebugging(IN OUT PDEBUG_DEVICE_DESCRIPTOR PciDevice)
+{
+ return STATUS_NOT_IMPLEMENTED;
+}
+
+PVOID
+NTAPI
+xKdGetAcpiTablePhase(IN struct _LOADER_PARAMETER_BLOCK *LoaderBlock,
+ IN ULONG Signature)
+{
+ return NULL;
+}
+
+PVOID
+NTAPI
+MatchAll(IN PHYSICAL_ADDRESS PhysicalAddress,
+ IN ULONG NumberPages,
+ IN BOOLEAN FlushCurrentTLB)
+{
+ return NULL;
+}
+
+VOID
+NTAPI
+xKdUnmapVirtualAddress(IN PVOID VirtualAddress,
+ IN ULONG NumberPages,
+ IN BOOLEAN FlushCurrentTLB)
+{
+ /* Nothing */
+ return;
+}