Procházet zdrojové kódy

ASoC: rt5682: Fix the boost volume at the begining of playback

This patch fixed the boost volume at the begining of playback
while DAC volume set to lower level.

Signed-off-by: Shuming Fan <shumingf@realtek.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
Shuming Fan před 6 roky
rodič
revize
28b20dde5e
1 změnil soubory, kde provedl 5 přidání a 0 odebrání
  1. 5 0
      sound/soc/codecs/rt5682.c

+ 5 - 0
sound/soc/codecs/rt5682.c

@@ -68,6 +68,7 @@ struct rt5682_priv {
 
 
 static const struct reg_sequence patch_list[] = {
 static const struct reg_sequence patch_list[] = {
 	{0x01c1, 0x1000},
 	{0x01c1, 0x1000},
+	{RT5682_DAC_ADC_DIG_VOL1, 0xa020},
 };
 };
 
 
 static const struct reg_default rt5682_reg[] = {
 static const struct reg_default rt5682_reg[] = {
@@ -1468,6 +1469,8 @@ static int rt5682_hp_event(struct snd_soc_dapm_widget *w,
 			RT5682_HP_CTRL_2, 0x6000);
 			RT5682_HP_CTRL_2, 0x6000);
 		snd_soc_component_update_bits(component,
 		snd_soc_component_update_bits(component,
 			RT5682_DEPOP_1, 0x60, 0x60);
 			RT5682_DEPOP_1, 0x60, 0x60);
+		snd_soc_component_update_bits(component,
+			RT5682_DAC_ADC_DIG_VOL1, 0x00c0, 0x0080);
 		break;
 		break;
 
 
 	case SND_SOC_DAPM_POST_PMD:
 	case SND_SOC_DAPM_POST_PMD:
@@ -1475,6 +1478,8 @@ static int rt5682_hp_event(struct snd_soc_dapm_widget *w,
 			RT5682_DEPOP_1, 0x60, 0x0);
 			RT5682_DEPOP_1, 0x60, 0x0);
 		snd_soc_component_write(component,
 		snd_soc_component_write(component,
 			RT5682_HP_CTRL_2, 0x0000);
 			RT5682_HP_CTRL_2, 0x0000);
+		snd_soc_component_update_bits(component,
+			RT5682_DAC_ADC_DIG_VOL1, 0x00c0, 0x0000);
 		break;
 		break;
 
 
 	default:
 	default: