Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src/netbsd-1-5]: src/sys/arch/atari/atari Pullup: atari_init.c 1.49-1.50, pm...
details: https://anonhg.NetBSD.org/src/rev/3de555d2c4fa
branches: netbsd-1-5
changeset: 488442:3de555d2c4fa
user: leo <leo%NetBSD.org@localhost>
date: Thu Jul 06 11:35:18 2000 +0000
description:
Pullup: atari_init.c 1.49-1.50, pmap.c 1.56-1.57. Approved by thorpej.
Get 060 CacheCopyBack support in line with the amiga (and working ;-)
diffstat:
sys/arch/atari/atari/atari_init.c | 15 +++++++++++----
sys/arch/atari/atari/pmap.c | 8 +++++---
2 files changed, 16 insertions(+), 7 deletions(-)
diffs (71 lines):
diff -r d2b5c7ff3dbb -r 3de555d2c4fa sys/arch/atari/atari/atari_init.c
--- a/sys/arch/atari/atari/atari_init.c Thu Jul 06 11:29:58 2000 +0000
+++ b/sys/arch/atari/atari/atari_init.c Thu Jul 06 11:35:18 2000 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: atari_init.c,v 1.48 2000/03/28 23:57:25 simonb Exp $ */
+/* $NetBSD: atari_init.c,v 1.48.4.1 2000/07/06 11:35:18 leo Exp $ */
/*
* Copyright (c) 1995 Leo Weppelman
@@ -174,6 +174,7 @@
*
* Very crude 68040 support by Michael L. Hitch.
*/
+int kernel_copyback = 1;
void
start_c(id, ttphystart, ttphysize, stphysize, esym_addr)
@@ -367,13 +368,19 @@
* recommended by Motorola; for the 68060 mandatory)
*/
if (mmutype == MMU_68040) {
+
+ if (kernel_copyback)
+ pg_proto |= PG_CCB;
+
for (; i < (u_int)Sysseg; i += NBPG, pg_proto += NBPG)
*pg++ = pg_proto;
+
pg_proto = (pg_proto & ~PG_CCB) | PG_CI;
- for (; i < (u_int)&Sysseg[kstsize * NPTEPG]; i += NBPG,
- pg_proto += NBPG)
+ for (; i < pstart; i += NBPG, pg_proto += NBPG)
*pg++ = pg_proto;
- pg_proto = (pg_proto & ~PG_CI) | PG_CCB;
+ pg_proto = (pg_proto & ~PG_CI);
+ if (kernel_copyback)
+ pg_proto |= PG_CCB;
}
#endif /* defined(M68040) || defined(M68060) */
diff -r d2b5c7ff3dbb -r 3de555d2c4fa sys/arch/atari/atari/pmap.c
--- a/sys/arch/atari/atari/pmap.c Thu Jul 06 11:29:58 2000 +0000
+++ b/sys/arch/atari/atari/pmap.c Thu Jul 06 11:35:18 2000 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: pmap.c,v 1.55 2000/03/26 20:42:26 kleink Exp $ */
+/* $NetBSD: pmap.c,v 1.55.4.1 2000/07/06 11:35:19 leo Exp $ */
/*-
* Copyright (c) 1999 The NetBSD Foundation, Inc.
@@ -1083,6 +1083,8 @@
* or lose information. That is, this routine must actually
* insert this page into the given map NOW.
*/
+extern int kernel_copyback;
+
int
pmap_enter(pmap, va, pa, prot, flags)
register pmap_t pmap;
@@ -1308,10 +1310,10 @@
if (wired)
npte |= PG_W;
if (!checkpv && !cacheable)
- npte |= PG_CI;
+ npte |= (cputype == CPU_68060 ? PG_CIN : PG_CI);
#if defined(M68040) || defined(M68060)
else if (mmutype == MMU_68040 && (npte & PG_PROT) == PG_RW &&
- pmap != pmap_kernel())
+ (kernel_copyback || pmap != pmap_kernel()))
npte |= PG_CCB; /* cache copyback */
#endif
/*
Home |
Main Index |
Thread Index |
Old Index