Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 31 Aug 2011 08:44:45 +0000 (UTC)
From:      Grzegorz Bernacki <gber@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-projects@freebsd.org
Subject:   svn commit: r225287 - projects/armv6/sys/arm/arm
Message-ID:  <201108310844.p7V8ijCR090606@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: gber
Date: Wed Aug 31 08:44:45 2011
New Revision: 225287
URL: http://svn.freebsd.org/changeset/base/225287

Log:
  Allow pmap_map_section and pmap_map_entry to use cache parameter as an index to array with setting for memory type.
  
  Obtained from:   Marvell, Semihalf

Modified:
  projects/armv6/sys/arm/arm/pmap-v6.c

Modified: projects/armv6/sys/arm/arm/pmap-v6.c
==============================================================================
--- projects/armv6/sys/arm/arm/pmap-v6.c	Wed Aug 31 08:27:41 2011	(r225286)
+++ projects/armv6/sys/arm/arm/pmap-v6.c	Wed Aug 31 08:44:45 2011	(r225287)
@@ -3501,20 +3501,7 @@ pmap_map_section(vm_offset_t l1pt, vm_of
 
 	KASSERT(((va | pa) & L1_S_OFFSET) == 0, ("ouin2"));
 
-	switch (cache) {
-	case PTE_NOCACHE:
-	default:
-		fl = 0;
-		break;
-
-	case PTE_CACHE:
-		fl = pte_l1_s_cache_mode;
-		break;
-
-	case PTE_PAGETABLE:
-		fl = pte_l1_s_cache_mode_pt;
-		break;
-	}
+	fl = l1_mem_types[cache];
 
 	pde[va >> L1_S_SHIFT] = L1_S_PROTO | pa |
 	    L1_S_PROT(PTE_KERNEL, prot) | fl | L1_S_DOM(PMAP_DOMAIN_KERNEL);
@@ -3561,20 +3548,7 @@ pmap_map_entry(vm_offset_t l1pt, vm_offs
 
 	KASSERT(((va | pa) & PAGE_MASK) == 0, ("ouin"));
 
-	switch (cache) {
-	case PTE_NOCACHE:
-	default:
-		fl = 0;
-		break;
-
-	case PTE_CACHE:
-		fl = pte_l2_s_cache_mode;
-		break;
-
-	case PTE_PAGETABLE:
-		fl = pte_l2_s_cache_mode_pt;
-		break;
-	}
+	fl = l2s_mem_types[cache];
 
 	if ((pde[va >> L1_S_SHIFT] & L1_TYPE_MASK) != L1_TYPE_C)
 		panic("pmap_map_entry: no L2 table for VA 0x%08x", va);
@@ -3612,7 +3586,7 @@ pmap_map_chunk(vm_offset_t l1pt, vm_offs
 
 #ifdef VERBOSE_INIT_ARM
 	printf("pmap_map_chunk: pa=0x%x va=0x%x size=0x%x resid=0x%x "
-	    "prot=0x%x type=%d\n", pa, va, size, resid, prot, type);
+	    "prot=0x%x cache=%d\n", pa, va, size, resid, prot, cache);
 #endif
 
 	f1 = l1_mem_types[type];



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201108310844.p7V8ijCR090606>