From owner-svn-src-projects@FreeBSD.ORG Wed Aug 31 08:44:45 2011 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 9C9151065670; Wed, 31 Aug 2011 08:44:45 +0000 (UTC) (envelope-from gber@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id 8CBD78FC13; Wed, 31 Aug 2011 08:44:45 +0000 (UTC) Received: from svn.freebsd.org (localhost [127.0.0.1]) by svn.freebsd.org (8.14.4/8.14.4) with ESMTP id p7V8ij6u090608; Wed, 31 Aug 2011 08:44:45 GMT (envelope-from gber@svn.freebsd.org) Received: (from gber@localhost) by svn.freebsd.org (8.14.4/8.14.4/Submit) id p7V8ijCR090606; Wed, 31 Aug 2011 08:44:45 GMT (envelope-from gber@svn.freebsd.org) Message-Id: <201108310844.p7V8ijCR090606@svn.freebsd.org> From: Grzegorz Bernacki Date: Wed, 31 Aug 2011 08:44:45 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: Subject: svn commit: r225287 - projects/armv6/sys/arm/arm X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 31 Aug 2011 08:44:45 -0000 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];