summaryrefslogtreecommitdiffstats
path: root/firmware
diff options
context:
space:
mode:
authorJens Arnold <amiconn@rockbox.org>2006-05-09 23:50:50 +0000
committerJens Arnold <amiconn@rockbox.org>2006-05-09 23:50:50 +0000
commit0c262d8f52a9edf3eb86f26e8948e7e99e05dbc8 (patch)
treec30a63179902a680747f4fc3c287ad918882f363 /firmware
parentbd0db08e3738b65b98d9e71afffaefbde68d47dc (diff)
downloadrockbox-0c262d8f52a9edf3eb86f26e8948e7e99e05dbc8.tar.gz
rockbox-0c262d8f52a9edf3eb86f26e8948e7e99e05dbc8.tar.bz2
rockbox-0c262d8f52a9edf3eb86f26e8948e7e99e05dbc8.zip
Coldfire: Use the auto-align feature in conjunction with line reads for the playback DMA. Saves a bit of memory bandwidth.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9898 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware')
-rw-r--r--firmware/pcm_playback.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/firmware/pcm_playback.c b/firmware/pcm_playback.c
index 8210276c48..1d9b25f6fe 100644
--- a/firmware/pcm_playback.c
+++ b/firmware/pcm_playback.c
@@ -85,7 +85,7 @@ static void dma_start(const void *addr, size_t size)
#endif
/* Set up DMA transfer */
- SAR0 = ((unsigned long)addr); /* Source address */
+ SAR0 = (unsigned long)addr; /* Source address */
DAR0 = (unsigned long)&PDOR3; /* Destination address */
BCR0 = size; /* Bytes to transfer */
@@ -95,7 +95,7 @@ static void dma_start(const void *addr, size_t size)
#ifdef HAVE_SPDIF_OUT
EBU1CONFIG = EBU_DEFPARM;
#endif
- DCR0 = DMA_INT | DMA_EEXT | DMA_CS | DMA_SINC | DMA_START;
+ DCR0 = DMA_INT | DMA_EEXT | DMA_CS | DMA_AA | DMA_SINC | (3 << 20) | DMA_START;
}
/* Stops the DMA transfer and interrupt */