fix codec DS mode bug.

change SND default frequency into 47kHz

git-svn-id: file:///Users/lillianskinner/Downloads/platinum/twl/twl_wrapsdk/trunk@141 4ee2a332-4b2b-5046-8439-1ba90f034370
This commit is contained in:
yutaka 2007-06-28 05:06:02 +00:00
parent 7d81fcc01a
commit d1debeea40
3 changed files with 17 additions and 4 deletions

View File

@ -46,8 +46,12 @@ static void SNDi_I2SInit(void)
if (reg_CFG_TWL_EX & REG_CFG_TWL_EX_I2S_MASK)
{
isTwl = TRUE;
reg_SND_I2SCNT |= REG_SND_I2SCNT_MIX_RATIO_MASK;
reg_SND_I2SCNT &= ~(REG_SND_I2SCNT_MUTE_MASK | REG_SND_I2SCNT_CODEC_SMP_MASK); // 32KHz
// 32KHz
// reg_SND_I2SCNT |= REG_SND_I2SCNT_MIX_RATIO_MASK;
// reg_SND_I2SCNT &= ~(REG_SND_I2SCNT_MUTE_MASK | REG_SND_I2SCNT_CODEC_SMP_MASK);
// 48KHz
reg_SND_I2SCNT |= REG_SND_I2SCNT_MIX_RATIO_MASK | REG_SND_I2SCNT_CODEC_SMP_MASK;
reg_SND_I2SCNT &= ~(REG_SND_I2SCNT_MUTE_MASK);
}
if ((reg_CFG_CLK & REG_CFG_CLK_SND_MASK) == 0)
{

View File

@ -29,7 +29,7 @@
*---------------------------------------------------------------------------*/
static OSHeapHandle InitializeAllocateSystem(void);
static void VBlankIntr(void);
#include <twl/cdc.h> // for DS-mode
/*---------------------------------------------------------------------------*
Name: TwlSpMain
@ -56,6 +56,14 @@ void TwlSpMain(void)
// サウンド初期化
SND_Init(THREAD_PRIO_SND);
#if 0
// DS mode
SND_Disable();
reg_SND_I2SCNT &= ~REG_SND_I2SCNT_CODEC_SMP_MASK; // 32kHz
SND_Enable();
CDC_GoDsMode();
#endif
// reg_CFG_DS_MDFY |= REG_CFG_DS_MDFY_SND_MASK; // SOUND回路バグ修正 (default: off)
// reg_CFG_DS_MDFY |= REG_CFG_DS_MDFY_SDMA_MASK; // SOUND-DMAバグ修正 (default: off)
// reg_CFG_DS_EX &= ~REG_CFG_DS_EX_SDMA2_MASK; // SOUND-DMA新回路 (default: on)

View File

@ -82,7 +82,8 @@ static inline void CDCi_DsmodeChangeSpiMode( SPITransMode continuous )
{
reg_SPI_SPICNT = (u16)((1 << REG_SPI_SPICNT_E_SHIFT) |
(0 << REG_SPI_SPICNT_I_SHIFT) |
(SPI_COMMPARTNER_TP << REG_SPI_SPICNT_SEL_SHIFT) |
// (SPI_COMMPARTNER_TP << REG_SPI_SPICNT_SEL_SHIFT) |
(SPI_COMMPARTNER_PMIC << REG_SPI_SPICNT_SEL_SHIFT) |
(continuous << REG_SPI_SPICNT_MODE_SHIFT) |
(CDCi_DsmodeGetSPIBaudRate() << REG_SPI_SPICNT_BAUDRATE_SHIFT));
}