Module Name: src
Committed By: skrll
Date: Wed Nov 11 16:08:32 UTC 2009
Modified Files:
src/sys/arch/hp700/hp700: mainbus.c
src/sys/arch/hppa/hppa: pmap.c
src/sys/arch/hppa/include: pmap.h
Log Message:
Use the new flags argument to pmap_kenter_pa for PMAP_NOCACHE.
To generate a diff of this commit:
cvs rdiff -u -r1.55 -r1.56 src/sys/arch/hp700/hp700/mainbus.c
cvs rdiff -u -r1.54 -r1.55 src/sys/arch/hppa/hppa/pmap.c
cvs rdiff -u -r1.21 -r1.22 src/sys/arch/hppa/include/pmap.h
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/hp700/hp700/mainbus.c
diff -u src/sys/arch/hp700/hp700/mainbus.c:1.55 src/sys/arch/hp700/hp700/mainbus.c:1.56
--- src/sys/arch/hp700/hp700/mainbus.c:1.55 Sat Nov 7 07:27:43 2009
+++ src/sys/arch/hp700/hp700/mainbus.c Wed Nov 11 16:08:31 2009
@@ -1,4 +1,4 @@
-/* $NetBSD: mainbus.c,v 1.55 2009/11/07 07:27:43 cegger Exp $ */
+/* $NetBSD: mainbus.c,v 1.56 2009/11/11 16:08:31 skrll Exp $ */
/*-
* Copyright (c) 2001, 2002 The NetBSD Foundation, Inc.
@@ -58,7 +58,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: mainbus.c,v 1.55 2009/11/07 07:27:43 cegger Exp $");
+__KERNEL_RCSID(0, "$NetBSD: mainbus.c,v 1.56 2009/11/11 16:08:31 skrll Exp $");
#include "locators.h"
#include "power.h"
@@ -1304,7 +1304,7 @@
TAILQ_FOREACH(pg, pglist, pageq.queue) {
KASSERT(size != 0);
pa = VM_PAGE_TO_PHYS(pg);
- pmap_kenter_pa(va, pa, VM_PROT_READ | VM_PROT_WRITE | PMAP_NC, 0);
+ pmap_kenter_pa(va, pa, VM_PROT_READ | VM_PROT_WRITE, PMAP_NOCACHE);
va += PAGE_SIZE;
size -= PAGE_SIZE;
}
Index: src/sys/arch/hppa/hppa/pmap.c
diff -u src/sys/arch/hppa/hppa/pmap.c:1.54 src/sys/arch/hppa/hppa/pmap.c:1.55
--- src/sys/arch/hppa/hppa/pmap.c:1.54 Sat Nov 7 07:27:44 2009
+++ src/sys/arch/hppa/hppa/pmap.c Wed Nov 11 16:08:31 2009
@@ -1,4 +1,4 @@
-/* $NetBSD: pmap.c,v 1.54 2009/11/07 07:27:44 cegger Exp $ */
+/* $NetBSD: pmap.c,v 1.55 2009/11/11 16:08:31 skrll Exp $ */
/*-
* Copyright (c) 2001, 2002 The NetBSD Foundation, Inc.
@@ -65,7 +65,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: pmap.c,v 1.54 2009/11/07 07:27:44 cegger Exp $");
+__KERNEL_RCSID(0, "$NetBSD: pmap.c,v 1.55 2009/11/11 16:08:31 skrll Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -1780,7 +1780,7 @@
opte = pmap_pte_get(pde, va);
pte = pa | PTE_PROT(TLB_WIRED | TLB_REFTRAP |
pmap_prot(pmap_kernel(), prot & VM_PROT_ALL));
- if (pa >= HPPA_IOBEGIN || (prot & PMAP_NC))
+ if (pa >= HPPA_IOBEGIN || (flags & PMAP_NOCACHE))
pte |= PTE_PROT(TLB_UNCACHEABLE);
pmap_kernel()->pm_stats.wired_count++;
pmap_kernel()->pm_stats.resident_count++;
@@ -1797,7 +1797,7 @@
mutex_enter(&pg->mdpage.pvh_lock);
- if (prot & PMAP_NC)
+ if (flags & PMAP_NOCACHE)
pg->mdpage.pvh_attrs |= PVF_NC;
else {
struct pv_entry *pve;
Index: src/sys/arch/hppa/include/pmap.h
diff -u src/sys/arch/hppa/include/pmap.h:1.21 src/sys/arch/hppa/include/pmap.h:1.22
--- src/sys/arch/hppa/include/pmap.h:1.21 Sun May 24 06:53:35 2009
+++ src/sys/arch/hppa/include/pmap.h Wed Nov 11 16:08:31 2009
@@ -1,4 +1,4 @@
-/* $NetBSD: pmap.h,v 1.21 2009/05/24 06:53:35 skrll Exp $ */
+/* $NetBSD: pmap.h,v 1.22 2009/11/11 16:08:31 skrll Exp $ */
/* $OpenBSD: pmap.h,v 1.35 2007/12/14 18:32:23 deraadt Exp $ */
@@ -56,8 +56,6 @@
struct pmap_statistics pm_stats;
};
-#define PMAP_NC 0x100
-
/*
* Flags that indicate attributes of pages or mappings of pages.
*
@@ -208,6 +206,11 @@
((((va) & 0xc0000000) != 0xc0000000) ? \
(pmap)->pm_space : HPPA_SID_KERNEL)
+/*
+ * MD flags that we use for pmap_kenter_pa:
+ */
+#define PMAP_NOCACHE 0x01 /* set the non-cacheable bit */
+
#endif /* _KERNEL */
#endif /* _HPPA_PMAP_H_ */