|
@@ -364,6 +364,48 @@ API.
|
|
|
Note: <nents> must be the number you passed in, *not* the number of
|
|
|
physical entries returned.
|
|
|
|
|
|
+void
|
|
|
+dma_sync_single_for_cpu(struct device *dev, dma_addr_t dma_handle, size_t size,
|
|
|
+ enum dma_data_direction direction)
|
|
|
+void
|
|
|
+pci_dma_sync_single_for_cpu(struct pci_dev *hwdev, dma_addr_t dma_handle,
|
|
|
+ size_t size, int direction)
|
|
|
+void
|
|
|
+dma_sync_single_for_device(struct device *dev, dma_addr_t dma_handle, size_t size,
|
|
|
+ enum dma_data_direction direction)
|
|
|
+void
|
|
|
+pci_dma_sync_single_for_device(struct pci_dev *hwdev, dma_addr_t dma_handle,
|
|
|
+ size_t size, int direction)
|
|
|
+void
|
|
|
+dma_sync_sg_for_cpu(struct device *dev, struct scatterlist *sg, int nelems,
|
|
|
+ enum dma_data_direction direction)
|
|
|
+void
|
|
|
+pci_dma_sync_sg_for_cpu(struct pci_dev *hwdev, struct scatterlist *sg,
|
|
|
+ int nelems, int direction)
|
|
|
+void
|
|
|
+dma_sync_sg_for_device(struct device *dev, struct scatterlist *sg, int nelems,
|
|
|
+ enum dma_data_direction direction)
|
|
|
+void
|
|
|
+pci_dma_sync_sg_for_device(struct pci_dev *hwdev, struct scatterlist *sg,
|
|
|
+ int nelems, int direction)
|
|
|
+
|
|
|
+Synchronise a single contiguous or scatter/gather mapping for the cpu
|
|
|
+and device. With the sync_sg API, all the parameters must be the same
|
|
|
+as those passed into the single mapping API. With the sync_single API,
|
|
|
+you can use dma_handle and size parameters that aren't identical to
|
|
|
+those passed into the single mapping API to do a partial sync.
|
|
|
+
|
|
|
+Notes: You must do this:
|
|
|
+
|
|
|
+- Before reading values that have been written by DMA from the device
|
|
|
+ (use the DMA_FROM_DEVICE direction)
|
|
|
+- After writing values that will be written to the device using DMA
|
|
|
+ (use the DMA_TO_DEVICE) direction
|
|
|
+- before *and* after handing memory to the device if the memory is
|
|
|
+ DMA_BIDIRECTIONAL
|
|
|
+
|
|
|
+See also dma_map_single().
|
|
|
+
|
|
|
dma_addr_t
|
|
|
dma_map_single_attrs(struct device *dev, void *cpu_addr, size_t size,
|
|
|
enum dma_data_direction dir,
|