Module Name:    src
Committed By:   matt
Date:           Mon Sep  7 22:28:24 UTC 2009

Modified Files:
        src/sys/arch/mips/mips [matt-nb5-mips64]: bus_dma.c

Log Message:
Use/Compare CCA from MIPS3_PG_{UNCACHED,CACHED}


To generate a diff of this commit:
cvs rdiff -u -r1.22.16.3 -r1.22.16.4 src/sys/arch/mips/mips/bus_dma.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/mips/mips/bus_dma.c
diff -u src/sys/arch/mips/mips/bus_dma.c:1.22.16.3 src/sys/arch/mips/mips/bus_dma.c:1.22.16.4
--- src/sys/arch/mips/mips/bus_dma.c:1.22.16.3	Sun Sep  6 22:58:59 2009
+++ src/sys/arch/mips/mips/bus_dma.c	Mon Sep  7 22:28:24 2009
@@ -1,4 +1,4 @@
-/*	$NetBSD: bus_dma.c,v 1.22.16.3 2009/09/06 22:58:59 matt Exp $	*/
+/*	$NetBSD: bus_dma.c,v 1.22.16.4 2009/09/07 22:28:24 matt Exp $	*/
 
 /*-
  * Copyright (c) 1997, 1998, 2001 The NetBSD Foundation, Inc.
@@ -32,7 +32,7 @@
 
 #include <sys/cdefs.h>			/* RCS ID & Copyright macro defns */
 
-__KERNEL_RCSID(0, "$NetBSD: bus_dma.c,v 1.22.16.3 2009/09/06 22:58:59 matt Exp $");
+__KERNEL_RCSID(0, "$NetBSD: bus_dma.c,v 1.22.16.4 2009/09/07 22:28:24 matt Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -45,6 +45,9 @@
 #include <uvm/uvm_extern.h>
 
 #include <mips/cache.h>
+#ifdef _LP64
+#include <mips/mips3_pte.h>
+#endif
 
 #define _MIPS_BUS_DMA_PRIVATE
 #include <machine/bus.h>
@@ -267,7 +270,7 @@
 			map->_dm_flags |= MIPS_DMAMAP_COHERENT;
 #ifdef _LP64
 		else if (MIPS_XKPHYS_P((vaddr_t)buf)
-		    && MIPS_XKPHYS_TO_CCA((vaddr_t)buf) == CCA_UNCACHED)
+		    && MIPS_XKPHYS_TO_CCA((vaddr_t)buf) == MIPS3_PG_TO_CCA(MIPS3_PG_UNCACHED))
 			map->_dm_flags |= MIPS_DMAMAP_COHERENT;
 #endif
 	}
@@ -660,11 +663,11 @@
 		if (segs[0].ds_addr + segs[0].ds_len > MIPS_PHYS_MASK) {
 			unsigned long cca;
 			if (flags & BUS_DMA_COHERENT)
-				cca = CCA_UNCACHED;
+				cca = MIPS3_PG_TO_CCA(MIPS3_PG_UNCACHED);
 			else
-				cca = CCA_CACHEABLE;
-			*kvap = (void *)MIPS_PHYS_TO_XKPHYS(segs[0].ds_addr,
-			    cca);
+				cca = MIPS3_PG_TO_CCA(MIPS3_PG_CACHED);
+			*kvap = (void *)MIPS_PHYS_TO_XKPHYS(cca,
+			    segs[0].ds_addr);
 		} else
 #endif
 		if (flags & BUS_DMA_COHERENT)

Reply via email to