Module Name: src Committed By: matt Date: Fri Jul 22 19:50:45 UTC 2016
Modified Files: src/sys/arch/mips/mips: bus_dma.c Log Message: When mapping a dmamem page, make sure to trunc_pae the starting address To generate a diff of this commit: cvs rdiff -u -r1.35 -r1.36 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.35 src/sys/arch/mips/mips/bus_dma.c:1.36 --- src/sys/arch/mips/mips/bus_dma.c:1.35 Sat Jul 16 21:33:46 2016 +++ src/sys/arch/mips/mips/bus_dma.c Fri Jul 22 19:50:44 2016 @@ -1,4 +1,4 @@ -/* $NetBSD: bus_dma.c,v 1.35 2016/07/16 21:33:46 matt Exp $ */ +/* $NetBSD: bus_dma.c,v 1.36 2016/07/22 19:50:44 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.35 2016/07/16 21:33:46 matt Exp $"); +__KERNEL_RCSID(0, "$NetBSD: bus_dma.c,v 1.36 2016/07/22 19:50:44 matt Exp $"); #define _MIPS_BUS_DMA_PRIVATE @@ -1115,7 +1115,7 @@ _bus_dmamem_map(bus_dma_tag_t t, bus_dma *kvap = (void *)va; for (curseg = 0; curseg < nsegs; curseg++) { - for (addr = segs[curseg].ds_addr; + for (addr = trunc_page(segs[curseg].ds_addr); addr < (segs[curseg].ds_addr + segs[curseg].ds_len); addr += PAGE_SIZE, va += PAGE_SIZE, size -= PAGE_SIZE) { if (size == 0)