Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit c9af956c authored by David Howells's avatar David Howells Committed by Linus Torvalds
Browse files

FRV: Provide dma_map_page() for NOMMU and fix comments



Provide dma_map_page() for the NOMMU-mode FRV arch.

Also do some fixing on the comments attached to the various DMA functions for
both MMU and NOMMU mode FRV code.

Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
parent 9bd8f9c6
Loading
Loading
Loading
Loading
+20 −3
Original line number Diff line number Diff line
@@ -111,7 +111,7 @@ EXPORT_SYMBOL(dma_free_coherent);
 * The 32-bit bus address to use is returned.
 *
 * Once the device is given the dma address, the device owns this memory
 * until either pci_unmap_single or pci_dma_sync_single is performed.
 * until either dma_unmap_single or pci_dma_sync_single is performed.
 */
dma_addr_t dma_map_single(struct device *dev, void *ptr, size_t size,
			  enum dma_data_direction direction)
@@ -129,7 +129,7 @@ EXPORT_SYMBOL(dma_map_single);
/*
 * Map a set of buffers described by scatterlist in streaming
 * mode for DMA.  This is the scather-gather version of the
 * above pci_map_single interface.  Here the scatter gather list
 * above dma_map_single interface.  Here the scatter gather list
 * elements are each tagged with the appropriate dma address
 * and length.  They are obtained via sg_dma_{address,length}(SG).
 *
@@ -139,7 +139,7 @@ EXPORT_SYMBOL(dma_map_single);
 *       The routine returns the number of addr/length pairs actually
 *       used, at most nents.
 *
 * Device ownership issues as mentioned above for pci_map_single are
 * Device ownership issues as mentioned above for dma_map_single are
 * the same here.
 */
int dma_map_sg(struct device *dev, struct scatterlist *sg, int nents,
@@ -158,3 +158,20 @@ int dma_map_sg(struct device *dev, struct scatterlist *sg, int nents,
}

EXPORT_SYMBOL(dma_map_sg);

/*
 * Map a single page of the indicated size for DMA in streaming mode.
 * The 32-bit bus address to use is returned.
 *
 * Device ownership issues as mentioned above for dma_map_single are
 * the same here.
 */
dma_addr_t dma_map_page(struct device *dev, struct page *page, unsigned long offset,
			size_t size, enum dma_data_direction direction)
{
	BUG_ON(direction == DMA_NONE);
	flush_dcache_page(page);
	return (dma_addr_t) page_to_phys(page) + offset;
}

EXPORT_SYMBOL(dma_map_page);
+9 −2
Original line number Diff line number Diff line
@@ -61,7 +61,7 @@ EXPORT_SYMBOL(dma_map_single);
/*
 * Map a set of buffers described by scatterlist in streaming
 * mode for DMA.  This is the scather-gather version of the
 * above pci_map_single interface.  Here the scatter gather list
 * above dma_map_single interface.  Here the scatter gather list
 * elements are each tagged with the appropriate dma address
 * and length.  They are obtained via sg_dma_{address,length}(SG).
 *
@@ -71,7 +71,7 @@ EXPORT_SYMBOL(dma_map_single);
 *       The routine returns the number of addr/length pairs actually
 *       used, at most nents.
 *
 * Device ownership issues as mentioned above for pci_map_single are
 * Device ownership issues as mentioned above for dma_map_single are
 * the same here.
 */
int dma_map_sg(struct device *dev, struct scatterlist *sg, int nents,
@@ -105,6 +105,13 @@ int dma_map_sg(struct device *dev, struct scatterlist *sg, int nents,

EXPORT_SYMBOL(dma_map_sg);

/*
 * Map a single page of the indicated size for DMA in streaming mode.
 * The 32-bit bus address to use is returned.
 *
 * Device ownership issues as mentioned above for dma_map_single are
 * the same here.
 */
dma_addr_t dma_map_page(struct device *dev, struct page *page, unsigned long offset,
			size_t size, enum dma_data_direction direction)
{