diff options
author | Jens Arnold <amiconn@rockbox.org> | 2006-05-09 23:50:50 +0000 |
---|---|---|
committer | Jens Arnold <amiconn@rockbox.org> | 2006-05-09 23:50:50 +0000 |
commit | 0c262d8f52a9edf3eb86f26e8948e7e99e05dbc8 (patch) | |
tree | c30a63179902a680747f4fc3c287ad918882f363 | |
parent | bd0db08e3738b65b98d9e71afffaefbde68d47dc (diff) | |
download | rockbox-0c262d8f52a9edf3eb86f26e8948e7e99e05dbc8.tar.gz 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
-rw-r--r-- | firmware/pcm_playback.c | 4 |
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) | |||
85 | #endif | 85 | #endif |
86 | 86 | ||
87 | /* Set up DMA transfer */ | 87 | /* Set up DMA transfer */ |
88 | SAR0 = ((unsigned long)addr); /* Source address */ | 88 | SAR0 = (unsigned long)addr; /* Source address */ |
89 | DAR0 = (unsigned long)&PDOR3; /* Destination address */ | 89 | DAR0 = (unsigned long)&PDOR3; /* Destination address */ |
90 | BCR0 = size; /* Bytes to transfer */ | 90 | BCR0 = size; /* Bytes to transfer */ |
91 | 91 | ||
@@ -95,7 +95,7 @@ static void dma_start(const void *addr, size_t size) | |||
95 | #ifdef HAVE_SPDIF_OUT | 95 | #ifdef HAVE_SPDIF_OUT |
96 | EBU1CONFIG = EBU_DEFPARM; | 96 | EBU1CONFIG = EBU_DEFPARM; |
97 | #endif | 97 | #endif |
98 | DCR0 = DMA_INT | DMA_EEXT | DMA_CS | DMA_SINC | DMA_START; | 98 | DCR0 = DMA_INT | DMA_EEXT | DMA_CS | DMA_AA | DMA_SINC | (3 << 20) | DMA_START; |
99 | } | 99 | } |
100 | 100 | ||
101 | /* Stops the DMA transfer and interrupt */ | 101 | /* Stops the DMA transfer and interrupt */ |