diff options
author | Christoph Hellwig <hch@lst.de> | 2020-08-18 19:32:42 +0200 |
---|---|---|
committer | Christoph Hellwig <hch@lst.de> | 2020-09-11 09:17:42 +0200 |
commit | a92df4f62fda02e6b141e2b0bb52ccc486264b1c (patch) | |
tree | bfc7af763aed9dd518f90639593ae91a5712aace /kernel/dma/coherent.c | |
parent | 545d29272f38ba4791cca2a5a86fe6766f462f18 (diff) |
dma-mapping: move the dma_declare_coherent_memory documentation
dma_declare_coherent_memory should not be in a DMA API guide aimed
at driver writers (that is consumers of the API). Move it to a comment
near the function instead.
Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Robin Murphy <robin.murphy@arm.com>
Diffstat (limited to 'kernel/dma/coherent.c')
-rw-r--r-- | kernel/dma/coherent.c | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/kernel/dma/coherent.c b/kernel/dma/coherent.c index 2a0c4985f38e..f85d14bbfcbe 100644 --- a/kernel/dma/coherent.c +++ b/kernel/dma/coherent.c @@ -107,6 +107,23 @@ static int dma_assign_coherent_memory(struct device *dev, return 0; } +/* + * Declare a region of memory to be handed out by dma_alloc_coherent() when it + * is asked for coherent memory for this device. This shall only be used + * from platform code, usually based on the device tree description. + * + * phys_addr is the CPU physical address to which the memory is currently + * assigned (this will be ioremapped so the CPU can access the region). + * + * device_addr is the DMA address the device needs to be programmed with to + * actually address this memory (this will be handed out as the dma_addr_t in + * dma_alloc_coherent()). + * + * size is the size of the area (must be a multiple of PAGE_SIZE). + * + * As a simplification for the platforms, only *one* such region of memory may + * be declared per device. + */ int dma_declare_coherent_memory(struct device *dev, phys_addr_t phys_addr, dma_addr_t device_addr, size_t size) { |