forked from len0rd/rockbox
Sansa AMS: disable I2SOUT clocks when playback is stopped
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19343 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
parent
6aa807d321
commit
3e4f3fe70e
1 changed files with 8 additions and 2 deletions
|
@ -66,6 +66,9 @@ static void play_start_pcm(void)
|
||||||
dma_size -= size;
|
dma_size -= size;
|
||||||
dma_start_addr += size;
|
dma_start_addr += size;
|
||||||
|
|
||||||
|
CGU_PERI |= CGU_I2SOUT_APB_CLOCK_ENABLE;
|
||||||
|
CGU_AUDIO |= (1<<11);
|
||||||
|
|
||||||
dma_enable_channel(1, (void*)addr, (void*)I2SOUT_DATA, DMA_PERI_I2SOUT,
|
dma_enable_channel(1, (void*)addr, (void*)I2SOUT_DATA, DMA_PERI_I2SOUT,
|
||||||
DMAC_FLOWCTRL_DMAC_MEM_TO_PERI, true, false, size >> 2, DMA_S1,
|
DMAC_FLOWCTRL_DMAC_MEM_TO_PERI, true, false, size >> 2, DMA_S1,
|
||||||
dma_callback);
|
dma_callback);
|
||||||
|
@ -98,6 +101,9 @@ void pcm_play_dma_stop(void)
|
||||||
{
|
{
|
||||||
dma_disable_channel(1);
|
dma_disable_channel(1);
|
||||||
dma_size = 0;
|
dma_size = 0;
|
||||||
|
|
||||||
|
CGU_PERI &= ~CGU_I2SOUT_APB_CLOCK_ENABLE;
|
||||||
|
CGU_AUDIO &= ~(1<<11);
|
||||||
}
|
}
|
||||||
|
|
||||||
void pcm_play_dma_pause(bool pause)
|
void pcm_play_dma_pause(bool pause)
|
||||||
|
@ -112,8 +118,8 @@ void pcm_play_dma_init(void)
|
||||||
{
|
{
|
||||||
CGU_PERI |= CGU_I2SOUT_APB_CLOCK_ENABLE;
|
CGU_PERI |= CGU_I2SOUT_APB_CLOCK_ENABLE;
|
||||||
|
|
||||||
/* enable I2SO_MCLK, clock source PLLA, minimal frequency */
|
/* clock source PLLA, minimal frequency */
|
||||||
CGU_AUDIO |= (1<<11) | (511<<2) | (1<<0);
|
CGU_AUDIO |= (511<<2) | (1<<0);
|
||||||
|
|
||||||
I2SOUT_CONTROL |= (1<<6) ; /* enable dma */
|
I2SOUT_CONTROL |= (1<<6) ; /* enable dma */
|
||||||
I2SOUT_CONTROL |= (1<<3) ; /* stereo */
|
I2SOUT_CONTROL |= (1<<3) ; /* stereo */
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue