[OpenBIOS] [commit] r1001 - trunk/openbios-devel/arch/sparc32

repository service svn at openbios.org
Sun Jan 2 01:06:06 CET 2011


Author: mcayland
Date: Sun Jan  2 01:06:03 2011
New Revision: 1001
URL: http://tracker.coreboot.org/trac/openbios/changeset/1001

Log:
Switch SPARC32 page tables over to use OFMEM's ofmem_posix_memalign() rather than its internal posix_memalign() function.

This requires a corresponding increase in the memory allocated to OFMEM in order to store the page tables.

Signed-off-by: Mark Cave-Ayland <mark.cave-ayland at siriusit.co.uk>
Tested-by: Blue Swirl <blauwirbel at gmail.com>
Reviewed-by: Blue Swirl <blauwirbel at gmail.com>

Modified:
   trunk/openbios-devel/arch/sparc32/lib.c
   trunk/openbios-devel/arch/sparc32/ofmem_sparc32.c

Modified: trunk/openbios-devel/arch/sparc32/lib.c
==============================================================================
--- trunk/openbios-devel/arch/sparc32/lib.c	Sun Jan  2 01:05:56 2011	(r1000)
+++ trunk/openbios-devel/arch/sparc32/lib.c	Sun Jan  2 01:06:03 2011	(r1001)
@@ -273,7 +273,7 @@
     pte = l1[(va >> SRMMU_PGDIR_SHIFT) & (SRMMU_PTRS_PER_PGD - 1)];
     if ((pte & SRMMU_ET_MASK) == SRMMU_ET_INVALID) {
         if (alloc) {
-            ret = posix_memalign(&p, SRMMU_PTRS_PER_PMD * sizeof(int),
+            ret = ofmem_posix_memalign(&p, SRMMU_PTRS_PER_PMD * sizeof(int),
                                  SRMMU_PTRS_PER_PMD * sizeof(int));
             if (ret != 0)
                 return ret;
@@ -290,7 +290,7 @@
     pte = *(uint32_t *)pa2va(pa);
     if ((pte & SRMMU_ET_MASK) == SRMMU_ET_INVALID) {
         if (alloc) {
-            ret = posix_memalign(&p, SRMMU_PTRS_PER_PTE * sizeof(void *),
+            ret = ofmem_posix_memalign(&p, SRMMU_PTRS_PER_PTE * sizeof(void *),
                                  SRMMU_PTRS_PER_PTE * sizeof(void *));
             if (ret != 0)
                 return ret;
@@ -602,9 +602,9 @@
     mem_init(&cmem, (char *) &_vmem, (char *)&_evmem);
     mem_init(&cio, (char *)&_end, (char *)&_iomem);
 
-    posix_memalign((void *)&context_table, NCTX_SWIFT * sizeof(int),
+    ofmem_posix_memalign((void *)&context_table, NCTX_SWIFT * sizeof(int),
                    NCTX_SWIFT * sizeof(int));
-    posix_memalign((void *)&l1, 256 * sizeof(int), 256 * sizeof(int));
+    ofmem_posix_memalign((void *)&l1, 256 * sizeof(int), 256 * sizeof(int));
 
     context_table[0] = (((unsigned long)va2pa((unsigned long)l1)) >> 4) |
         SRMMU_ET_PTD;

Modified: trunk/openbios-devel/arch/sparc32/ofmem_sparc32.c
==============================================================================
--- trunk/openbios-devel/arch/sparc32/ofmem_sparc32.c	Sun Jan  2 01:05:56 2011	(r1000)
+++ trunk/openbios-devel/arch/sparc32/ofmem_sparc32.c	Sun Jan  2 01:06:03 2011	(r1001)
@@ -21,8 +21,7 @@
 
 #define OF_MALLOC_BASE		((char*)OFMEM + ALIGN_SIZE(sizeof(ofmem_t), 8))
 
-/* Temporarily very small */
-#define MEMSIZE (1 * 1024)
+#define MEMSIZE (256 * 1024)
 static union {
 	char memory[MEMSIZE];
 	ofmem_t ofmem;



More information about the OpenBIOS mailing list