summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sys/arch/hppa/hppa/genassym.cf7
-rw-r--r--sys/arch/hppa/hppa/pmap.c21
-rw-r--r--sys/arch/hppa/include/pmap.h4
3 files changed, 12 insertions, 20 deletions
diff --git a/sys/arch/hppa/hppa/genassym.cf b/sys/arch/hppa/hppa/genassym.cf
index 70c2e0faa2a..5530e7fe49c 100644
--- a/sys/arch/hppa/hppa/genassym.cf
+++ b/sys/arch/hppa/hppa/genassym.cf
@@ -1,4 +1,4 @@
-# $OpenBSD: genassym.cf,v 1.3 1998/12/23 17:56:24 mickey Exp $
+# $OpenBSD: genassym.cf,v 1.4 1999/01/20 19:29:50 mickey Exp $
#
# Copyright (c) 1982, 1990, 1993
@@ -66,13 +66,9 @@ define INTSTACK_SIZE INTSTACK_SIZE
define HPPA_PID_KERNEL HPPA_PID_KERNEL
# pte things
-define TLB_ICACHE_POS TLB_ICACHE_POS
-define TLB_DCACHE_POS TLB_DCACHE_POS
define TLB_REF_POS TLB_REF_POS
define TLB_GATE_PROT TLB_GATE_PROT
define TLB_DIRTY_POS TLB_DIRTY_POS
-define TLB_ALIGNED_POS TLB_ALIGNED_POS
-define TLB_AR_KRW TLB_AR_KRW
# hpt_table fields
struct hpt_entry
@@ -89,7 +85,6 @@ member pv_space
member pv_va
member pv_tlbpage
member pv_tlbprot
-member pv_tlbsw
# pmap
struct pmap
diff --git a/sys/arch/hppa/hppa/pmap.c b/sys/arch/hppa/hppa/pmap.c
index 69dd9f53d05..8d139a4dc2f 100644
--- a/sys/arch/hppa/hppa/pmap.c
+++ b/sys/arch/hppa/hppa/pmap.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: pmap.c,v 1.10 1999/01/03 18:42:50 mickey Exp $ */
+/* $OpenBSD: pmap.c,v 1.11 1999/01/20 19:29:50 mickey Exp $ */
/*
* Copyright (c) 1998 Michael Shalayeff
@@ -221,7 +221,7 @@ static __inline struct pv_entry *pmap_alloc_pv __P((void));
static __inline void pmap_free_pv __P((struct pv_entry *));
static __inline struct pv_entry *pmap_find_pv __P((vm_offset_t));
static __inline void pmap_enter_pv __P((pmap_t, vm_offset_t, u_int, u_int,
- u_int, struct pv_entry *));
+ struct pv_entry *));
static __inline void pmap_remove_pv __P((pmap_t, vm_offset_t,
struct pv_entry *));
static __inline void pmap_clear_pv __P((vm_offset_t, struct pv_entry *));
@@ -476,10 +476,10 @@ pmap_collect_pv()
#endif
static __inline void
-pmap_enter_pv(pmap, va, tlbprot, tlbpage, tlbsw, pv)
+pmap_enter_pv(pmap, va, tlbprot, tlbpage, pv)
register pmap_t pmap;
vm_offset_t va;
- u_int tlbprot, tlbpage, tlbsw;
+ u_int tlbprot, tlbpage;
register struct pv_entry *pv;
{
register struct pv_entry *npv, *hpv;
@@ -532,7 +532,6 @@ pmap_enter_pv(pmap, va, tlbprot, tlbpage, tlbsw, pv)
pv->pv_space = pmap->pmap_space;
pv->pv_tlbprot = tlbprot;
pv->pv_tlbpage = tlbpage;
- pv->pv_tlbsw = tlbsw;
pv->pv_next = npv;
if (hpv)
hpv->pv_next = pv;
@@ -616,14 +615,12 @@ pmap_clear_pv(pa, cpv)
/*
* have to clear the icache first since fic uses the dtlb.
*/
- if (pv->pv_tlbsw & TLB_ICACHE)
- ficache(pv->pv_space, pv->pv_va, NBPG);
+ ficache(pv->pv_space, pv->pv_va, NBPG);
pitlb(pv->pv_space, pv->pv_va);
- if (pv->pv_tlbsw & TLB_DCACHE)
- fdcache(pv->pv_space, pv->pv_va, NBPG);
+
+ fdcache(pv->pv_space, pv->pv_va, NBPG);
pdtlb(pv->pv_space, pv->pv_va);
- pv->pv_tlbsw &= ~(TLB_ICACHE|TLB_DCACHE);
pmap_clear_va(pv->pv_space, pv->pv_va);
}
splx(s);
@@ -1069,7 +1066,7 @@ pmap_enter(pmap, va, pa, prot, wired)
if (pmapdebug & PDB_ENTER)
printf("pmap_enter: new mapping\n");
#endif
- pmap_enter_pv(pmap, va, tlbprot, tlbpage, 0, pv);
+ pmap_enter_pv(pmap, va, tlbprot, tlbpage, pv);
pmap->pmap_stats.resident_count++;
}
else {
@@ -1082,7 +1079,7 @@ pmap_enter(pmap, va, pa, prot, wired)
#endif
tlbprot = ppv->pv_tlbprot;
pmap_remove_pv(pmap, va, ppv);
- pmap_enter_pv(pmap, va, tlbprot, tlbpage, 0, pv);
+ pmap_enter_pv(pmap, va, tlbprot, tlbpage, pv);
} else {
/* We are just changing the protection. */
#ifdef PMAPDEBUG
diff --git a/sys/arch/hppa/include/pmap.h b/sys/arch/hppa/include/pmap.h
index 51fcdb0f786..872917dfad3 100644
--- a/sys/arch/hppa/include/pmap.h
+++ b/sys/arch/hppa/include/pmap.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: pmap.h,v 1.5 1999/01/03 04:01:35 mickey Exp $ */
+/* $OpenBSD: pmap.h,v 1.6 1999/01/20 19:29:51 mickey Exp $ */
/*
* Copyright 1996 1995 by Open Software Foundation, Inc.
@@ -106,7 +106,7 @@ struct pv_entry {
u_int pv_va; /* virtual page number */
u_int pv_tlbprot; /* TLB format protection */
u_int pv_tlbpage; /* physical page (for TLB load) */
- u_int pv_tlbsw;
+ u_int pv_pad; /* pad to 32 bytes */
};
#define NPVPPG (NBPG/32-1)