Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/trunk]: src/sys/arch/cesfic/cesfic pmap_changebit() requires pv tracking...



details:   https://anonhg.NetBSD.org/src/rev/7b2427ce70a4
branches:  trunk
changeset: 513224:7b2427ce70a4
user:      drochner <drochner%NetBSD.org@localhost>
date:      Thu Jul 26 15:45:51 2001 +0000

description:
pmap_changebit() requires pv tracking, so replace it by manual PTE construction

diffstat:

 sys/arch/cesfic/cesfic/autoconf.c |  10 ++++++----
 1 files changed, 6 insertions(+), 4 deletions(-)

diffs (24 lines):

diff -r f0a066eab746 -r 7b2427ce70a4 sys/arch/cesfic/cesfic/autoconf.c
--- a/sys/arch/cesfic/cesfic/autoconf.c Thu Jul 26 15:43:39 2001 +0000
+++ b/sys/arch/cesfic/cesfic/autoconf.c Thu Jul 26 15:45:51 2001 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: autoconf.c,v 1.1 2001/05/14 18:22:59 drochner Exp $    */
+/*     $NetBSD: autoconf.c,v 1.2 2001/07/26 15:45:51 drochner Exp $    */
 
 /*
  * Copyright (c) 1997, 1999
@@ -137,9 +137,11 @@
        *virtaddr = (void*)(va + (physaddr & PGOFSET));
        for (; pa < endpa; pa += NBPG, va += NBPG) {
                pmap_kenter_pa(va, pa, VM_PROT_READ | VM_PROT_WRITE);
-               if (!cacheable)
-                       pmap_changebit(pa, PG_CI, TRUE);
-                       /*_pmap_set_page_cacheinhibit(pmap_kernel(), va);*/
+               if (!cacheable) {
+                       pt_entry_t *pte = kvtopte(va);
+                       *pte |= PG_CI;
+                       *pte &= ~PG_CCB;
+               }
        }
 
        return (0);



Home | Main Index | Thread Index | Old Index