[ros-diffs] [sir_richard] 49755: [FREELDR]: Cleanup firmware table setup and add support for being booted from a ZOOM2 ARMLLB, and set the correct file system buffer address for that board.

sir_richard at svn.reactos.org sir_richard at svn.reactos.org
Tue Nov 23 17:27:22 UTC 2010


Author: sir_richard
Date: Tue Nov 23 17:27:22 2010
New Revision: 49755

URL: http://svn.reactos.org/svn/reactos?rev=49755&view=rev
Log:
[FREELDR]: Cleanup firmware table setup and add support for being booted from a ZOOM2 ARMLLB, and set the correct file system buffer address for that board.

Modified:
    trunk/reactos/boot/freeldr/freeldr/arch/arm/macharm.c

Modified: trunk/reactos/boot/freeldr/freeldr/arch/arm/macharm.c
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/boot/freeldr/freeldr/arch/arm/macharm.c?rev=49755&r1=49754&r2=49755&view=diff
==============================================================================
--- trunk/reactos/boot/freeldr/freeldr/arch/arm/macharm.c [iso-8859-1] (original)
+++ trunk/reactos/boot/freeldr/freeldr/arch/arm/macharm.c [iso-8859-1] Tue Nov 23 17:27:22 2010
@@ -74,7 +74,8 @@
     /* This should probably go away once we support more boards */
     ASSERT((ArmBoardBlock->BoardType == MACH_TYPE_FEROCEON) ||
            (ArmBoardBlock->BoardType == MACH_TYPE_VERSATILE_PB) ||
-           (ArmBoardBlock->BoardType == MACH_TYPE_OMAP3_BEAGLE));
+           (ArmBoardBlock->BoardType == MACH_TYPE_OMAP3_BEAGLE) ||
+           (ArmBoardBlock->BoardType == MACH_TYPE_OMAP_ZOOM2));
 
     /* Call FreeLDR's portable entrypoint with our command-line */
     BootMain(ArmBoardBlock->CommandLine);
@@ -156,6 +157,16 @@
 VOID
 MachInit(IN PCCH CommandLine)
 {
+    /* Copy Machine Routines from Firmware Table */
+    MachVtbl.ConsPutChar = ArmBoardBlock->ConsPutChar;
+    MachVtbl.ConsKbHit = ArmBoardBlock->ConsKbHit;
+    MachVtbl.ConsGetCh = ArmBoardBlock->ConsGetCh;
+    MachVtbl.VideoClearScreen = ArmBoardBlock->VideoClearScreen;
+    MachVtbl.VideoSetDisplayMode = ArmBoardBlock->VideoSetDisplayMode;
+    MachVtbl.VideoGetDisplaySize = ArmBoardBlock->VideoGetDisplaySize;
+    MachVtbl.VideoPutChar = ArmBoardBlock->VideoPutChar;
+    MachVtbl.GetTime = ArmBoardBlock->GetTime;
+    
     /* Setup board-specific ARM routines */
     switch (ArmBoardBlock->BoardType)
     {
@@ -164,29 +175,24 @@
             TuiPrintf("Not implemented\n");
             while (TRUE);
             break;
+
+        /* Check for TI OMAP3 ZOOM-II MDK */
+        case MACH_TYPE_OMAP_ZOOM2:
+            
+            /* Setup the disk and file system buffers */
+            gDiskReadBuffer = 0x81094000;
+            gFileSysBuffer = 0x81094000;
+            break;
             
         /* Check for ARM Versatile PB boards */
         case MACH_TYPE_VERSATILE_PB:
             
-            /* Copy Machine Routines from Firmware Table */
-            MachVtbl.ConsPutChar = ArmBoardBlock->ConsPutChar;
-            MachVtbl.ConsKbHit = ArmBoardBlock->ConsKbHit;
-            MachVtbl.ConsGetCh = ArmBoardBlock->ConsGetCh;
-            MachVtbl.VideoClearScreen = ArmBoardBlock->VideoClearScreen;
-            MachVtbl.VideoSetDisplayMode = ArmBoardBlock->VideoSetDisplayMode;
-            MachVtbl.VideoGetDisplaySize = ArmBoardBlock->VideoGetDisplaySize;
-            MachVtbl.VideoPutChar = ArmBoardBlock->VideoPutChar;
-            MachVtbl.GetTime = ArmBoardBlock->GetTime;
-                        
             /* Setup the disk and file system buffers */
             gDiskReadBuffer = 0x00090000;
             gFileSysBuffer = 0x00090000;
             break;
             
-        /* 
-         * Check for TI OMAP3 boards
-         * For now that means only Beagle, but ZOOM and others should be ok too
-         */
+        /* Check for TI OMAP3 Beagleboard */
         case MACH_TYPE_OMAP3_BEAGLE:
             TuiPrintf("Not implemented\n");
             while (TRUE);
@@ -195,7 +201,7 @@
         default:
             ASSERT(FALSE);
     }
-        
+    
     /* Setup generic ARM routines for all boards */
     MachVtbl.PrepareForReactOS = ArmPrepareForReactOS;
     MachVtbl.GetMemoryMap = ArmMemGetMemoryMap;




More information about the Ros-diffs mailing list