mirror of
https://github.com/hardkernel/linux.git
synced 2026-06-09 12:17:12 +09:00
rk610 codec : add adjust Analog Gain define
This commit is contained in:
@@ -57,20 +57,22 @@
|
||||
#define DBG(x...)
|
||||
#endif
|
||||
|
||||
//it can change rk610 output volume
|
||||
//0x0000 ~ 0xFFFF
|
||||
//rk610 output volume,DAC Digital Gain
|
||||
//0x0000 ~ 0xF42
|
||||
#define Volume_Output 0xF42
|
||||
//it can change rk610 input volume
|
||||
//0x00 ~ 0x0E
|
||||
//0x0 ~ 0x3f(bit0-bit5) max=0x0(+6DB) min=0x3f(-60DB) //Analog Gain
|
||||
#define Volume_Codec_PA 0x0
|
||||
|
||||
//rk610 input volume,rk610 can not adjust the recording volume
|
||||
#define Volume_Input 0x07
|
||||
|
||||
|
||||
|
||||
#define OUT_CAPLESS (1) //<2F>Ƿ<EFBFBD>Ϊ<EFBFBD><EFBFBD><DEB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1:<3A><EFBFBD><DEB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0:<3A>е<EFBFBD><D0B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
|
||||
static u32 gVolReg = 0x00; ///0x0f; //<2F><><EFBFBD>ڼ<EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD>Ĵ<EFBFBD><C4B4><EFBFBD>
|
||||
//static u32 gCodecVol = 0x0f;
|
||||
static u8 gR0AReg = 0; //<2F><><EFBFBD>ڼ<EFBFBD>¼R0A<30>Ĵ<EFBFBD><C4B4><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD><EFBFBD>ڸı<DAB8><C4B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰͨ<C7B0><CDA8>R0Aֹͣclk
|
||||
static u8 gR0BReg = 0; //<2F><><EFBFBD>ڼ<EFBFBD>¼R0B<30>Ĵ<EFBFBD><C4B4><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD><EFBFBD>ڸı<DAB8><C4B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰͨ<C7B0><CDA8>R0Bֹͣinterplate<74><65>decimation
|
||||
//static u8 gR1314Reg = 0; //<2F><><EFBFBD>ڼ<EFBFBD>¼R13,R14<31>Ĵ<EFBFBD><C4B4><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>FM<46><4D><EFBFBD><EFBFBD>Ϊ0ʱ
|
||||
|
||||
|
||||
/*
|
||||
* rk610 register cache
|
||||
@@ -661,8 +663,8 @@ static int rk610_codec_mute(struct snd_soc_dai *dai, int mute)
|
||||
{
|
||||
// rk610_codec_write(codec,ACCELCODEC_R1D, 0x2a); //setup Vmid and Vref, other module power down
|
||||
// rk610_codec_write(codec,ACCELCODEC_R1E, 0x40); ///|ASC_PDASDML_ENABLE);
|
||||
rk610_codec_write(codec,ACCELCODEC_R17, gVolReg|ASC_OUTPUT_ACTIVE|ASC_CROSSZERO_EN); //AOL gVolReg|ASC_OUTPUT_ACTIVE|ASC_CROSSZERO_EN); //AOL
|
||||
rk610_codec_write(codec,ACCELCODEC_R18, gVolReg|ASC_OUTPUT_ACTIVE|ASC_CROSSZERO_EN); //gVolReg|ASC_OUTPUT_ACTIVE|ASC_CROSSZERO_EN); //AOR
|
||||
rk610_codec_write(codec,ACCELCODEC_R17, Volume_Codec_PA|ASC_OUTPUT_ACTIVE|ASC_CROSSZERO_EN); //AOL Volume_Codec_PA|ASC_OUTPUT_ACTIVE|ASC_CROSSZERO_EN); //AOL
|
||||
rk610_codec_write(codec,ACCELCODEC_R18, Volume_Codec_PA|ASC_OUTPUT_ACTIVE|ASC_CROSSZERO_EN); //Volume_Codec_PA|ASC_OUTPUT_ACTIVE|ASC_CROSSZERO_EN); //AOR
|
||||
rk610_codec_write(codec,ACCELCODEC_R04, ASC_INT_ACTIVE_L|ASC_INT_ACTIVE_R|ASC_SIDETONE_L_OFF|ASC_SIDETONE_R_OFF);
|
||||
rk610_codec_write(codec,ACCELCODEC_R19, 0x7F); //AOM
|
||||
msleep(300);
|
||||
|
||||
Reference in New Issue
Block a user