Author: ros-arm-bringup
Date: Sat Jul 19 01:13:10 2008
New Revision: 34583
URL:
http://svn.reactos.org/svn/reactos?rev=34583&view=rev
Log:
- Cleanup some stray header issues for ARM.
- Separate kernel FIXMEs into clearer groupings:
- TODO FIXMEs are highest priority, as they are missing required functionality.
- USER FIXMEs are the next highest priority, since they will be required for user mode
support.
- V6 FIXMEs and future groupings are lowest priority, since they relate to hardware
support we don't care about for now.
Modified:
trunk/reactos/ntoskrnl/include/internal/arm/ke.h
trunk/reactos/ntoskrnl/include/internal/ke.h
trunk/reactos/ntoskrnl/ke/arm/exp.c
trunk/reactos/ntoskrnl/ke/arm/kiinit.c
trunk/reactos/ntoskrnl/ke/arm/time.c
trunk/reactos/ntoskrnl/ke/arm/trapc.c
trunk/reactos/ntoskrnl/ke/arm/usercall.c
Modified: trunk/reactos/ntoskrnl/include/internal/arm/ke.h
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/include/internal/…
==============================================================================
--- trunk/reactos/ntoskrnl/include/internal/arm/ke.h [iso-8859-1] (original)
+++ trunk/reactos/ntoskrnl/include/internal/arm/ke.h [iso-8859-1] Sat Jul 19 01:13:10
2008
@@ -52,4 +52,7 @@
#define KeArchInitThreadWithContext KeArmInitThreadWithContext
#define KiSystemStartupReal KiSystemStartup
+#define KiGetPreviousMode(tf) \
+ ((tf->Spsr & CPSR_MODES) == CPSR_USER_MODE) ? UserMode: KernelMode
+
#endif
Modified: trunk/reactos/ntoskrnl/include/internal/ke.h
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/include/internal/…
==============================================================================
--- trunk/reactos/ntoskrnl/include/internal/ke.h [iso-8859-1] (original)
+++ trunk/reactos/ntoskrnl/include/internal/ke.h [iso-8859-1] Sat Jul 19 01:13:10 2008
@@ -984,6 +984,30 @@
OUT PKPROCESSOR_STATE ProcessorState
);
+VOID
+FASTCALL
+KiRetireDpcList(
+ IN PKPRCB Prcb
+);
+
+VOID
+FASTCALL
+KiQuantumEnd(
+ VOID
+);
+
+VOID
+KiSystemService(
+ IN PKTHREAD Thread,
+ IN PKTRAP_FRAME TrapFrame,
+ IN ULONG Instruction
+);
+
+VOID
+KiIdleLoop(
+ VOID
+);
+
#include "ke_x.h"
#endif /* __NTOSKRNL_INCLUDE_INTERNAL_KE_H */
Modified: trunk/reactos/ntoskrnl/ke/arm/exp.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/ke/arm/exp.c?rev=…
==============================================================================
--- trunk/reactos/ntoskrnl/ke/arm/exp.c [iso-8859-1] (original)
+++ trunk/reactos/ntoskrnl/ke/arm/exp.c [iso-8859-1] Sat Jul 19 01:13:10 2008
@@ -9,15 +9,9 @@
/* INCLUDES *******************************************************************/
#include <ntoskrnl.h>
+#include <internal/arm/ksarm.h>
#define NDEBUG
#include <debug.h>
-
-/* GLOBALS ********************************************************************/
-
-#include <internal/arm/ksarm.h>
-#define KiGetPreviousMode(tf) \
-((tf->Spsr & CPSR_MODES) == CPSR_USER_MODE) ? UserMode: KernelMode
-
/* FUNCTIONS ******************************************************************/
@@ -194,7 +188,7 @@
Context.ContextFlags = CONTEXT_FULL;
//
- // FIXME: Fuck floating point
+ // FIXME-V6: VFP Support
//
//
@@ -290,7 +284,7 @@
else
{
//
- // FIXME: User mode
+ // FIXME-USER: Do user-mode exception handling
//
ASSERT(FALSE);
}
Modified: trunk/reactos/ntoskrnl/ke/arm/kiinit.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/ke/arm/kiinit.c?r…
==============================================================================
--- trunk/reactos/ntoskrnl/ke/arm/kiinit.c [iso-8859-1] (original)
+++ trunk/reactos/ntoskrnl/ke/arm/kiinit.c [iso-8859-1] Sat Jul 19 01:13:10 2008
@@ -23,21 +23,13 @@
/* FUNCTIONS ******************************************************************/
-//
-// FIXME: Header cleanup
-//
-VOID
-KiIdleLoop(
- VOID
-);
-
VOID
DebugService2(IN ULONG Arg1,
IN ULONG Arg2,
IN ULONG Service)
{
//
- // FIXME: TODO
+ // FIXME-TODO: Implement this for symbol load and such
//
return;
}
@@ -230,7 +222,7 @@
else
{
//
- // FIXME: No MP Support
+ // FIXME-V6: See if we want to support MP
//
DPRINT1("ARM MPCore not supported\n");
}
Modified: trunk/reactos/ntoskrnl/ke/arm/time.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/ke/arm/time.c?rev…
==============================================================================
--- trunk/reactos/ntoskrnl/ke/arm/time.c [iso-8859-1] (original)
+++ trunk/reactos/ntoskrnl/ke/arm/time.c [iso-8859-1] Sat Jul 19 01:13:10 2008
@@ -224,7 +224,7 @@
Prcb->DpcTime++;
//
- // FIXME: Handle DPC checks
+ // FIXME-TODO: Handle DPC checks
//
}
}
Modified: trunk/reactos/ntoskrnl/ke/arm/trapc.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/ke/arm/trapc.c?re…
==============================================================================
--- trunk/reactos/ntoskrnl/ke/arm/trapc.c [iso-8859-1] (original)
+++ trunk/reactos/ntoskrnl/ke/arm/trapc.c [iso-8859-1] Sat Jul 19 01:13:10 2008
@@ -13,30 +13,6 @@
#define NDEBUG
#include <debug.h>
-/* GLOBALS ********************************************************************/
-
-#define KiGetPreviousMode(tf) \
- ((tf->Spsr & CPSR_MODES) == CPSR_USER_MODE) ? UserMode: KernelMode
-
-VOID
-FASTCALL
-KiRetireDpcList(
- IN PKPRCB Prcb
-);
-
-VOID
-FASTCALL
-KiQuantumEnd(
- VOID
-);
-
-VOID
-KiSystemService(
- IN PKTHREAD Thread,
- IN PKTRAP_FRAME TrapFrame,
- IN ULONG Instruction
-);
-
/* FUNCTIONS ******************************************************************/
VOID
@@ -104,7 +80,7 @@
else
{
//
- // FIXME: Wait-For-Interrupt ARM Opcode
+ // FIXME-TODO: Wait-For-Interrupt ARM Opcode
//
}
}
@@ -129,7 +105,7 @@
if (Pcr->PerfGlobalGroupMask)
{
//
- // FIXME: TODO
+ // We don't support this yet on x86 either
//
DPRINT1("WMI Tracing not supported\n");
ASSERT(FALSE);
@@ -149,7 +125,7 @@
NewProcess->DirectoryTableBase.LowPart)
{
//
- // FIXME: TODO
+ // FIXME-USER: Support address space switch
//
DPRINT1("Address space switch not implemented\n");
ASSERT(FALSE);
@@ -179,7 +155,7 @@
if (Prcb->DpcRoutineActive)
{
//
- // FIXME: FAIL
+ // FIXME-TODO: Implement bugcheck code
//
DPRINT1("DPCS ACTIVE!!!\n");
ASSERT(FALSE);
@@ -191,7 +167,7 @@
if (NewThread->ApcState.KernelApcPending)
{
//
- // FIXME: TODO
+ // FIXME-TODO: Implement bugcheck code
//
DPRINT1("APCs pending!\n");
ASSERT(FALSE);
@@ -217,7 +193,7 @@
PreviousMode = KiGetPreviousMode(TrapFrame);
//
- // FIXME No use-mode support
+ // FIXME-USER: Handle APC interrupt while in user-mode
//
if (PreviousMode == UserMode) ASSERT(FALSE);
@@ -372,7 +348,7 @@
if (Irql > DISPATCH_LEVEL)
{
//
- // FIXME: Switch to interrupt stack
+ // FIXME-TODO: Switch to interrupt stack
//
//DPRINT1("[ISR]\n");
}
@@ -543,7 +519,7 @@
Instruction = *(PULONG)(TrapFrame->Pc - sizeof(ULONG));
//
- // FIXME: Enable interrupts?
+ // FIXME-TODO: Enable interrupts?
//
//
Modified: trunk/reactos/ntoskrnl/ke/arm/usercall.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/ke/arm/usercall.c…
==============================================================================
--- trunk/reactos/ntoskrnl/ke/arm/usercall.c [iso-8859-1] (original)
+++ trunk/reactos/ntoskrnl/ke/arm/usercall.c [iso-8859-1] Sat Jul 19 01:13:10 2008
@@ -173,7 +173,7 @@
if (Thread->PreviousMode == UserMode)
{
//
- // FIXME: Validate the user stack
+ // FIXME-USER: Validate the user stack
//
ASSERT(FALSE);
Argument = (PVOID*)TrapFrame->UserSp;