Author: tkreuzer
Date: Thu Dec 31 17:51:05 2009
New Revision: 44831
URL:
http://svn.reactos.org/svn/reactos?rev=44831&view=rev
Log:
[HAL]
- begin integrating halamd64 into halx86
- Move some amd64 specific stuff into halx86
- use hal_generic for amd64, too
Added:
branches/ros-amd64-bringup/reactos/hal/halx86/generic/amd64/ (with props)
branches/ros-amd64-bringup/reactos/hal/halx86/generic/amd64/irq.S
- copied unchanged from r44816,
branches/ros-amd64-bringup/reactos/hal/halamd64/generic/irq.S
branches/ros-amd64-bringup/reactos/hal/halx86/generic/amd64/systimer.S
- copied unchanged from r44816,
branches/ros-amd64-bringup/reactos/hal/halamd64/generic/systimer.S
branches/ros-amd64-bringup/reactos/hal/halx86/generic/x86bios.c
- copied unchanged from r44816,
branches/ros-amd64-bringup/reactos/hal/halamd64/generic/x86bios.c
Removed:
branches/ros-amd64-bringup/reactos/hal/halamd64/generic/irq.S
branches/ros-amd64-bringup/reactos/hal/halamd64/generic/systimer.S
branches/ros-amd64-bringup/reactos/hal/halamd64/generic/x86bios.c
branches/ros-amd64-bringup/reactos/hal/halx86/hal_generic_amd64.rbuild
Modified:
branches/ros-amd64-bringup/reactos/hal/hal.rbuild
branches/ros-amd64-bringup/reactos/hal/halamd64/generic/generic.rbuild
branches/ros-amd64-bringup/reactos/hal/halx86/hal_generic.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 Dec 31 17:51:05
2009
@@ -25,7 +25,7 @@
</if>
<if property="ARCH" value="amd64">
<directory name="halx86">
- <xi:include href="halx86/hal_generic_amd64.rbuild" />
+ <xi:include href="halx86/hal_generic.rbuild" />
</directory>
<directory name="halamd64">
<xi:include href="halamd64/directory.rbuild" />
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 Dec 31 17:51:05 2009
@@ -1,20 +1,16 @@
<?xml version="1.0"?>
<!DOCTYPE module SYSTEM "../../../tools/rbuild/project.dtd">
<group>
- <module name="hal_generic" type="objectlibrary">
- <include base="hal_generic">../include</include>
+ <module name="hal_generic_amd64" type="objectlibrary">
+ <include base="hal_generic_amd64">../include</include>
<include base="ntoskrnl">include</include>
<define name="_DISABLE_TIDENTS" />
<define name="_NTHAL_" />
- <define name="_X86BIOS_" />
<file>halinit.c</file>
- <file>irq.S</file>
<file>misc.c</file>
<file>mps.S</file>
- <file>systimer.S</file>
<file>usage.c</file>
<file>pic.c</file>
- <file>x86bios.c</file>
<pch>../include/hal.h</pch>
</module>
</group>
Removed: 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 (removed)
@@ -1,85 +1,0 @@
-/*
- * FILE: hal/halx86/generic/irq.S
- * COPYRIGHT: See COPYING in the top level directory
- * PURPOSE: Software, System and Hardware IRQ Management
- * PROGRAMMER: Alex Ionescu (alex(a)relsoft.net)
- */
-
-/* INCLUDES ******************************************************************/
-
-#include <asm.h>
-#include <internal/i386/asmmacro.S>
-.intel_syntax noprefix
-
-.macro UNIMPLEMENTED func
- jmp 2f
-1:
- .ascii "Sorry, asm function "
- .ascii func
- .ascii " is unimplemented!\n\0"
-2:
- movabs rcx, offset 1b
- call _DbgPrint
- ret
-.endm
-
-
-
-/* GLOBALS *******************************************************************/
-
-
-
-/* FUNCTIONS *****************************************************************/
-
-.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
- shl eax, cl
- not eax
-
- /* Set IRR */
-// and gs:[KPCR_IRR], eax
- ret
-.endfunc
-
-.globl _HalBeginSystemInterrupt
-.func _HalBeginSystemInterrupt
-_HalBeginSystemInterrupt:
- UNIMPLEMENTED "HalBeginSystemInterrupt"
-.endfunc
-
Removed: branches/ros-amd64-bringup/reactos/hal/halamd64/generic/systimer.S
URL:
http://svn.reactos.org/svn/reactos/branches/ros-amd64-bringup/reactos/hal/h…
==============================================================================
--- branches/ros-amd64-bringup/reactos/hal/halamd64/generic/systimer.S [iso-8859-1]
(original)
+++ branches/ros-amd64-bringup/reactos/hal/halamd64/generic/systimer.S (removed)
@@ -1,118 +1,0 @@
-/*
- * FILE: hal/halx86/generic/timer.S
- * COPYRIGHT: See COPYING in the top level directory
- * PURPOSE: System Timer Interrupt and Management
- * PROGRAMMER: Alex Ionescu (alex(a)relsoft.net)
- */
-
-/* INCLUDES ******************************************************************/
-
-#include <asm.h>
-#include <ndk/amd64/asmmacro.S>
-
-/* GLOBALS *******************************************************************/
-
-.data
-
-_UnhandledMsg:
- .asciz "\n\x7\x7!!! Unhandled or Unexpected Code at line: %lx!!!\n"
-
-.global _MsgUnimplemented
-_MsgUnimplemented:
-.asciz "WARNING: %s at %s:%d is UNIMPLEMENTED!\n"
-
-
-/* FUNCTIONS *****************************************************************/
-
-.text
-.code64
-
-.global _HalpReleaseCmosSpinLock
-.func HalpReleaseCmosSpinLock
-_HalpReleaseCmosSpinLock:
-
-.endfunc
-
-.global _HalpAcquireSystemHardwareSpinLock
-.func HalpAcquireSystemHardwareSpinLock
-_HalpAcquireSystemHardwareSpinLock:
-
-.endfunc
-
-.global _HalpCalibrateStallExecution@0
-.func HalpCalibrateStallExecution@0
-_HalpCalibrateStallExecution@0:
-
-.endfunc
-
-.globl _HalpProfileInterrupt
-.func HalpProfileInterrupt
-_HalpProfileInterrupt:
-
-.endfunc
-
-
-.globl _KeStallExecutionProcessor
-.func KeStallExecutionProcessor
-_KeStallExecutionProcessor:
-
- /* Get the number of microseconds required */
- jecxz Done
-
- /* Multiply by the stall factor */
- mov eax, gs:[KPCR_STALL_SCALE_FACTOR]
- mul ecx
-
- /* Align to 16 bytes */
- .align 16
-
- /* Jump to subtraction loop */
- jmp SubtractLoop
-
- /* Align to 16 bytes */
- .align 16
-
- /* Subtract one count */
-SubtractLoop:
- sub eax, 1
- jnz SubtractLoop
-
-Done:
- /* Return */
- ret 4
-.endfunc
-
-
-.globl _HalpQuery8254Counter
-.func HalpQuery8254Counter
-_HalpQuery8254Counter:
-
- /* Save EFLAGS and disable interrupts */
- pushfq
- cli
-
- /* Set timer data */
- mov al, 0
- out 0x43, al
- jmp $+2
-
- /* Read current timer */
- in al, 0x40
- jmp $+2
- movzx ecx, al
- in al, 0x40
- mov ch, al
-
- /* Return it and restore interrupt state */
- mov eax, ecx
- popfq
- ret
-.endfunc
-
-.globl _HalpClockInterrupt
-.func HalpClockInterrupt
-_HalpClockInterrupt:
- UNIMPLEMENTED _HalpClockInterrupt
- iret
-.endfunc
-
Removed: branches/ros-amd64-bringup/reactos/hal/halamd64/generic/x86bios.c
URL:
http://svn.reactos.org/svn/reactos/branches/ros-amd64-bringup/reactos/hal/h…
==============================================================================
--- branches/ros-amd64-bringup/reactos/hal/halamd64/generic/x86bios.c [iso-8859-1]
(original)
+++ branches/ros-amd64-bringup/reactos/hal/halamd64/generic/x86bios.c (removed)
@@ -1,69 +1,0 @@
-/*
- * PROJECT: ReactOS HAL
- * LICENSE: See COPYING in the top level directory
- * FILE: hal/halamd64/generic/x86bios.c
- * PURPOSE:
- * PROGRAMMERS:
- */
-
-/* INCLUDES ******************************************************************/
-
-#include <hal.h>
-//#define NDEBUG
-#include <debug.h>
-
-NTSTATUS
-NTAPI
-x86BiosAllocateBuffer (
- ULONG *Size,
- USHORT *Segment,
- USHORT *Offset)
-{
- UNIMPLEMENTED;
- return STATUS_UNSUCCESSFUL;;
-
-}
-
-BOOLEAN
-NTAPI
-x86BiosCall (
- ULONG InterruptNumber,
- X86_BIOS_REGISTERS *Registers)
-{
- UNIMPLEMENTED;
- return FALSE;
-}
-
-NTSTATUS
-NTAPI
-x86BiosFreeBuffer (
- USHORT Segment,
- USHORT Offset)
-{
- UNIMPLEMENTED;
- return STATUS_UNSUCCESSFUL;;
-}
-
-NTSTATUS
-x86BiosReadMemory (
- USHORT Segment,
- USHORT Offset,
- PVOID Buffer,
- ULONG Size)
-{
- UNIMPLEMENTED;
- return STATUS_UNSUCCESSFUL;;
-}
-
-NTSTATUS
-NTAPI
-x86BiosWriteMemory (
- USHORT Segment,
- USHORT Offset,
- PVOID Buffer,
- ULONG Size)
-{
- UNIMPLEMENTED;
- return STATUS_UNSUCCESSFUL;;
-}
-
Propchange: branches/ros-amd64-bringup/reactos/hal/halx86/generic/amd64/
------------------------------------------------------------------------------
--- bugtraq:logregex (added)
+++ bugtraq:logregex Thu Dec 31 17:51:05 2009
@@ -1,0 +1,2 @@
+([Ii]ssue|[Bb]ug)s? #?(\d+)(,? ?#?(\d+))*(,? ?(and |or )?#?(\d+))?
+(\d+)
Propchange: branches/ros-amd64-bringup/reactos/hal/halx86/generic/amd64/
------------------------------------------------------------------------------
bugtraq:message = See issue #%BUGID% for more details.
Propchange: branches/ros-amd64-bringup/reactos/hal/halx86/generic/amd64/
------------------------------------------------------------------------------
bugtraq:url =
http://www.reactos.org/bugzilla/show_bug.cgi?id=%BUGID%
Propchange: branches/ros-amd64-bringup/reactos/hal/halx86/generic/amd64/
------------------------------------------------------------------------------
tsvn:logminsize = 10
Modified: branches/ros-amd64-bringup/reactos/hal/halx86/hal_generic.rbuild
URL:
http://svn.reactos.org/svn/reactos/branches/ros-amd64-bringup/reactos/hal/h…
==============================================================================
--- branches/ros-amd64-bringup/reactos/hal/halx86/hal_generic.rbuild [iso-8859-1]
(original)
+++ branches/ros-amd64-bringup/reactos/hal/halx86/hal_generic.rbuild [iso-8859-1] Thu Dec
31 17:51:05 2009
@@ -5,35 +5,49 @@
<include>include</include>
<include base="ntoskrnl">include</include>
<define name="_NTHAL_" />
+ <define name="_X86BIOS_" />
<directory name="generic">
<directory name="bus">
<file>bushndlr.c</file>
<file>isabus.c</file>
<file>halbus.c</file>
+ <file>pcibus.c</file>
<file>pcidata.c</file>
<file>sysbus.c</file>
</directory>
<file>beep.c</file>
- <file>bios.c</file>
<file>cmos.c</file>
<file>dma.c</file>
<file>drive.c</file>
<file>display.c</file>
- <file>halinit.c</file>
- <file>misc.c</file>
<file>profil.c</file>
<file>reboot.c</file>
<file>sysinfo.c</file>
<file>timer.c</file>
- <file>usage.c</file>
+ <file>x86bios.c</file>
<if property="ARCH" value="i386">
+ <file>bios.c</file>
+ <file>halinit.c</file>
+ <file>misc.c</file>
+ <file>usage.c</file>
<directory name="i386">
<file>portio.c</file>
<file>systimer.S</file>
<file>v86.s</file>
</directory>
</if>
+ <if property="ARCH" value="amd64">
+ <directory name="amd64">
+ <file>irq.s</file>
+ <file>systimer.S</file>
+ </directory>
+ </if>
</directory>
+ <if property="ARCH" value="amd64">
+ <directory name="mp">
+ <file>apic.c</file>
+ </directory>
+ </if>
<directory name="include">
<pch>hal.h</pch>
</directory>
Removed: 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 (removed)
@@ -1,35 +1,0 @@
-<?xml version="1.0"?>
-<!DOCTYPE group SYSTEM "../../../tools/rbuild/project.dtd">
-<group>
- <module name="hal_generic_amd64" type="objectlibrary">
- <include>include</include>
- <include base="ntoskrnl">include</include>
- <define name="_DISABLE_TIDENTS" />
- <define name="_NTHAL_" />
- <directory name="generic">
- <directory name="bus">
- <file>bushndlr.c</file>
- <file>isabus.c</file>
- <file>halbus.c</file>
- <file>pcibus.c</file>
- <file>pcidata.c</file>
- <file>sysbus.c</file>
- </directory>
- <file>beep.c</file>
- <file>cmos.c</file>
- <file>dma.c</file>
- <file>drive.c</file>
- <file>display.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>
- </directory>
- <directory name="include">
- <pch>hal.h</pch>
- </directory>
- </module>
-</group>