Author: tkreuzer
Date: Thu Sep 4 14:11:19 2008
New Revision: 35947
URL:
http://svn.reactos.org/svn/reactos?rev=35947&view=rev
Log:
Don't use hal_generic_pc.rbuild. Remove obsolete hal.c. Add apic.c from x86 to build.
Add some stubs.
Added:
branches/ros-amd64-bringup/reactos/hal/halamd64/generic/mps.S (with props)
Removed:
branches/ros-amd64-bringup/reactos/hal/halamd64/generic/hal.c
Modified:
branches/ros-amd64-bringup/reactos/hal/hal.rbuild
branches/ros-amd64-bringup/reactos/hal/hal/hal_amd64.def
branches/ros-amd64-bringup/reactos/hal/halamd64/generic/generic.rbuild
branches/ros-amd64-bringup/reactos/hal/halamd64/generic/irq.S
branches/ros-amd64-bringup/reactos/hal/halamd64/up/halup.rbuild
branches/ros-amd64-bringup/reactos/hal/halx86/hal_generic_amd64.rbuild
Modified: branches/ros-amd64-bringup/reactos/hal/hal.rbuild
URL:
http://svn.reactos.org/svn/reactos/branches/ros-amd64-bringup/reactos/hal/h…
==============================================================================
--- branches/ros-amd64-bringup/reactos/hal/hal.rbuild [iso-8859-1] (original)
+++ branches/ros-amd64-bringup/reactos/hal/hal.rbuild [iso-8859-1] Thu Sep 4 14:11:19
2008
@@ -27,7 +27,6 @@
<if property="ARCH" value="amd64">
<directory name="halx86">
<xi:include href="halx86/hal_generic_amd64.rbuild" />
- <xi:include href="halx86/hal_generic_pc.rbuild" />
</directory>
<directory name="halamd64">
<xi:include href="halamd64/directory.rbuild" />
Modified: branches/ros-amd64-bringup/reactos/hal/hal/hal_amd64.def
URL:
http://svn.reactos.org/svn/reactos/branches/ros-amd64-bringup/reactos/hal/h…
==============================================================================
--- branches/ros-amd64-bringup/reactos/hal/hal/hal_amd64.def [iso-8859-1] (original)
+++ branches/ros-amd64-bringup/reactos/hal/hal/hal_amd64.def [iso-8859-1] Thu Sep 4
14:11:19 2008
@@ -14,9 +14,9 @@
HalCalibratePerformanceCounter
HalClearSoftwareInterrupt
;HalConvertDeviceIdtToIrql
-;HalDisableInterrupt
+HalDisableInterrupt
HalDisplayString
-;HalEnableInterrupt
+HalEnableInterrupt
;HalEnumerateEnvironmentVariablesEx
;HalEnumerateProcessors
HalFlushCommonBuffer
@@ -52,7 +52,7 @@
HalRequestSoftwareInterrupt
HalReturnToFirmware
;HalSendNMI
-;HalSendSoftwareInterrupt
+HalSendSoftwareInterrupt
HalSetBusData
HalSetBusDataByOffset
HalSetDisplayParameters
Modified: branches/ros-amd64-bringup/reactos/hal/halamd64/generic/generic.rbuild
URL:
http://svn.reactos.org/svn/reactos/branches/ros-amd64-bringup/reactos/hal/h…
==============================================================================
--- branches/ros-amd64-bringup/reactos/hal/halamd64/generic/generic.rbuild [iso-8859-1]
(original)
+++ branches/ros-amd64-bringup/reactos/hal/halamd64/generic/generic.rbuild [iso-8859-1]
Thu Sep 4 14:11:19 2008
@@ -9,6 +9,7 @@
<file>halinit.c</file>
<file>irq.S</file>
<file>misc.c</file>
+ <file>mps.S</file>
<file>systimer.S</file>
<pch>../include/hal.h</pch>
</module>
Removed: branches/ros-amd64-bringup/reactos/hal/halamd64/generic/hal.c
URL:
http://svn.reactos.org/svn/reactos/branches/ros-amd64-bringup/reactos/hal/h…
==============================================================================
--- branches/ros-amd64-bringup/reactos/hal/halamd64/generic/hal.c [iso-8859-1] (original)
+++ branches/ros-amd64-bringup/reactos/hal/halamd64/generic/hal.c (removed)
@@ -1,781 +1,0 @@
-/*
- * PROJECT: ReactOS HAL
- * LICENSE: BSD - See COPYING.ARM in the top level directory
- * FILE: hal/halarm/generic/hal.c
- * PURPOSE: Hardware Abstraction Layer
- * PROGRAMMERS: ReactOS Portable Systems Group
- */
-
-/* INCLUDES *******************************************************************/
-
-#include <hal.h>
-#define NDEBUG
-#include <debug.h>
-#include <ndk/inbvfuncs.h>
-
-#define READ_REGISTER_ULONG(r) (*(volatile ULONG * const)(r))
-#define WRITE_REGISTER_ULONG(r, v) (*(volatile ULONG *)(r) = (v))
-
-/* DATA **********************************************************************/
-
-ULONG HalpCurrentTimeIncrement, HalpNextTimeIncrement, HalpNextIntervalCount;
-ULONG _KdComPortInUse = 0;
-
-/* FUNCTIONS *****************************************************************/
-
-NTSTATUS
-NTAPI
-DriverEntry(
- PDRIVER_OBJECT DriverObject,
- PUNICODE_STRING RegistryPath)
-{
- UNIMPLEMENTED;
-
- return STATUS_SUCCESS;
-}
-
-/*
-* @unimplemented
-*/
-VOID
-NTAPI
-HalStopProfileInterrupt(IN KPROFILE_SOURCE ProfileSource)
-{
- KEBUGCHECK(0);
- return;
-}
-
-/*
-* @unimplemented
-*/
-VOID
-NTAPI
-HalStartProfileInterrupt(IN KPROFILE_SOURCE ProfileSource)
-{
- KEBUGCHECK(0);
- return;
-}
-
-/*
-* @unimplemented
-*/
-ULONG_PTR
-NTAPI
-HalSetProfileInterval(IN ULONG_PTR Interval)
-{
- KEBUGCHECK(0);
- return Interval;
-}
-
-NTSTATUS
-NTAPI
-HalAdjustResourceList(
- PCM_RESOURCE_LIST Resources)
-{
- UNIMPLEMENTED;
-
- return STATUS_SUCCESS;
-}
-
-
-/*
- * @implemented
- */
-BOOLEAN
-NTAPI
-HalAllProcessorsStarted(VOID)
-{
- /* Do nothing */
- return TRUE;
-}
-
-
-NTSTATUS
-NTAPI
-HalAllocateAdapterChannel(
- PADAPTER_OBJECT AdapterObject,
- PWAIT_CONTEXT_BLOCK WaitContextBlock,
- ULONG NumberOfMapRegisters,
- PDRIVER_CONTROL ExecutionRoutine)
-{
- UNIMPLEMENTED;
-
- return STATUS_SUCCESS;
-}
-
-
-PVOID
-NTAPI
-HalAllocateCommonBuffer(
- PADAPTER_OBJECT AdapterObject,
- ULONG Length,
- PPHYSICAL_ADDRESS LogicalAddress,
- BOOLEAN CacheEnabled)
-{
- UNIMPLEMENTED;
-
- return NULL;
-}
-
-
-PVOID
-NTAPI
-HalAllocateCrashDumpRegisters(
- PADAPTER_OBJECT AdapterObject,
- PULONG NumberOfMapRegisters)
-{
- UNIMPLEMENTED;
- return NULL;
-}
-
-
-NTSTATUS
-NTAPI
-HalAssignSlotResources(
- PUNICODE_STRING RegistryPath,
- PUNICODE_STRING DriverClassName,
- PDRIVER_OBJECT DriverObject,
- PDEVICE_OBJECT DeviceObject,
- INTERFACE_TYPE BusType,
- ULONG BusNumber,
- ULONG SlotNumber,
- PCM_RESOURCE_LIST *AllocatedResources)
-{
- UNIMPLEMENTED;
-
- return TRUE;
-}
-
-
-BOOLEAN
-NTAPI
-HalBeginSystemInterrupt (KIRQL Irql,
- ULONG Vector,
- PKIRQL OldIrql)
-{
- UNIMPLEMENTED;
-
- return TRUE;
-}
-
-
-VOID
-NTAPI
-HalCalibratePerformanceCounter(
- volatile LONG *Count,
- ULONGLONG NewCount)
-{
- UNIMPLEMENTED;
-}
-
-
-BOOLEAN
-NTAPI
-HalDisableSystemInterrupt(
- ULONG Vector,
- KIRQL Irql)
-{
- UNIMPLEMENTED;
-
- return TRUE;
-}
-
-VOID
-NTAPI
-HalAcquireDisplayOwnership(IN PHAL_RESET_DISPLAY_PARAMETERS ResetDisplayParameters)
-{
- //
- // Stub since Windows XP implemented Inbv
- //
- return;
-}
-
-VOID
-NTAPI
-HalDisplayString(IN PCH String)
-{
- //
- // Call the Inbv driver
- //
- InbvDisplayString(String);
-}
-
-VOID
-NTAPI
-HalQueryDisplayParameters(OUT PULONG DispSizeX,
- OUT PULONG DispSizeY,
- OUT PULONG CursorPosX,
- OUT PULONG CursorPosY)
-{
- //
- // Stub since Windows XP implemented Inbv
- //
- return;
-}
-
-VOID
-NTAPI
-HalSetDisplayParameters(IN ULONG CursorPosX,
- IN ULONG CursorPosY)
-{
- //
- // Stub since Windows XP implemented Inbv
- //
- return;
-}
-
-BOOLEAN
-NTAPI
-HalEnableSystemInterrupt(
- ULONG Vector,
- KIRQL Irql,
- KINTERRUPT_MODE InterruptMode)
-{
- UNIMPLEMENTED;
-
- return TRUE;
-}
-
-
-VOID
-NTAPI
-HalEndSystemInterrupt(
- KIRQL Irql,
- ULONG Unknown2)
-{
- UNIMPLEMENTED;
-}
-
-
-BOOLEAN
-NTAPI
-HalFlushCommonBuffer(
- ULONG Unknown1,
- ULONG Unknown2,
- ULONG Unknown3,
- ULONG Unknown4,
- ULONG Unknown5)
-{
- UNIMPLEMENTED;
-
- return TRUE;
-}
-
-
-VOID
-NTAPI
-HalFreeCommonBuffer(
- PADAPTER_OBJECT AdapterObject,
- ULONG Length,
- PHYSICAL_ADDRESS LogicalAddress,
- PVOID VirtualAddress,
- BOOLEAN CacheEnabled)
-{
- UNIMPLEMENTED;
-}
-
-
-PADAPTER_OBJECT
-NTAPI
-HalGetAdapter(
- PDEVICE_DESCRIPTION DeviceDescription,
- PULONG NumberOfMapRegisters)
-{
- UNIMPLEMENTED;
-
- return (PADAPTER_OBJECT)NULL;
-}
-
-
-ULONG
-NTAPI
-HalGetBusData(
- BUS_DATA_TYPE BusDataType,
- ULONG BusNumber,
- ULONG SlotNumber,
- PVOID Buffer,
- ULONG Length)
-{
- UNIMPLEMENTED;
-
- return 0;
-}
-
-
-ULONG
-NTAPI
-HalGetBusDataByOffset(
- BUS_DATA_TYPE BusDataType,
- ULONG BusNumber,
- ULONG SlotNumber,
- PVOID Buffer,
- ULONG Offset,
- ULONG Length)
-{
- UNIMPLEMENTED;
-
- return 0;
-}
-
-
-ARC_STATUS
-NTAPI
-HalGetEnvironmentVariable(
- PCH Name,
- USHORT ValueLength,
- PCH Value)
-{
- UNIMPLEMENTED;
-
- return ENOENT;
-}
-
-
-ULONG
-NTAPI
-HalGetInterruptVector(
- INTERFACE_TYPE InterfaceType,
- ULONG BusNumber,
- ULONG BusInterruptLevel,
- ULONG BusInterruptVector,
- PKIRQL Irql,
- PKAFFINITY Affinity)
-{
- UNIMPLEMENTED;
-
- return 0;
-}
-
-
-VOID
-NTAPI
-HalHandleNMI(
- PVOID NmiData)
-{
- UNIMPLEMENTED;
-}
-
-VOID
-NTAPI
-HalpGetParameters(IN PLOADER_PARAMETER_BLOCK LoaderBlock)
-{
- PCHAR CommandLine;
-
- /* Make sure we have a loader block and command line */
- if ((LoaderBlock) && (LoaderBlock->LoadOptions))
- {
- /* Read the command line */
- CommandLine = LoaderBlock->LoadOptions;
-
- /* Check for initial breakpoint */
- if (strstr(CommandLine, "BREAK")) DbgBreakPoint();
- }
-}
-
-ULONG
-HalGetInterruptSource(VOID)
-{
- KEBUGCHECK(0);
- return 0;
-}
-
-VOID
-HalpClockInterrupt(VOID)
-{
- KEBUGCHECK(0);
- return;
-}
-
-VOID
-HalpStallInterrupt(VOID)
-{
- KEBUGCHECK(0);
- return;
-}
-
-VOID
-HalpInitializeInterrupts(VOID)
-{
- KEBUGCHECK(0);
- return;
-}
-
-/*
- * @implemented
- */
-BOOLEAN
-NTAPI
-HalInitSystem(IN ULONG BootPhase,
- IN PLOADER_PARAMETER_BLOCK LoaderBlock)
-{
- KEBUGCHECK(0);
- return;
-}
-
-
-VOID
-NTAPI
-HalInitializeProcessor(IN ULONG ProcessorNumber,
- IN PLOADER_PARAMETER_BLOCK LoaderBlock)
-{
- //
- // Nothing to do
- //
- return;
-}
-
-
-BOOLEAN
-NTAPI
-HalMakeBeep(
- ULONG Frequency)
-{
- UNIMPLEMENTED;
-
- return TRUE;
-}
-
-
-VOID
-NTAPI
-HalProcessorIdle(VOID)
-{
- UNIMPLEMENTED;
-}
-
-
-#define RTC_DATA (PVOID)0xE00E8000
-
-BOOLEAN
-NTAPI
-HalQueryRealTimeClock(IN PTIME_FIELDS Time)
-{
- KEBUGCHECK(0);
- return TRUE;
-}
-
-ULONG
-NTAPI
-HalReadDmaCounter(
- PADAPTER_OBJECT AdapterObject)
-{
- UNIMPLEMENTED;
-
- return 0;
-}
-
-
-VOID
-NTAPI
-HalReportResourceUsage(VOID)
-{
- UNIMPLEMENTED;
-}
-
-
-VOID
-NTAPI
-HalRequestIpi(
- KAFFINITY TargetSet)
-{
- UNIMPLEMENTED;
-}
-
-
-VOID
-FASTCALL
-HalRequestSoftwareInterrupt(IN KIRQL Request)
-{
- KEBUGCHECK(0);
- return;
-}
-
-VOID
-FASTCALL
-HalClearSoftwareInterrupt(IN KIRQL Request)
-{
- KEBUGCHECK(0);
- return;
-}
-
-VOID
-NTAPI
-HalReturnToFirmware(
- FIRMWARE_REENTRY Action)
-{
- UNIMPLEMENTED;
-}
-
-
-ULONG
-NTAPI
-HalSetBusData(
- BUS_DATA_TYPE BusDataType,
- ULONG BusNumber,
- ULONG SlotNumber,
- PVOID Buffer,
- ULONG Length)
-{
- UNIMPLEMENTED;
-
- return 0;
-}
-
-
-ULONG
-NTAPI
-HalSetBusDataByOffset(
- BUS_DATA_TYPE BusDataType,
- ULONG BusNumber,
- ULONG SlotNumber,
- PVOID Buffer,
- ULONG Offset,
- ULONG Length)
-{
- UNIMPLEMENTED;
-
- return 0;
-}
-
-
-ARC_STATUS
-NTAPI
-HalSetEnvironmentVariable(
- PCH Name,
- PCH Value)
-{
- UNIMPLEMENTED;
-
- return ESUCCESS;
-}
-
-
-BOOLEAN
-NTAPI
-HalSetRealTimeClock(
- PTIME_FIELDS Time)
-{
- UNIMPLEMENTED;
-
- return TRUE;
-}
-
-
-ULONG
-NTAPI
-HalSetTimeIncrement(
- ULONG Increment)
-{
- UNIMPLEMENTED;
-
- return Increment;
-}
-
-
-BOOLEAN
-NTAPI
-HalStartNextProcessor(IN PLOADER_PARAMETER_BLOCK LoaderBlock,
- IN PKPROCESSOR_STATE ProcessorState)
-{
- UNIMPLEMENTED;
-
- return TRUE;
-}
-
-
-ULONG
-FASTCALL
-HalSystemVectorDispatchEntry(
- ULONG Unknown1,
- ULONG Unknown2,
- ULONG Unknown3)
-{
- UNIMPLEMENTED;
-
- return 0;
-}
-
-
-BOOLEAN
-NTAPI
-HalTranslateBusAddress(
- INTERFACE_TYPE InterfaceType,
- ULONG BusNumber,
- PHYSICAL_ADDRESS BusAddress,
- PULONG AddressSpace,
- PPHYSICAL_ADDRESS TranslatedAddress)
-{
- UNIMPLEMENTED;
-
- return TRUE;
-}
-
-
-VOID
-NTAPI
-HalpAssignDriveLetters(IN struct _LOADER_PARAMETER_BLOCK *LoaderBlock,
- IN PSTRING NtDeviceName,
- OUT PUCHAR NtSystemPath,
- OUT PSTRING NtSystemPathString)
-{
- /* Call the kernel */
- IoAssignDriveLetters(LoaderBlock,
- NtDeviceName,
- NtSystemPath,
- NtSystemPathString);
-}
-
-NTSTATUS
-NTAPI
-HalpReadPartitionTable(IN PDEVICE_OBJECT DeviceObject,
- IN ULONG SectorSize,
- IN BOOLEAN ReturnRecognizedPartitions,
- IN OUT PDRIVE_LAYOUT_INFORMATION *PartitionBuffer)
-{
- /* Call the kernel */
- return IoReadPartitionTable(DeviceObject,
- SectorSize,
- ReturnRecognizedPartitions,
- PartitionBuffer);
-}
-
-NTSTATUS
-NTAPI
-HalpWritePartitionTable(IN PDEVICE_OBJECT DeviceObject,
- IN ULONG SectorSize,
- IN ULONG SectorsPerTrack,
- IN ULONG NumberOfHeads,
- IN PDRIVE_LAYOUT_INFORMATION PartitionBuffer)
-{
- /* Call the kernel */
- return IoWritePartitionTable(DeviceObject,
- SectorSize,
- SectorsPerTrack,
- NumberOfHeads,
- PartitionBuffer);
-}
-
-NTSTATUS
-NTAPI
-HalpSetPartitionInformation(IN PDEVICE_OBJECT DeviceObject,
- IN ULONG SectorSize,
- IN ULONG PartitionNumber,
- IN ULONG PartitionType)
-{
- /* Call the kernel */
- return IoSetPartitionInformation(DeviceObject,
- SectorSize,
- PartitionNumber,
- PartitionType);
-}
-
-
-BOOLEAN
-NTAPI
-IoFlushAdapterBuffers(
- PADAPTER_OBJECT AdapterObject,
- PMDL Mdl,
- PVOID MapRegisterBase,
- PVOID CurrentVa,
- ULONG Length,
- BOOLEAN WriteToDevice)
-{
- UNIMPLEMENTED;
-
- return TRUE;
-}
-
-
-VOID
-NTAPI
-IoFreeAdapterChannel(
- PADAPTER_OBJECT AdapterObject)
-{
- UNIMPLEMENTED;
-}
-
-
-VOID
-NTAPI
-IoFreeMapRegisters(
- PADAPTER_OBJECT AdapterObject,
- PVOID MapRegisterBase,
- ULONG NumberOfMapRegisters)
-{
- UNIMPLEMENTED;
-}
-
-
-PHYSICAL_ADDRESS
-NTAPI
-IoMapTransfer(
- PADAPTER_OBJECT AdapterObject,
- PMDL Mdl,
- PVOID MapRegisterBase,
- PVOID CurrentVa,
- PULONG Length,
- BOOLEAN WriteToDevice)
-{
- PHYSICAL_ADDRESS Address;
-
- UNIMPLEMENTED;
-
- Address.QuadPart = 0;
-
- return Address;
-}
-
-VOID
-NTAPI
-KeFlushWriteBuffer(VOID)
-{
- UNIMPLEMENTED;
-}
-
-LARGE_INTEGER
-NTAPI
-KeQueryPerformanceCounter(
- PLARGE_INTEGER PerformanceFreq)
-{
- LARGE_INTEGER Value;
-
- UNIMPLEMENTED;
-
- Value.QuadPart = 0;
-
- return Value;
-}
-
-VOID
-NTAPI
-KeStallExecutionProcessor(IN ULONG Microseconds)
-{
- UNIMPLEMENTED;
- return;
-}
-
-BOOLEAN HalpProcessorIdentified;
-BOOLEAN HalpTestCleanSupported;
-
-VOID
-HalpIdentifyProcessor(VOID)
-{
- UNIMPLEMENTED;
- return;
-}
-
-VOID
-HalSweepDcache(VOID)
-{
- UNIMPLEMENTED;
- return;
-}
-
-VOID
-HalSweepIcache(VOID)
-{
- UNIMPLEMENTED;
- return;
-}
-
-/* EOF */
Modified: branches/ros-amd64-bringup/reactos/hal/halamd64/generic/irq.S
URL:
http://svn.reactos.org/svn/reactos/branches/ros-amd64-bringup/reactos/hal/h…
==============================================================================
--- branches/ros-amd64-bringup/reactos/hal/halamd64/generic/irq.S [iso-8859-1] (original)
+++ branches/ros-amd64-bringup/reactos/hal/halamd64/generic/irq.S [iso-8859-1] Thu Sep 4
14:11:19 2008
@@ -34,13 +34,44 @@
.globl _HalpInitPICs
.func _HalpInitPICs
_HalpInitPICs:
-UNIMPLEMENTED "HalpInitPICs"
+ UNIMPLEMENTED "HalpInitPICs"
+.endfunc
+.global _HalEnableInterrupt
+.func _HalEnableInterrupt
+_HalEnableInterrupt:
+ UNIMPLEMENTED "HalEnableInterrupt"
.endfunc
+
+.global _HalDisableInterrupt
+.func _HalDisableInterrupt
+_HalDisableInterrupt:
+ UNIMPLEMENTED "HalDisableInterrupt"
+.endfunc
+
+.global _HalRequestSoftwareInterrupt
+.func _HalRequestSoftwareInterrupt
+_HalRequestSoftwareInterrupt:
+ UNIMPLEMENTED "HalRequestSoftwareInterrupt"
+.endfunc
+
+.global _HalSendSoftwareInterrupt
+.func _HalSendSoftwareInterrupt
+_HalSendSoftwareInterrupt:
+ UNIMPLEMENTED "HalSendSoftwareInterrupt"
+.endfunc
+
+.global _HalEndSystemInterrupt
+.func _HalEndSystemInterrupt
+_HalEndSystemInterrupt:
+ UNIMPLEMENTED "HalEndSystemInterrupt"
+.endfunc
+
.globl _HalClearSoftwareInterrupt
.func _HalClearSoftwareInterrupt
_HalClearSoftwareInterrupt:
+ UNIMPLEMENTED "HalClearSoftwareInterrupt"
/* Get IRR mask */
mov eax, 1
@@ -52,42 +83,9 @@
ret
.endfunc
-.globl _HalRequestSoftwareInterrupt
-.func _HalRequestSoftwareInterrupt
-_HalRequestSoftwareInterrupt:
-UNIMPLEMENTED "HalRequestSoftwareInterrupt"
-.endfunc
-
.globl _HalBeginSystemInterrupt
.func _HalBeginSystemInterrupt
_HalBeginSystemInterrupt:
-UNIMPLEMENTED "HalBeginSystemInterrupt"
+ UNIMPLEMENTED "HalBeginSystemInterrupt"
.endfunc
-.globl _HalpApcInterrupt
-.func _HalpApcInterrupt
-//TRAP_FIXUPS hapc_a, hapc_t, DoFixupV86, DoFixupAbios
-_HalpApcInterrupt:
-UNIMPLEMENTED "HalpApcInterrupt"
-.endfunc
-
-.globl _HalpApcInterrupt2ndEntry
-.func _HalpApcInterrupt2ndEntry
-_HalpApcInterrupt2ndEntry:
-UNIMPLEMENTED "HalpApcInterrupt2ndEntry"
-.endfunc
-
-.globl _HalpDispatchInterrupt
-.func _HalpDispatchInterrupt
-//TRAP_FIXUPS hdpc_a, hdpc_t, DoFixupV86, DoFixupAbios
-_HalpDispatchInterrupt:
-UNIMPLEMENTED "HalpDispatchInterrupt"
-.endfunc
-
-
-.globl _HalpDispatchInterrupt2ndEntry
-.func _HalpDispatchInterrupt2ndEntry
-_HalpDispatchInterrupt2ndEntry:
-UNIMPLEMENTED "HalpDispatchInterrupt2ndEntry"
-.endfunc
-
Added: branches/ros-amd64-bringup/reactos/hal/halamd64/generic/mps.S
URL:
http://svn.reactos.org/svn/reactos/branches/ros-amd64-bringup/reactos/hal/h…
==============================================================================
--- branches/ros-amd64-bringup/reactos/hal/halamd64/generic/mps.S (added)
+++ branches/ros-amd64-bringup/reactos/hal/halamd64/generic/mps.S [iso-8859-1] Thu Sep 4
14:11:19 2008
@@ -1,0 +1,95 @@
+/*
+ * COPYRIGHT: See COPYING in the top level directory
+ * PROJECT: ReactOS kernel
+ * FILE: ntoskrnl/hal/amd64/generic/mps.S
+ * PURPOSE: Intel MultiProcessor specification support
+ * PROGRAMMER: Casper S. Hornstrup (chorns(a)users.sourceforge.net)
+ */
+
+/* INCLUDES ******************************************************************/
+
+#include <ndk/asm.h>
+
+/* FUNCTIONS *****************************************************************/
+
+#define BEFORE \
+ cld; \
+ pushq %rax; \
+ pushq %rbx; \
+ pushq %rcx; \
+ pushq %rdx; \
+ pushq %rsi; \
+ pushq %rdi; \
+ pushq %fs; \
+ pushq %gs; \
+
+#define AFTER \
+ popq %gs; \
+ popq %fs; \
+ popq %rdi; \
+ popq %rsi; \
+ popq %rdx; \
+ popq %rcx; \
+ popq %rbx; \
+ popq %rax; \
+
+#ifdef CONFIG_SMP
+.global _MpsIpiInterrupt
+_MpsIpiInterrupt:
+ /* Save registers */
+ BEFORE
+
+ /* Call the C handler */
+ call _MpsIpiHandler
+
+ /* Return to the caller */
+ AFTER
+ iret
+#endif
+
+.globl _MpsErrorInterrupt
+_MpsErrorInterrupt:
+ /* Save registers */
+ BEFORE
+
+ /* Call the C handler */
+ call _MpsErrorHandler
+
+ /* Return to the caller */
+ AFTER
+ iret
+
+
+.globl _MpsSpuriousInterrupt
+_MpsSpuriousInterrupt:
+ /* Save registers */
+ BEFORE
+
+ /* Call the C handler */
+ call _MpsSpuriousHandler
+
+ /* Return to the caller */
+ AFTER
+ iret
+
+.global _MpsTimerInterrupt
+_MpsTimerInterrupt:
+ /* Save registers */
+ BEFORE
+
+ movl $0xef,%ebx
+ movl $0xceafbeef,%eax
+ pushq %rax
+ pushq %rsp
+ pushq %rbx
+ call _MpsTimerHandler
+ popq %rax
+ popq %rax
+ popq %rax
+
+ /* Return to the caller */
+ AFTER
+ iret
+
+
+/* EOF */
Propchange: branches/ros-amd64-bringup/reactos/hal/halamd64/generic/mps.S
------------------------------------------------------------------------------
svn:eol-style = native
Modified: branches/ros-amd64-bringup/reactos/hal/halamd64/up/halup.rbuild
URL:
http://svn.reactos.org/svn/reactos/branches/ros-amd64-bringup/reactos/hal/h…
==============================================================================
--- branches/ros-amd64-bringup/reactos/hal/halamd64/up/halup.rbuild [iso-8859-1]
(original)
+++ branches/ros-amd64-bringup/reactos/hal/halamd64/up/halup.rbuild [iso-8859-1] Thu Sep
4 14:11:19 2008
@@ -8,7 +8,6 @@
<define name="_DISABLE_TIDENTS" />
<define name="_NTHAL_" />
<library>hal_generic_amd64</library>
- <library>hal_generic_pc</library>
<library>hal_generic</library>
<library>ntoskrnl</library>
<file>halinit_up.c</file>
Modified: branches/ros-amd64-bringup/reactos/hal/halx86/hal_generic_amd64.rbuild
URL:
http://svn.reactos.org/svn/reactos/branches/ros-amd64-bringup/reactos/hal/h…
==============================================================================
--- branches/ros-amd64-bringup/reactos/hal/halx86/hal_generic_amd64.rbuild [iso-8859-1]
(original)
+++ branches/ros-amd64-bringup/reactos/hal/halx86/hal_generic_amd64.rbuild [iso-8859-1]
Thu Sep 4 14:11:19 2008
@@ -13,13 +13,14 @@
<file>dma.c</file>
<file>drive.c</file>
<file>display.c</file>
+ <file>pci.c</file>
<file>profil.c</file>
<file>reboot.c</file>
<file>sysinfo.c</file>
<file>timer.c</file>
</directory>
<directory name="mp">
- <!-- file>apic.c</file -->
+ <file>apic.c</file>
</directory>
<directory name="include">
<pch>hal.h</pch>