Module Name:    src
Committed By:   matt
Date:           Sat Feb 22 19:03:57 UTC 2014

Modified Files:
        src/sys/arch/evbarm/ixm1200: ixm1200_machdep.c

Log Message:
Deal with non-4KB page sizes


To generate a diff of this commit:
cvs rdiff -u -r1.54 -r1.55 src/sys/arch/evbarm/ixm1200/ixm1200_machdep.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/arch/evbarm/ixm1200/ixm1200_machdep.c
diff -u src/sys/arch/evbarm/ixm1200/ixm1200_machdep.c:1.54 src/sys/arch/evbarm/ixm1200/ixm1200_machdep.c:1.55
--- src/sys/arch/evbarm/ixm1200/ixm1200_machdep.c:1.54	Sun Aug 18 15:58:20 2013
+++ src/sys/arch/evbarm/ixm1200/ixm1200_machdep.c	Sat Feb 22 19:03:57 2014
@@ -1,4 +1,4 @@
-/*	$NetBSD: ixm1200_machdep.c,v 1.54 2013/08/18 15:58:20 matt Exp $ */
+/*	$NetBSD: ixm1200_machdep.c,v 1.55 2014/02/22 19:03:57 matt Exp $ */
 
 /*
  * Copyright (c) 2002, 2003
@@ -61,7 +61,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: ixm1200_machdep.c,v 1.54 2013/08/18 15:58:20 matt Exp $");
+__KERNEL_RCSID(0, "$NetBSD: ixm1200_machdep.c,v 1.55 2014/02/22 19:03:57 matt Exp $");
 
 #include "opt_ddb.h"
 #include "opt_modular.h"
@@ -761,14 +761,14 @@ ixdp_ixp12x0_cc_setup(void)
 {
 	int loop;
 	paddr_t kaddr;
-	pt_entry_t *pte;
 
 	(void) pmap_extract(pmap_kernel(), KERNEL_TEXT_BASE, &kaddr);
 	for (loop = 0; loop < CPU_IXP12X0_CACHE_CLEAN_SIZE; loop += PAGE_SIZE) {
-                pte = vtopte(ixp12x0_cc_base + loop);
-                *pte = L2_S_PROTO | kaddr |
+		pt_entry_t * const ptep = vtopte(ixp12x0_cc_base + loop);
+		const pt_entry_t npte = L2_S_PROTO | kaddr |
                     L2_S_PROT(PTE_KERNEL, VM_PROT_READ) | pte_l2_s_cache_mode;
-		PTE_SYNC(pte);
+		l2pte_set(ptep, npte, 0);
+		PTE_SYNC(ptep);
         }
 	ixp12x0_cache_clean_addr = ixp12x0_cc_base;
 	ixp12x0_cache_clean_size = CPU_IXP12X0_CACHE_CLEAN_SIZE / 2;

Reply via email to