diff options
| -rw-r--r-- | drivers/dma/fsldma.c | 16 | ||||
| -rw-r--r-- | include/linux/fsldma.h | 13 |
2 files changed, 28 insertions, 1 deletions
diff --git a/drivers/dma/fsldma.c b/drivers/dma/fsldma.c index d5d6885ab341..0cded86f946c 100644 --- a/drivers/dma/fsldma.c +++ b/drivers/dma/fsldma.c | |||
| @@ -36,7 +36,7 @@ | |||
| 36 | #include <linux/of_address.h> | 36 | #include <linux/of_address.h> |
| 37 | #include <linux/of_irq.h> | 37 | #include <linux/of_irq.h> |
| 38 | #include <linux/of_platform.h> | 38 | #include <linux/of_platform.h> |
| 39 | 39 | #include <linux/fsldma.h> | |
| 40 | #include "dmaengine.h" | 40 | #include "dmaengine.h" |
| 41 | #include "fsldma.h" | 41 | #include "fsldma.h" |
| 42 | 42 | ||
| @@ -367,6 +367,20 @@ static void fsl_chan_toggle_ext_start(struct fsldma_chan *chan, int enable) | |||
| 367 | chan->feature &= ~FSL_DMA_CHAN_START_EXT; | 367 | chan->feature &= ~FSL_DMA_CHAN_START_EXT; |
| 368 | } | 368 | } |
| 369 | 369 | ||
| 370 | int fsl_dma_external_start(struct dma_chan *dchan, int enable) | ||
| 371 | { | ||
| 372 | struct fsldma_chan *chan; | ||
| 373 | |||
| 374 | if (!dchan) | ||
| 375 | return -EINVAL; | ||
| 376 | |||
| 377 | chan = to_fsl_chan(dchan); | ||
| 378 | |||
| 379 | fsl_chan_toggle_ext_start(chan, enable); | ||
| 380 | return 0; | ||
| 381 | } | ||
| 382 | EXPORT_SYMBOL_GPL(fsl_dma_external_start); | ||
| 383 | |||
| 370 | static void append_ld_queue(struct fsldma_chan *chan, struct fsl_desc_sw *desc) | 384 | static void append_ld_queue(struct fsldma_chan *chan, struct fsl_desc_sw *desc) |
| 371 | { | 385 | { |
| 372 | struct fsl_desc_sw *tail = to_fsl_desc(chan->ld_pending.prev); | 386 | struct fsl_desc_sw *tail = to_fsl_desc(chan->ld_pending.prev); |
diff --git a/include/linux/fsldma.h b/include/linux/fsldma.h new file mode 100644 index 000000000000..b213c02963c9 --- /dev/null +++ b/include/linux/fsldma.h | |||
| @@ -0,0 +1,13 @@ | |||
| 1 | /* | ||
| 2 | * This is free software; you can redistribute it and/or modify | ||
| 3 | * it under the terms of the GNU General Public License as published by | ||
| 4 | * the Free Software Foundation; either version 2 of the License, or | ||
| 5 | * (at your option) any later version. | ||
| 6 | */ | ||
| 7 | |||
| 8 | #ifndef FSL_DMA_H | ||
| 9 | #define FSL_DMA_H | ||
| 10 | /* fsl dma API for enxternal start */ | ||
| 11 | int fsl_dma_external_start(struct dma_chan *dchan, int enable); | ||
| 12 | |||
| 13 | #endif | ||
