diff options
| author | Linus Torvalds <torvalds@linux-foundation.org> | 2011-11-04 21:02:25 -0400 |
|---|---|---|
| committer | Linus Torvalds <torvalds@linux-foundation.org> | 2011-11-04 21:02:25 -0400 |
| commit | fba9569924e06da076cb2ad12474bbd82d69f54d (patch) | |
| tree | f0b7d9c82f8dd90f0dc757a4c00afc0872fc1484 /include/linux/dmaengine.h | |
| parent | 3d0a8d10cfb4cc3d1877c29a866ee7d8a46aa2fa (diff) | |
| parent | 4598fc2c94b68740e0269db03c98a1e7ad5af773 (diff) | |
Merge branch 'next' of git://git.infradead.org/users/vkoul/slave-dma
* 'next' of git://git.infradead.org/users/vkoul/slave-dma: (63 commits)
dmaengine: mid_dma: mask_peripheral_interrupt only when dmac is idle
dmaengine/ep93xx_dma: add module.h include
pch_dma: Reduce wasting memory
pch_dma: Fix suspend issue
dma/timberdale: free_irq() on an error path
dma: shdma: transfer based runtime PM
dmaengine: shdma: protect against the IRQ handler
dmaengine i.MX DMA/SDMA: add missing include of linux/module.h
dmaengine: delete redundant chan_id and chancnt initialization in dma drivers
dmaengine/amba-pl08x: Check txd->llis_va before freeing dma_pool
dmaengine/amba-pl08x: Add support for sg len greater than one for slave transfers
serial: sh-sci: don't filter on DMA device, use only channel ID
ARM: SAMSUNG: Remove Samsung specific enum type for dma direction
ASoC: Samsung: Update DMA interface
spi/s3c64xx: Merge dma control code
spi/s3c64xx: Add support DMA engine API
ARM: SAMSUNG: Remove S3C-PL330-DMA driver
ARM: S5P64X0: Use generic DMA PL330 driver
ARM: S5PC100: Use generic DMA PL330 driver
ARM: S5PV210: Use generic DMA PL330 driver
...
Fix up fairly trivial conflicts in
- arch/arm/mach-exynos4/{Kconfig,clock.c}
- arch/arm/mach-s5p64x0/dma.c
Diffstat (limited to 'include/linux/dmaengine.h')
| -rw-r--r-- | include/linux/dmaengine.h | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/include/linux/dmaengine.h b/include/linux/dmaengine.h index 8fbf40e0713c..ace51af4369f 100644 --- a/include/linux/dmaengine.h +++ b/include/linux/dmaengine.h | |||
| @@ -24,8 +24,7 @@ | |||
| 24 | #include <linux/device.h> | 24 | #include <linux/device.h> |
| 25 | #include <linux/uio.h> | 25 | #include <linux/uio.h> |
| 26 | #include <linux/dma-direction.h> | 26 | #include <linux/dma-direction.h> |
| 27 | 27 | #include <linux/scatterlist.h> | |
| 28 | struct scatterlist; | ||
| 29 | 28 | ||
| 30 | /** | 29 | /** |
| 31 | * typedef dma_cookie_t - an opaque DMA cookie | 30 | * typedef dma_cookie_t - an opaque DMA cookie |
| @@ -519,6 +518,16 @@ static inline int dmaengine_slave_config(struct dma_chan *chan, | |||
| 519 | (unsigned long)config); | 518 | (unsigned long)config); |
| 520 | } | 519 | } |
| 521 | 520 | ||
| 521 | static inline struct dma_async_tx_descriptor *dmaengine_prep_slave_single( | ||
| 522 | struct dma_chan *chan, void *buf, size_t len, | ||
| 523 | enum dma_data_direction dir, unsigned long flags) | ||
| 524 | { | ||
| 525 | struct scatterlist sg; | ||
| 526 | sg_init_one(&sg, buf, len); | ||
| 527 | |||
| 528 | return chan->device->device_prep_slave_sg(chan, &sg, 1, dir, flags); | ||
| 529 | } | ||
| 530 | |||
| 522 | static inline int dmaengine_terminate_all(struct dma_chan *chan) | 531 | static inline int dmaengine_terminate_all(struct dma_chan *chan) |
| 523 | { | 532 | { |
| 524 | return dmaengine_device_control(chan, DMA_TERMINATE_ALL, 0); | 533 | return dmaengine_device_control(chan, DMA_TERMINATE_ALL, 0); |
