diff options
Diffstat (limited to 'arch')
-rw-r--r-- | arch/arm/common/edma.c | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/arch/arm/common/edma.c b/arch/arm/common/edma.c index 39ad030ac0c7..117f955a2a06 100644 --- a/arch/arm/common/edma.c +++ b/arch/arm/common/edma.c | |||
@@ -1235,6 +1235,23 @@ void edma_resume(unsigned channel) | |||
1235 | } | 1235 | } |
1236 | EXPORT_SYMBOL(edma_resume); | 1236 | EXPORT_SYMBOL(edma_resume); |
1237 | 1237 | ||
1238 | int edma_trigger_channel(unsigned channel) | ||
1239 | { | ||
1240 | unsigned ctlr; | ||
1241 | unsigned int mask; | ||
1242 | |||
1243 | ctlr = EDMA_CTLR(channel); | ||
1244 | channel = EDMA_CHAN_SLOT(channel); | ||
1245 | mask = BIT(channel & 0x1f); | ||
1246 | |||
1247 | edma_shadow0_write_array(ctlr, SH_ESR, (channel >> 5), mask); | ||
1248 | |||
1249 | pr_debug("EDMA: ESR%d %08x\n", (channel >> 5), | ||
1250 | edma_shadow0_read_array(ctlr, SH_ESR, (channel >> 5))); | ||
1251 | return 0; | ||
1252 | } | ||
1253 | EXPORT_SYMBOL(edma_trigger_channel); | ||
1254 | |||
1238 | /** | 1255 | /** |
1239 | * edma_start - start dma on a channel | 1256 | * edma_start - start dma on a channel |
1240 | * @channel: channel being activated | 1257 | * @channel: channel being activated |