busdma_machdep.c (177103) | busdma_machdep.c (183838) |
---|---|
1/*- 2 * Copyright (c) 2004 Olivier Houchard 3 * Copyright (c) 2002 Peter Grehan 4 * Copyright (c) 1997, 1998 Justin T. Gibbs. 5 * All rights reserved. 6 * 7 * Redistribution and use in source and binary forms, with or without 8 * modification, are permitted provided that the following conditions --- 15 unchanged lines hidden (view full) --- 24 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 25 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 26 * SUCH DAMAGE. 27 * 28 * From i386/busdma_machdep.c,v 1.26 2002/04/19 22:58:09 alfred 29 */ 30 31#include <sys/cdefs.h> | 1/*- 2 * Copyright (c) 2004 Olivier Houchard 3 * Copyright (c) 2002 Peter Grehan 4 * Copyright (c) 1997, 1998 Justin T. Gibbs. 5 * All rights reserved. 6 * 7 * Redistribution and use in source and binary forms, with or without 8 * modification, are permitted provided that the following conditions --- 15 unchanged lines hidden (view full) --- 24 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 25 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 26 * SUCH DAMAGE. 27 * 28 * From i386/busdma_machdep.c,v 1.26 2002/04/19 22:58:09 alfred 29 */ 30 31#include <sys/cdefs.h> |
32__FBSDID("$FreeBSD: head/sys/arm/arm/busdma_machdep.c 177103 2008-03-12 15:31:37Z raj $"); | 32__FBSDID("$FreeBSD: head/sys/arm/arm/busdma_machdep.c 183838 2008-10-13 18:59:59Z raj $"); |
33 34/* 35 * ARM bus dma support routines 36 */ 37 38#define _ARM32_BUS_DMA_PRIVATE 39#include <sys/param.h> 40#include <sys/systm.h> --- 583 unchanged lines hidden (view full) --- 624 625 if (tmpaddr) { 626 tmpaddr = (void *)((vm_offset_t)(tmpaddr) + 627 ((vm_offset_t)*vaddr & PAGE_MASK)); 628 newmap->origbuffer = *vaddr; 629 newmap->allocbuffer = tmpaddr; 630 cpu_idcache_wbinv_range((vm_offset_t)*vaddr, 631 dmat->maxsize); | 33 34/* 35 * ARM bus dma support routines 36 */ 37 38#define _ARM32_BUS_DMA_PRIVATE 39#include <sys/param.h> 40#include <sys/systm.h> --- 583 unchanged lines hidden (view full) --- 624 625 if (tmpaddr) { 626 tmpaddr = (void *)((vm_offset_t)(tmpaddr) + 627 ((vm_offset_t)*vaddr & PAGE_MASK)); 628 newmap->origbuffer = *vaddr; 629 newmap->allocbuffer = tmpaddr; 630 cpu_idcache_wbinv_range((vm_offset_t)*vaddr, 631 dmat->maxsize); |
632 cpu_l2cache_wbinv_range((vm_offset_t)*vaddr, 633 dmat->maxsize); |
|
632 *vaddr = tmpaddr; 633 } else 634 newmap->origbuffer = newmap->allocbuffer = NULL; 635 } else 636 newmap->origbuffer = newmap->allocbuffer = NULL; 637 return (0); 638} 639 --- 829 unchanged lines hidden --- | 634 *vaddr = tmpaddr; 635 } else 636 newmap->origbuffer = newmap->allocbuffer = NULL; 637 } else 638 newmap->origbuffer = newmap->allocbuffer = NULL; 639 return (0); 640} 641 --- 829 unchanged lines hidden --- |