diff options
Diffstat (limited to 'firmware/target/arm/tms320dm320/mrobe-500')
-rw-r--r-- | firmware/target/arm/tms320dm320/mrobe-500/pcm-mr500.c | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/firmware/target/arm/tms320dm320/mrobe-500/pcm-mr500.c b/firmware/target/arm/tms320dm320/mrobe-500/pcm-mr500.c index 91d6b66130..d23c93de39 100644 --- a/firmware/target/arm/tms320dm320/mrobe-500/pcm-mr500.c +++ b/firmware/target/arm/tms320dm320/mrobe-500/pcm-mr500.c | |||
@@ -33,7 +33,7 @@ | |||
33 | /* This is global to save some latency when pcm_play_dma_get_peak_buffer is | 33 | /* This is global to save some latency when pcm_play_dma_get_peak_buffer is |
34 | * called. | 34 | * called. |
35 | */ | 35 | */ |
36 | static void *start; | 36 | static const void *start; |
37 | 37 | ||
38 | void pcm_play_dma_postinit(void) | 38 | void pcm_play_dma_postinit(void) |
39 | { | 39 | { |
@@ -164,9 +164,7 @@ void DSPHINT(void) | |||
164 | 164 | ||
165 | case MSG_REFILL: | 165 | case MSG_REFILL: |
166 | /* Buffer empty. Try to get more. */ | 166 | /* Buffer empty. Try to get more. */ |
167 | pcm_play_get_more_callback(&start, &size); | 167 | if (pcm_play_dma_complete_callback(PCM_DMAST_OK, &start, &size)) |
168 | |||
169 | if (size != 0) | ||
170 | { | 168 | { |
171 | unsigned long sdem_addr=(unsigned long)start - CONFIG_SDRAM_START; | 169 | unsigned long sdem_addr=(unsigned long)start - CONFIG_SDRAM_START; |
172 | /* Flush any pending cache writes */ | 170 | /* Flush any pending cache writes */ |
@@ -180,7 +178,7 @@ void DSPHINT(void) | |||
180 | DEBUGF("pcm_sdram at 0x%08lx, sdem_addr 0x%08lx", | 178 | DEBUGF("pcm_sdram at 0x%08lx, sdem_addr 0x%08lx", |
181 | (unsigned long)start, (unsigned long)sdem_addr); | 179 | (unsigned long)start, (unsigned long)sdem_addr); |
182 | 180 | ||
183 | pcm_play_dma_started_callback(); | 181 | pcm_play_dma_status_callback(PCM_DMAST_STARTED); |
184 | } | 182 | } |
185 | 183 | ||
186 | break; | 184 | break; |