Module Name: src
Committed By: tsutsui
Date: Fri Dec 11 22:23:09 UTC 2009
Modified Files:
src/sys/arch/amiga/amiga: amiga_init.c
src/sys/arch/atari/atari: atari_init.c
src/sys/arch/cesfic/cesfic: pmap_bootstrap.c
src/sys/arch/hp300/hp300: pmap_bootstrap.c
src/sys/arch/luna68k/luna68k: pmap_bootstrap.c
src/sys/arch/mac68k/mac68k: pmap_bootstrap.c
src/sys/arch/mvme68k/mvme68k: pmap_bootstrap.c
src/sys/arch/news68k/news68k: pmap_bootstrap.c
src/sys/arch/next68k/next68k: pmap_bootstrap.c
src/sys/arch/x68k/x68k: pmap_bootstrap.c
Log Message:
Use appropriate macro during pmap initialization:
- use SYSMAP_VA, SEGSHIFT for Sysmap address and table entries
- use TIA_SIZE, TIB_SIZE for sizes of table entries
Now page size dependent numbers are almost replaced with proper macro.
Tested on atari, hp300, and news68k.
To generate a diff of this commit:
cvs rdiff -u -r1.116 -r1.117 src/sys/arch/amiga/amiga/amiga_init.c
cvs rdiff -u -r1.91 -r1.92 src/sys/arch/atari/atari/atari_init.c
cvs rdiff -u -r1.25 -r1.26 src/sys/arch/cesfic/cesfic/pmap_bootstrap.c
cvs rdiff -u -r1.45 -r1.46 src/sys/arch/hp300/hp300/pmap_bootstrap.c
cvs rdiff -u -r1.26 -r1.27 src/sys/arch/luna68k/luna68k/pmap_bootstrap.c
cvs rdiff -u -r1.86 -r1.87 src/sys/arch/mac68k/mac68k/pmap_bootstrap.c
cvs rdiff -u -r1.39 -r1.40 src/sys/arch/mvme68k/mvme68k/pmap_bootstrap.c
cvs rdiff -u -r1.29 -r1.30 src/sys/arch/news68k/news68k/pmap_bootstrap.c
cvs rdiff -u -r1.34 -r1.35 src/sys/arch/next68k/next68k/pmap_bootstrap.c
cvs rdiff -u -r1.49 -r1.50 src/sys/arch/x68k/x68k/pmap_bootstrap.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/amiga/amiga/amiga_init.c
diff -u src/sys/arch/amiga/amiga/amiga_init.c:1.116 src/sys/arch/amiga/amiga/amiga_init.c:1.117
--- src/sys/arch/amiga/amiga/amiga_init.c:1.116 Sun Dec 6 06:41:28 2009
+++ src/sys/arch/amiga/amiga/amiga_init.c Fri Dec 11 22:23:08 2009
@@ -1,4 +1,4 @@
-/* $NetBSD: amiga_init.c,v 1.116 2009/12/06 06:41:28 tsutsui Exp $ */
+/* $NetBSD: amiga_init.c,v 1.117 2009/12/11 22:23:08 tsutsui Exp $ */
/*
* Copyright (c) 1994 Michael L. Hitch
@@ -36,7 +36,7 @@
#include "opt_devreload.h"
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: amiga_init.c,v 1.116 2009/12/06 06:41:28 tsutsui Exp $");
+__KERNEL_RCSID(0, "$NetBSD: amiga_init.c,v 1.117 2009/12/11 22:23:08 tsutsui Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -402,7 +402,7 @@
/*
* Sysmap is now placed at the end of Supervisor virtual address space.
*/
- RELOC(Sysmap, u_int *) = (u_int *)-(NPTEPG * PAGE_SIZE);
+ RELOC(Sysmap, u_int *) = (u_int *)SYSMAP_VA;
/*
* initialize segment table and page table map
@@ -488,7 +488,7 @@
while (pg < epg)
*pg++ = SG_NV;
pg = (pt_entry_t *)Sysptmap_pa;
- pg = &pg[256 - 1]; /* XXX */
+ pg = &pg[SYSMAP_VA >> SEGSHIFT];
*pg = Sysptmap_pa | PG_RW | PG_CI | PG_V;
} else
#endif /* M68040 */
@@ -511,12 +511,16 @@
/*
* invalidate the remainder of each table
*/
- /* XXX PAGE_SIZE dependent constant: 256 or 1024 */
- epg = (pt_entry_t *)(Sysptmap_pa + (256 - 1) * sizeof(st_entry_t));
+ epg = (pt_entry_t *)Sysptmap_pa;
+ epg = &epg[TIA_SIZE];
while (pg < epg) {
*sg++ = SG_NV;
*pg++ = PG_NV;
}
+ sg = (st_entry_t *)RELOC(Sysseg_pa, u_int);
+ sg = &sg[SYSMAP_VA >> SEGSHIFT];
+ pg = (pt_entry_t *)Sysptmap_pa;
+ pg = &pg[SYSMAP_VA >> SEGSHIFT];
*sg = Sysptmap_pa | SG_RW | SG_V;
*pg = Sysptmap_pa | PG_RW | PG_CI | PG_V;
/* XXX zero out rest of page? */
Index: src/sys/arch/atari/atari/atari_init.c
diff -u src/sys/arch/atari/atari/atari_init.c:1.91 src/sys/arch/atari/atari/atari_init.c:1.92
--- src/sys/arch/atari/atari/atari_init.c:1.91 Sun Dec 6 06:41:29 2009
+++ src/sys/arch/atari/atari/atari_init.c Fri Dec 11 22:23:08 2009
@@ -1,4 +1,4 @@
-/* $NetBSD: atari_init.c,v 1.91 2009/12/06 06:41:29 tsutsui Exp $ */
+/* $NetBSD: atari_init.c,v 1.92 2009/12/11 22:23:08 tsutsui Exp $ */
/*
* Copyright (c) 1995 Leo Weppelman
@@ -33,7 +33,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: atari_init.c,v 1.91 2009/12/06 06:41:29 tsutsui Exp $");
+__KERNEL_RCSID(0, "$NetBSD: atari_init.c,v 1.92 2009/12/11 22:23:08 tsutsui Exp $");
#include "opt_ddb.h"
#include "opt_mbtype.h"
@@ -336,7 +336,7 @@
/*
* Sysmap is now placed at the end of Supervisor virtual address space.
*/
- Sysmap = (pt_entry_t *)-(NPTEPG * PAGE_SIZE);
+ Sysmap = (pt_entry_t *)SYSMAP_VA;
/*
* Initialize segment tables
@@ -942,11 +942,11 @@
* Invalidate the remainder of the tables.
*/
esg = (st_entry_t *)sysseg_pa;
- esg = &esg[256]; /* XXX should be TIA_SIZE */
+ esg = &esg[TIA_SIZE];
while (sg < esg)
*sg++ = SG_NV;
epg = (pt_entry_t *)sysptmap_pa;
- epg = &epg[NPTEPG]; /* XXX should be TIB_SIZE */
+ epg = &epg[TIB_SIZE];
while (pg < epg)
*pg++ = PG_NV;
@@ -954,9 +954,9 @@
* Initialize the PTE for the last one to point Sysptmap.
*/
sg = (st_entry_t *)sysseg_pa;
- sg = &sg[256 - 1]; /* XXX should be TIA_SIZE */
+ sg = &sg[SYSMAP_VA >> SEGSHIFT];
pg = (pt_entry_t *)sysptmap_pa;
- pg = &pg[256 - 1]; /* XXX should be TIA_SIZE */
+ pg = &pg[SYSMAP_VA >> SEGSHIFT];
*sg = RELOC_PA(kbase, sysptmap_pa) | SG_RW | SG_V;
*pg = RELOC_PA(kbase, sysptmap_pa) | PG_RW | PG_CI | PG_V;
}
@@ -1054,7 +1054,7 @@
* Invalidate rest of Sysptmap page.
*/
epg = (pt_entry_t *)sysptmap_pa;
- epg = &epg[NPTEPG]; /* XXX: should be TIB_SIZE */
+ epg = &epg[TIB_SIZE];
while (pg < epg)
*pg++ = PG_NV;
@@ -1062,7 +1062,7 @@
* Initialize the PTE for the last one to point Sysptmap.
*/
pg = (pt_entry_t *)sysptmap_pa;
- pg = &pg[256 - 1]; /* XXX: should be TIA_SIZE */
+ pg = &pg[SYSMAP_VA >> SEGSHIFT];
*pg = RELOC_PA(kbase, sysptmap_pa) | PG_RW | PG_CI | PG_V;
}
#endif /* M68040 */
Index: src/sys/arch/cesfic/cesfic/pmap_bootstrap.c
diff -u src/sys/arch/cesfic/cesfic/pmap_bootstrap.c:1.25 src/sys/arch/cesfic/cesfic/pmap_bootstrap.c:1.26
--- src/sys/arch/cesfic/cesfic/pmap_bootstrap.c:1.25 Sun Dec 6 06:41:29 2009
+++ src/sys/arch/cesfic/cesfic/pmap_bootstrap.c Fri Dec 11 22:23:08 2009
@@ -1,4 +1,4 @@
-/* $NetBSD: pmap_bootstrap.c,v 1.25 2009/12/06 06:41:29 tsutsui Exp $ */
+/* $NetBSD: pmap_bootstrap.c,v 1.26 2009/12/11 22:23:08 tsutsui Exp $ */
/*
* Copyright (c) 1991, 1993
@@ -36,7 +36,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: pmap_bootstrap.c,v 1.25 2009/12/06 06:41:29 tsutsui Exp $");
+__KERNEL_RCSID(0, "$NetBSD: pmap_bootstrap.c,v 1.26 2009/12/11 22:23:08 tsutsui Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -260,7 +260,7 @@
* Invalidate all remaining entries.
*/
epte = (pt_entry_t *)kptmpa;
- epte = &epte[NPTEPG]; /* XXX: should be TIB_SIZE */
+ epte = &epte[TIB_SIZE];
while (pte < epte) {
*pte++ = PG_NV;
}
@@ -269,9 +269,9 @@
* table page allocated earlier.
*/
pte = (pt_entry_t *)kptmpa;
- pte = &pte[NPTEPG - 2]; /* XXX: should be TIA_SIZE */
+ pte = &pte[SYSMAP_VA >> SEGSHIFT];
*pte = kptmpa | PG_RW | PG_CI | PG_V;
- pte++;
+ pte++; /* XXX should use [MAXADDR >> SEGSHIFT] */
*pte = lkptpa | PG_RW | PG_CI | PG_V;
} else {
/*
@@ -293,11 +293,11 @@
* Invalidate all remaining entries in both.
*/
este = (st_entry_t *)kstpa;
- este = &epte[NPTEPG]; /* XXX: should be TIA_SIZE */
+ este = &epte[TIA_SIZE];
while (ste < este)
*ste++ = SG_NV;
epte = (pt_entry_t *)kptmpa;
- epte = &epte[NPTEPG]; /* XXX: should be TIB_SIZE */
+ epte = &epte[TIB_SIZE];
while (pte < epte)
*pte++ = PG_NV;
/*
@@ -305,13 +305,13 @@
* table page allocated earlier.
*/
ste = (st_entry_t *)kstpa;
- ste = &ste[NPTEPG - 2]; /* XXX: should be TIA_SIZE */
+ ste = &ste[SYSMAP_VA >> SEGSHIFT];
pte = (pt_entry_t *)kptmpa;
- pte = &pte[NPTEPG - 2]; /* XXX: should be TIA_SIZE */
+ pte = &pte[SYSMAP_VA >> SEGSHIFT];
*ste = kptmpa | SG_RW | SG_V;
*pte = kptmpa | PG_RW | PG_CI | PG_V;
- ste++;
- pte++;
+ ste++; /* XXX should use [MAXADDR >> SEGSHIFT] */
+ pte++; /* XXX should use [MAXADDR >> SEGSHIFT] */
*ste = lkptpa | SG_RW | SG_V;
*pte = lkptpa | PG_RW | PG_CI | PG_V;
}
@@ -387,8 +387,7 @@
* Sysmap: kernel page table (as mapped through Sysptmap)
* Allocated at the end of KVA space.
*/
- RELOC(Sysmap, pt_entry_t *) =
- (pt_entry_t *)m68k_ptob((NPTEPG - 2) * NPTEPG);
+ RELOC(Sysmap, pt_entry_t *) = (pt_entry_t *)SYSMAP_VA;
/*
* Remember the u-area address so it can be loaded in the lwp0
Index: src/sys/arch/hp300/hp300/pmap_bootstrap.c
diff -u src/sys/arch/hp300/hp300/pmap_bootstrap.c:1.45 src/sys/arch/hp300/hp300/pmap_bootstrap.c:1.46
--- src/sys/arch/hp300/hp300/pmap_bootstrap.c:1.45 Sun Dec 6 06:41:30 2009
+++ src/sys/arch/hp300/hp300/pmap_bootstrap.c Fri Dec 11 22:23:08 2009
@@ -1,4 +1,4 @@
-/* $NetBSD: pmap_bootstrap.c,v 1.45 2009/12/06 06:41:30 tsutsui Exp $ */
+/* $NetBSD: pmap_bootstrap.c,v 1.46 2009/12/11 22:23:08 tsutsui Exp $ */
/*
* Copyright (c) 1991, 1993
@@ -36,7 +36,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: pmap_bootstrap.c,v 1.45 2009/12/06 06:41:30 tsutsui Exp $");
+__KERNEL_RCSID(0, "$NetBSD: pmap_bootstrap.c,v 1.46 2009/12/11 22:23:08 tsutsui Exp $");
#include <sys/param.h>
@@ -265,7 +265,7 @@
* Invalidate all remaining entries.
*/
epte = (pt_entry_t *)kptmpa;
- epte = &epte[NPTEPG]; /* XXX: should be TIB_SIZE */
+ epte = &epte[TIB_SIZE];
while (pte < epte) {
*pte++ = PG_NV;
}
@@ -274,9 +274,10 @@
* table page allocated earlier.
*/
pte = (pt_entry_t *)kptmpa;
- pte = &pte[NPTEPG - 2]; /* XXX: should be TIA_SIZE */
+ pte = &pte[SYSMAP_VA >> SEGSHIFT];
*pte = kptmpa | PG_RW | PG_CI | PG_V;
- pte++;
+ pte = (pt_entry_t *)kptmpa;
+ pte = &pte[MAXADDR >> SEGSHIFT];
*pte = lkptpa | PG_RW | PG_CI | PG_V;
} else {
/*
@@ -298,11 +299,11 @@
* Invalidate all remaining entries in both.
*/
este = (st_entry_t *)kstpa;
- este = &epte[NPTEPG]; /* XXX: should be TIA_SIZE */
+ este = &epte[TIA_SIZE];
while (ste < este)
*ste++ = SG_NV;
epte = (pt_entry_t *)kptmpa;
- epte = &epte[NPTEPG]; /* XXX: should be TIB_SIZE */
+ epte = &epte[TIB_SIZE];
while (pte < epte)
*pte++ = PG_NV;
/*
@@ -310,13 +311,15 @@
* table page allocated earlier.
*/
ste = (st_entry_t *)kstpa;
- ste = &ste[NPTEPG - 2]; /* XXX: should be TIA_SIZE */
+ ste = &ste[SYSMAP_VA >> SEGSHIFT];
pte = (pt_entry_t *)kptmpa;
- pte = &pte[NPTEPG - 2]; /* XXX: should be TIA_SIZE */
+ pte = &pte[SYSMAP_VA >> SEGSHIFT];
*ste = kptmpa | SG_RW | SG_V;
*pte = kptmpa | PG_RW | PG_CI | PG_V;
- ste++;
- pte++;
+ ste = (st_entry_t *)kstpa;
+ ste = &ste[MAXADDR >> SEGSHIFT];
+ pte = (pt_entry_t *)kptmpa;
+ pte = &pte[MAXADDR >> SEGSHIFT];
*ste = lkptpa | SG_RW | SG_V;
*pte = lkptpa | PG_RW | PG_CI | PG_V;
}
@@ -417,8 +420,7 @@
* Sysmap: kernel page table (as mapped through Sysptmap)
* Allocated at the end of KVA space.
*/
- RELOC(Sysmap, pt_entry_t *) =
- (pt_entry_t *)m68k_ptob((NPTEPG - 2) * NPTEPG);
+ RELOC(Sysmap, pt_entry_t *) = (pt_entry_t *)SYSMAP_VA;
/*
* CLKbase, MMUbase: important registers in internal IO space
* accessed from assembly language.
Index: src/sys/arch/luna68k/luna68k/pmap_bootstrap.c
diff -u src/sys/arch/luna68k/luna68k/pmap_bootstrap.c:1.26 src/sys/arch/luna68k/luna68k/pmap_bootstrap.c:1.27
--- src/sys/arch/luna68k/luna68k/pmap_bootstrap.c:1.26 Fri Dec 11 20:00:49 2009
+++ src/sys/arch/luna68k/luna68k/pmap_bootstrap.c Fri Dec 11 22:23:09 2009
@@ -1,4 +1,4 @@
-/* $NetBSD: pmap_bootstrap.c,v 1.26 2009/12/11 20:00:49 tsutsui Exp $ */
+/* $NetBSD: pmap_bootstrap.c,v 1.27 2009/12/11 22:23:09 tsutsui Exp $ */
/*
* Copyright (c) 1991, 1993
@@ -36,7 +36,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: pmap_bootstrap.c,v 1.26 2009/12/11 20:00:49 tsutsui Exp $");
+__KERNEL_RCSID(0, "$NetBSD: pmap_bootstrap.c,v 1.27 2009/12/11 22:23:09 tsutsui Exp $");
#include <sys/param.h>
@@ -242,7 +242,7 @@
* Invalidate all remaining entries.
*/
epte = (pt_entry_t *)kptmpa;
- epte = &epte[NPTEPG];
+ epte = &epte[TIB_SIZE];
while (pte < epte) {
*pte++ = PG_NV;
}
@@ -251,9 +251,8 @@
* to point to Sysptmap.
*/
pte = (pt_entry_t *)kptmpa;
- /* XXX should be (TIA_SIZE * PAGE_SIZE) */
- pte[SYSMAP_VA / (NPTEPG * PAGE_SIZE)] =
- kptmpa | PG_RW | PG_CI | PG_V;
+ pte = &pte[SYSMAP_VA >> SEGSHIFT];
+ *pte = kptmpa | PG_RW | PG_CI | PG_V;
} else
#endif
{
@@ -276,11 +275,11 @@
* Invalidate all remaining entries in both.
*/
este = (st_entry_t *)kstpa;
- este = &este[NPTEPG]; /* XXX: should be TIA_SIZE */
+ este = &este[TIA_SIZE];
while (ste < este)
*ste++ = SG_NV;
epte = (pt_entry_t *)kptmpa;
- epte = &epte[NPTEPG]; /* XXX: should be TIB_SIZE */
+ epte = &epte[TIB_SIZE];
while (pte < epte)
*pte++ = PG_NV;
/*
@@ -288,13 +287,11 @@
* to point to Sysptmap.
*/
ste = (st_entry_t *)kstpa;
+ ste = &ste[SYSMAP_VA >> SEGSHIFT];
+ *ste = kptmpa | SG_RW | SG_V;
pte = (pt_entry_t *)kptmpa;
- /* XXX should be (TIA_SIZE * PAGE_SIZE) */
- ste[SYSMAP_VA / (NPTEPG * PAGE_SIZE)] =
- kptmpa | SG_RW | SG_V;
- /* XXX should be (TIA_SIZE * PAGE_SIZE) */
- pte[SYSMAP_VA / (NPTEPG * PAGE_SIZE)] =
- kptmpa | PG_RW | PG_CI | PG_V;
+ pte = &pte[SYSMAP_VA >> SEGSHIFT];
+ *pte = kptmpa | PG_RW | PG_CI | PG_V;
}
/*
Index: src/sys/arch/mac68k/mac68k/pmap_bootstrap.c
diff -u src/sys/arch/mac68k/mac68k/pmap_bootstrap.c:1.86 src/sys/arch/mac68k/mac68k/pmap_bootstrap.c:1.87
--- src/sys/arch/mac68k/mac68k/pmap_bootstrap.c:1.86 Sun Dec 6 06:41:30 2009
+++ src/sys/arch/mac68k/mac68k/pmap_bootstrap.c Fri Dec 11 22:23:09 2009
@@ -1,4 +1,4 @@
-/* $NetBSD: pmap_bootstrap.c,v 1.86 2009/12/06 06:41:30 tsutsui Exp $ */
+/* $NetBSD: pmap_bootstrap.c,v 1.87 2009/12/11 22:23:09 tsutsui Exp $ */
/*
* Copyright (c) 1991, 1993
@@ -36,7 +36,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: pmap_bootstrap.c,v 1.86 2009/12/06 06:41:30 tsutsui Exp $");
+__KERNEL_RCSID(0, "$NetBSD: pmap_bootstrap.c,v 1.87 2009/12/11 22:23:09 tsutsui Exp $");
#include "opt_ddb.h"
#include "opt_kgdb.h"
@@ -289,7 +289,7 @@
* Invalidate all remaining entries.
*/
epte = PA2VA(kptmpa, pt_entry_t *);
- epte = &epte[NPTEPG]; /* XXX: should be TIB_SIZE */
+ epte = &epte[TIB_SIZE];
while (pte < epte) {
*pte++ = PG_NV;
}
@@ -297,7 +297,7 @@
* Initialize the last one to point to Sysptmap.
*/
pte = PA2VA(kptmpa, pt_entry_t *);
- pte = &pte[NPTEPG - 1]; /* XXX: should be TIA_SIZE */
+ pte = &pte[SYSMAP_VA >> SEGSHIFT];
*pte = kptmpa | PG_RW | PG_CI | PG_V;
} else {
/*
@@ -319,21 +319,21 @@
* Invalidate all remaining entries in both.
*/
este = PA2VA(kstpa, st_entry_t *);
- este = &este[NPTEPG]; /* XXX: should be TIA_SIZE */
+ este = &este[TIA_SIZE];
while (ste < este)
*ste++ = SG_NV;
epte = PA2VA(kptmpa, pt_entry_t *);
- epte = &epte[NPTEPG]; /* XXX: should be TIB_SIZE */
+ epte = &epte[TIB_SIZE];
while (pte < epte)
*pte++ = PG_NV;
/*
* Initialize the last one to point to Sysptmap.
*/
ste = PA2VA(kstpa, st_entry_t *);
- ste = &ste[NPTEPG - 1]; /* XXX: should be TIA_SIZE */
+ ste = &ste[SYSMAP_VA >> SEGSHIFT];
*ste = kptmpa | SG_RW | SG_V;
pte = PA2VA(kptmpa, pt_entry_t *);
- pte = &pte[NPTEPG - 1]; /* XXX: should be TIA_SIZE */
+ pte = &pte[SYSMAP_VA >> SEGSHIFT];
*pte = kptmpa | PG_RW | PG_CI | PG_V;
}
@@ -433,7 +433,7 @@
* Sysmap: kernel page table (as mapped through Sysptmap)
* Allocated at the end of KVA space.
*/
- Sysmap = (pt_entry_t *)m68k_ptob((NPTEPG - 1) * NPTEPG);
+ Sysmap = (pt_entry_t *)SYSMAP_VA;
/*
* Remember the u-area address so it can be loaded in the lwp0
Index: src/sys/arch/mvme68k/mvme68k/pmap_bootstrap.c
diff -u src/sys/arch/mvme68k/mvme68k/pmap_bootstrap.c:1.39 src/sys/arch/mvme68k/mvme68k/pmap_bootstrap.c:1.40
--- src/sys/arch/mvme68k/mvme68k/pmap_bootstrap.c:1.39 Sun Dec 6 06:41:30 2009
+++ src/sys/arch/mvme68k/mvme68k/pmap_bootstrap.c Fri Dec 11 22:23:09 2009
@@ -1,4 +1,4 @@
-/* $NetBSD: pmap_bootstrap.c,v 1.39 2009/12/06 06:41:30 tsutsui Exp $ */
+/* $NetBSD: pmap_bootstrap.c,v 1.40 2009/12/11 22:23:09 tsutsui Exp $ */
/*
* Copyright (c) 1991, 1993
@@ -36,7 +36,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: pmap_bootstrap.c,v 1.39 2009/12/06 06:41:30 tsutsui Exp $");
+__KERNEL_RCSID(0, "$NetBSD: pmap_bootstrap.c,v 1.40 2009/12/11 22:23:09 tsutsui Exp $");
#include <sys/param.h>
#include <sys/kcore.h>
@@ -279,7 +279,7 @@
* Invalidate all remaining entries.
*/
epte = (pt_entry_t *)kptmpa;
- epte = &epte[NPTEPG]; /* XXX: should be TIB_SIZE */
+ epte = &epte[TIB_SIZE];
while (pte < epte) {
*pte++ = PG_NV;
}
@@ -288,9 +288,9 @@
* table page allocated earlier.
*/
pte = (pt_entry_t *)kptmpa;
- pte = &pte[NPTEPG - 2]; /* XXX: should be TIA_SIZE */
+ pte = &pte[SYSMAP_VA >> SEGSHIFT];
*pte = kptmpa | PG_RW | PG_CI | PG_V;
- pte++;
+ pte++; /* XXX should use [MAXADDR >> SEGSHIFT] */
*pte = lkptpa | PG_RW | PG_CI | PG_U | PG_V;
} else
#endif /* M68040 || M68060 */
@@ -314,11 +314,11 @@
* Invalidate all remaining entries in both.
*/
este = (st_entry_t *)kstpa;
- este = &epte[NPTEPG]; /* XXX: should be TIA_SIZE */
+ este = &epte[TIA_SIZE];
while (ste < este)
*ste++ = SG_NV;
epte = (st_entry_t *)kptmpa;
- epte = &epte[NPTEPG]; /* XXX: should be TIB_SIZE */
+ epte = &epte[TIB_SIZE];
while (pte < epte)
*pte++ = PG_NV;
/*
@@ -326,13 +326,13 @@
* table page allocated earlier.
*/
ste = (st_entry_t *)kstpa;
- ste = &ste[NPTEPG - 2]; /* XXX: should be TIA_SIZE */
+ ste = &ste[SYSMAP_VA >> SEGSHIFT];
pte = (pt_entry_t *)kptmpa;
- pte = &pte[NPTEPG - 2]; /* XXX: should be TIA_SIZE */
+ pte = &pte[SYSMAP_VA >> SEGSHIFT];
*ste = kptmpa | SG_RW | SG_V;
*pte = kptmpa | PG_RW | PG_CI | PG_V;
- ste++;
- pte++;
+ ste++; /* XXX should use [MAXADDR >> SEGSHIFT] */
+ pte++; /* XXX should use [MAXADDR >> SEGSHIFT] */
*ste = lkptpa | SG_RW | SG_V;
*pte = lkptpa | PG_RW | PG_CI | PG_V;
}
@@ -438,8 +438,7 @@
* Sysmap: kernel page table (as mapped through Sysptmap)
* Allocated at the end of KVA space.
*/
- RELOC(Sysmap, pt_entry_t *) =
- (pt_entry_t *)m68k_ptob((NPTEPG - 2) * NPTEPG);
+ RELOC(Sysmap, pt_entry_t *) = (pt_entry_t *)SYSMAP_VA;
/*
* Remember the u-area address so it can be loaded in the lwp0
Index: src/sys/arch/news68k/news68k/pmap_bootstrap.c
diff -u src/sys/arch/news68k/news68k/pmap_bootstrap.c:1.29 src/sys/arch/news68k/news68k/pmap_bootstrap.c:1.30
--- src/sys/arch/news68k/news68k/pmap_bootstrap.c:1.29 Sun Dec 6 06:41:30 2009
+++ src/sys/arch/news68k/news68k/pmap_bootstrap.c Fri Dec 11 22:23:09 2009
@@ -1,4 +1,4 @@
-/* $NetBSD: pmap_bootstrap.c,v 1.29 2009/12/06 06:41:30 tsutsui Exp $ */
+/* $NetBSD: pmap_bootstrap.c,v 1.30 2009/12/11 22:23:09 tsutsui Exp $ */
/*
* Copyright (c) 1991, 1993
@@ -39,7 +39,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: pmap_bootstrap.c,v 1.29 2009/12/06 06:41:30 tsutsui Exp $");
+__KERNEL_RCSID(0, "$NetBSD: pmap_bootstrap.c,v 1.30 2009/12/11 22:23:09 tsutsui Exp $");
#include <sys/param.h>
@@ -269,7 +269,7 @@
* Invalidate all remaining entries.
*/
epte = (pt_entry_t *)kptmpa;
- epte = &epte[NPTEPG]; /* XXX: should be TIB_SIZE */
+ epte = &epte[TIB_SIZE];
while (pte < epte) {
*pte++ = PG_NV;
}
@@ -277,7 +277,7 @@
* Initialize the last one to point to Sysptmap.
*/
pte = (pt_entry_t *)kptmpa;
- pte = &pte[NPTEPG - 1]; /* XXX: should be TIA_SIZE */
+ pte = &pte[SYSMAP_VA >> SEGSHIFT];
*pte = kptmpa | PG_RW | PG_CI | PG_V;
} else
#endif
@@ -301,21 +301,21 @@
* Invalidate all remaining entries in both.
*/
este = (st_entry_t *)kstpa;
- este = &este[NPTEPG]; /* XXX: should be TIA_SIZE */
+ este = &este[TIA_SIZE];
while (ste < este)
*ste++ = SG_NV;
epte = (pt_entry_t *)kptmpa;
- epte = &epte[NPTEPG]; /* XXX: should be TIB_SIZE */
+ epte = &epte[TIB_SIZE];
while (pte < epte)
*pte++ = PG_NV;
/*
* Initialize the last one to point to Sysptmap.
*/
ste = (st_entry_t *)kstpa;
- ste = &ste[NPTEPG - 1]; /* XXX: should be TIA_SIZE */
+ ste = &ste[SYSMAP_VA >> SEGSHIFT];
*ste = kptmpa | SG_RW | SG_V;
pte = (pt_entry_t *)kptmpa;
- pte = &pte[NPTEPG - 1]; /* XXX: should be TIA_SIZE */
+ pte = &pte[SYSMAP_VA >> SEGSHIFT];
*pte = kptmpa | PG_RW | PG_CI | PG_V;
}
@@ -396,8 +396,7 @@
* Sysmap: kernel page table (as mapped through Sysptmap)
* Allocated at the end of KVA space.
*/
- RELOC(Sysmap, pt_entry_t *) =
- (pt_entry_t *)m68k_ptob((NPTEPG - 1) * NPTEPG);
+ RELOC(Sysmap, pt_entry_t *) = (pt_entry_t *)SYSMAP_VA;
/*
* Remember the u-area address so it can be loaded in the lwp0
Index: src/sys/arch/next68k/next68k/pmap_bootstrap.c
diff -u src/sys/arch/next68k/next68k/pmap_bootstrap.c:1.34 src/sys/arch/next68k/next68k/pmap_bootstrap.c:1.35
--- src/sys/arch/next68k/next68k/pmap_bootstrap.c:1.34 Sun Dec 6 06:41:31 2009
+++ src/sys/arch/next68k/next68k/pmap_bootstrap.c Fri Dec 11 22:23:09 2009
@@ -1,4 +1,4 @@
-/* $NetBSD: pmap_bootstrap.c,v 1.34 2009/12/06 06:41:31 tsutsui Exp $ */
+/* $NetBSD: pmap_bootstrap.c,v 1.35 2009/12/11 22:23:09 tsutsui Exp $ */
/*
* This file was taken from mvme68k/mvme68k/pmap_bootstrap.c
@@ -45,7 +45,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: pmap_bootstrap.c,v 1.34 2009/12/06 06:41:31 tsutsui Exp $");
+__KERNEL_RCSID(0, "$NetBSD: pmap_bootstrap.c,v 1.35 2009/12/11 22:23:09 tsutsui Exp $");
#include <sys/param.h>
#include <sys/kcore.h>
@@ -289,7 +289,7 @@
* Invalidate all remaining entries.
*/
epte = (pt_entry_t *)kptmpa;
- epte = &epte[NPTEPG]; /* XXX: should be TIB_SIZE */
+ epte = &epte[TIB_SIZE];
while (pte < epte) {
*pte++ = PG_NV;
}
@@ -298,9 +298,9 @@
* table page allocated earlier.
*/
pte = (pt_entry_t *)kptmpa;
- pte = &pte[NPTEPG - 2]; /* XXX: should be TIA_SIZE */
+ pte = &pte[SYSMAP_VA >> SEGSHIFT];
*pte = kptmpa | PG_RW | PG_CI | PG_V;
- pte++;
+ pte++; /* XXX should use [MAXADDR >> SEGSHIFT] */
*pte = lkptpa | PG_RW | PG_CI | PG_U | PG_V;
} else
#endif /* M68040 || M68060 */
@@ -324,11 +324,11 @@
* Invalidate all remaining entries in both.
*/
este = (st_entry_t *)kstpa;
- este = &epte[NPTEPG]; /* XXX: should be TIA_SIZE */
+ este = &epte[TIA_SIZE];
while (ste < este)
*ste++ = SG_NV;
epte = (pt_entry_t *)kptmpa;
- epte = &epte[NPTEPG]; /* XXX: should be TIB_SIZE */
+ epte = &epte[TIB_SIZE];
while (pte < epte)
*pte++ = PG_NV;
/*
@@ -336,13 +336,13 @@
* table page allocated earlier.
*/
ste = (st_entry_t *)kstpa;
- ste = &ste[NPTEPG - 2]; /* XXX: should be TIA_SIZE */
+ ste = &ste[SYSMAP_VA >> SEGSHIFT];
pte = (pt_entry_t *)kptmpa;
- pte = &pte[NPTEPG - 2]; /* XXX: should be TIA_SIZE */
+ pte = &pte[SYSMAP_VA >> SEGSHIFT];
*ste = kptmpa | SG_RW | SG_V;
*pte = kptmpa | PG_RW | PG_CI | PG_V;
- ste++;
- pte++;
+ ste++; /* XXX should use [MAXADDR >> SEGSHIFT] */
+ pte++; /* XXX should use [MAXADDR >> SEGSHIFT] */
*ste = lkptpa | SG_RW | SG_V;
*pte = lkptpa | PG_RW | PG_CI | PG_V;
}
@@ -477,8 +477,7 @@
* Sysmap: kernel page table (as mapped through Sysptmap)
* Allocated at the end of KVA space.
*/
- RELOC(Sysmap, pt_entry_t *) =
- (pt_entry_t *)m68k_ptob((NPTEPG - 2) * NPTEPG);
+ RELOC(Sysmap, pt_entry_t *) = (pt_entry_t *)SYSMAP_VA;
/*
* Remember the u-area address so it can be loaded in the lwp0
Index: src/sys/arch/x68k/x68k/pmap_bootstrap.c
diff -u src/sys/arch/x68k/x68k/pmap_bootstrap.c:1.49 src/sys/arch/x68k/x68k/pmap_bootstrap.c:1.50
--- src/sys/arch/x68k/x68k/pmap_bootstrap.c:1.49 Fri Dec 11 19:36:05 2009
+++ src/sys/arch/x68k/x68k/pmap_bootstrap.c Fri Dec 11 22:23:09 2009
@@ -1,4 +1,4 @@
-/* $NetBSD: pmap_bootstrap.c,v 1.49 2009/12/11 19:36:05 tsutsui Exp $ */
+/* $NetBSD: pmap_bootstrap.c,v 1.50 2009/12/11 22:23:09 tsutsui Exp $ */
/*
* Copyright (c) 1991, 1993
@@ -36,7 +36,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: pmap_bootstrap.c,v 1.49 2009/12/11 19:36:05 tsutsui Exp $");
+__KERNEL_RCSID(0, "$NetBSD: pmap_bootstrap.c,v 1.50 2009/12/11 22:23:09 tsutsui Exp $");
#include "opt_m680x0.h"
@@ -245,7 +245,7 @@
* Invalidate all remaining entries.
*/
epte = (pt_entry_t *)kptmpa;
- epte = &epte[NPTEPG]; /* XXX: should be TIB_SIZE */
+ epte = &epte[TIB_SIZE];
while (pte < epte) {
*pte++ = PG_NV;
}
@@ -253,7 +253,7 @@
* Initialize the last one to point to Sysptmap.
*/
pte = (pt_entry_t *)kptmpa;
- pte = &pte[NPTEPG - 1]; /* XXX: should be TIA_SIZE */
+ pte = &pte[SYSMAP_VA >> SEGSHIFT];
*pte = kptmpa | PG_RW | PG_CI | PG_V;
} else
#endif /* M68040 || M68060 */
@@ -277,21 +277,21 @@
* Invalidate all remaining entries in both.
*/
este = (st_entry_t *)kstpa;
- este = &este[NPTEPG]; /* XXX: should be TIA_SIZE */
+ este = &este[TIA_SIZE];
while (ste < este)
*ste++ = SG_NV;
epte = (pt_entry_t *)kptmpa;
- epte = &epte[NPTEPG]; /* XXX: should be TIB_SIZE */
+ epte = &epte[TIB_SIZE];
while (pte < epte)
*pte++ = PG_NV;
/*
* Initialize the last one to point to Sysptmap.
*/
ste = (st_entry_t *)kstpa;
- ste = &ste[NPTEPG - 1]; /* XXX: should be TIA_SIZE */
+ ste = &ste[SYSMAP_VA >> SEGSHIFT];
*ste = kptmpa | SG_RW | SG_V;
pte = (pt_entry_t *)kptmpa;
- pte = &pte[NPTEPG - 1]; /* XXX: should be TIA_SIZE */
+ pte = &pte[SYSMAP_VA >> SEGSHIFT];
*pte = kptmpa | PG_RW | PG_CI | PG_V;
}
@@ -386,8 +386,7 @@
* Sysmap: kernel page table (as mapped through Sysptmap)
* Allocated at the end of KVA space.
*/
- RELOC(Sysmap, pt_entry_t *) =
- (pt_entry_t *)m68k_ptob((NPTEPG - 1) * NPTEPG);
+ RELOC(Sysmap, pt_entry_t *) = (pt_entry_t *)SYSMAP_VA;
/*
* Remember the u-area address so it can be loaded in the lwp0