always reset the pcm_paused flag when stopping playback. fixes FS #7187

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13423 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
Marcoen Hirschberg 2007-05-19 19:30:08 +00:00
parent 94a372524a
commit eb7603f1c5
4 changed files with 4 additions and 2 deletions

View file

@ -78,6 +78,7 @@ void pcm_play_dma_start(const void *addr, size_t size)
void pcm_play_dma_stop(void) void pcm_play_dma_stop(void)
{ {
pcm_playing = false; pcm_playing = false;
pcm_paused = false;
} }
void pcm_play_pause_pause(void) void pcm_play_pause_pause(void)

View file

@ -248,6 +248,7 @@ void pcm_play_dma_start(const void *addr, size_t size)
void pcm_play_dma_stop(void) void pcm_play_dma_stop(void)
{ {
pcm_playing = false; pcm_playing = false;
pcm_paused = false;
#if CONFIG_CPU == PP5020 || CONFIG_CPU == PP5024 #if CONFIG_CPU == PP5020 || CONFIG_CPU == PP5024

View file

@ -167,6 +167,7 @@ static void pcm_play_dma_stop_fiq(void)
while (IISCON & (1<<7)) ; while (IISCON & (1<<7)) ;
pcm_playing = false; pcm_playing = false;
pcm_paused = false;
} }
/* De-Activate the DMA channel */ /* De-Activate the DMA channel */

View file

@ -216,6 +216,7 @@ void pcm_play_dma_start(const void *addr, size_t size)
static void pcm_play_dma_stop_irq(void) static void pcm_play_dma_stop_irq(void)
{ {
pcm_playing = false; pcm_playing = false;
pcm_paused = false;
DSR0 = 1; DSR0 = 1;
DCR0 = 0; DCR0 = 0;
@ -223,8 +224,6 @@ static void pcm_play_dma_stop_irq(void)
/* Place TX FIFO in reset condition if playback monitoring is on. /* Place TX FIFO in reset condition if playback monitoring is on.
Recording monitoring something else should not be stopped. */ Recording monitoring something else should not be stopped. */
iis_play_reset_if_playback(true); iis_play_reset_if_playback(true);
pcm_playing = false;
} /* pcm_play_dma_stop_irq */ } /* pcm_play_dma_stop_irq */
void pcm_play_dma_stop(void) void pcm_play_dma_stop(void)