diff options
author | Mike Frysinger <vapier.adi@gmail.com> | 2009-01-07 23:14:39 +0800 |
---|---|---|
committer | Bryan Wu <cooloney@kernel.org> | 2009-01-07 23:14:39 +0800 |
commit | dd3dd384df7f9f77fba6875a606e5a663510cd1d (patch) | |
tree | 4838d9fd78192fedc2ba8c6d061b8c5bf3b481d9 /arch/blackfin/include | |
parent | 49946e7329fa38d79aed1a9ef4a64c320ada305d (diff) | |
download | blackbird-op-linux-dd3dd384df7f9f77fba6875a606e5a663510cd1d.tar.gz blackbird-op-linux-dd3dd384df7f9f77fba6875a606e5a663510cd1d.zip |
Blackfin arch: rewrite dma_memcpy() and dma in/out functions
- unify all dma in/out functions (takes ~35 lines of code now)
- unify dma_memcpy with dma in/out functions (1 place that touches MDMA0
registers)
- add support for 32bit transfers
- cleanup dma_memcpy code to be much more readable
- irqs are disabled only while programming MDMA registers rather than
the entire transaction
Signed-off-by: Mike Frysinger <vapier.adi@gmail.com>
Signed-off-by: Bryan Wu <cooloney@kernel.org>
Diffstat (limited to 'arch/blackfin/include')
-rw-r--r-- | arch/blackfin/include/asm/dma.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/arch/blackfin/include/asm/dma.h b/arch/blackfin/include/asm/dma.h index d059b2de1629..ca8252ab7a10 100644 --- a/arch/blackfin/include/asm/dma.h +++ b/arch/blackfin/include/asm/dma.h @@ -178,6 +178,7 @@ void dma_enable_irq(unsigned int channel); void clear_dma_irqstat(unsigned int channel); void *dma_memcpy(void *dest, const void *src, size_t count); void *safe_dma_memcpy(void *dest, const void *src, size_t count); +void blackfin_dma_early_init(void); extern int channel2irq(unsigned int channel); extern struct dma_register *dma_io_base_addr[MAX_DMA_CHANNELS]; |