mt6735 MT6752平台把Speaker_mode变量设置为AB类,但是输出波形不正确
时间:10-02
整理:3721RD
点击:
[DESCRIPTION]
把 Speaker_mode 变量设置为 AB 类了,但是硬件侧内置功放输出任然是 PWM 波,而不是正玄波.
[SOLUTION]
是由于切换mode的时候不能硬切,需要先disable一下s peaker。
请修改:
mt_soc_codec_speaker_63xx.c
void Speaker_ClassAB_Open(void)
for (i = 0; i < 10; i++)
{
udelay(1000); //wait 10ms for triMMIng
}
//add
Ana_Set_Reg(SPK_CON0, 0x1001, 0xffff); //Turn off trim
Ana_Set_Reg(SPK_CON0, 0x1000, 0xffff); //Turn off spk_en
Ana_Set_Reg(SPK_CON0, 0x1004, 0xffff); // set to class AB mode
//end
Ana_Set_Reg(SPK_CON0, 0x1005, 0xffff); // Turn on spk_en
Ana_Set_Reg(SPK_CON13, 0x0000, 0xffff); //Clock fROM Saw-tooth to Triangular wave
请打patch:ALPS01749071
把 Speaker_mode 变量设置为 AB 类了,但是硬件侧内置功放输出任然是 PWM 波,而不是正玄波.
[SOLUTION]
是由于切换mode的时候不能硬切,需要先disable一下s peaker。
请修改:
mt_soc_codec_speaker_63xx.c
void Speaker_ClassAB_Open(void)
for (i = 0; i < 10; i++)
{
udelay(1000); //wait 10ms for triMMIng
}
//add
Ana_Set_Reg(SPK_CON0, 0x1001, 0xffff); //Turn off trim
Ana_Set_Reg(SPK_CON0, 0x1000, 0xffff); //Turn off spk_en
Ana_Set_Reg(SPK_CON0, 0x1004, 0xffff); // set to class AB mode
//end
Ana_Set_Reg(SPK_CON0, 0x1005, 0xffff); // Turn on spk_en
Ana_Set_Reg(SPK_CON13, 0x0000, 0xffff); //Clock fROM Saw-tooth to Triangular wave
请打patch:ALPS01749071
顶顶顶
路过!