Lines Matching +full:dma +full:- +full:coherent
1 // SPDX-License-Identifier: GPL-2.0-only
3 * Copyright (C) 2004, 2007-2010, 2011-2012 Synopsys, Inc. (www.synopsys.com)
6 #include <linux/dma-map-ops.h>
11 * ARCH specific callbacks for generic noncoherent DMA ops
12 * - hardware IOC not available (or "dma-coherent" not set for device in DT)
13 * - But still handle both coherent and non-coherent requests from caller
15 * For DMA coherent hardware (IOC) generic code suffices
23 * Yeah this bit us - STAR 9000898266 in arch_dma_prep_coherent()
37 * dma-mapping: provide a generic dma-noncoherent implementation)"
40 * |----------------------------------------------------------------
48 * upper layer functions (in include/linux/dma-mapping.h)
91 * Plug in direct dma map ops.
93 void arch_setup_dma_ops(struct device *dev, bool coherent) in arch_setup_dma_ops() argument
96 * IOC hardware snoops all DMA traffic keeping the caches consistent in arch_setup_dma_ops()
97 * with memory - eliding need for any explicit cache maintenance of in arch_setup_dma_ops()
98 * DMA buffers. in arch_setup_dma_ops()
100 if (is_isa_arcv2() && ioc_enable && coherent) in arch_setup_dma_ops()
101 dev->dma_coherent = true; in arch_setup_dma_ops()
103 dev_info(dev, "use %scoherent DMA ops\n", in arch_setup_dma_ops()
104 dev->dma_coherent ? "" : "non"); in arch_setup_dma_ops()