From 743b40f9bdf0f1421c1469b3e69d5eed7711ffda Mon Sep 17 00:00:00 2001 From: luoxt Date: Tue, 18 Aug 2015 16:47:43 +0800 Subject: [PATCH] ASoC: rk312x: fix rk3128 codec right channel output changed codec register order according to IP datasheet to fix right channel no output when low volume Signed-off-by: luoxt Signed-off-by: Sugar Zhang --- sound/soc/codecs/rk312x_codec.c | 28 +++++++++++++++++++++------- 1 file changed, 21 insertions(+), 7 deletions(-) diff --git a/sound/soc/codecs/rk312x_codec.c b/sound/soc/codecs/rk312x_codec.c index 38023cf823cc..1322702e8075 100755 --- a/sound/soc/codecs/rk312x_codec.c +++ b/sound/soc/codecs/rk312x_codec.c @@ -1736,20 +1736,34 @@ static struct rk312x_reg_val_typ playback_power_up_list[] = { {0x18, 0x32}, {0xa0, 0x40|0x08}, {0xa0, 0x62|0x08}, + + {0xb4, 0x80}, + {0xb8, 0x80}, + {0xa8, 0x44}, + {0xa8, 0x55}, + + {0xb0, 0x82}, + {0xb0, 0xc3}, + {0xa4, 0x88}, {0xa4, 0xcc}, {0xa4, 0xee}, - {0xa8, 0x44}, - {0xb0, 0x92}, - {0xb0, 0xdb}, + {0xa4, 0xff}, + + /* {0xa8, 0x44}, */ + /* {0xb0, 0x92}, */ + /* {0xb0, 0xdb}, */ {0xac, 0x11}, /*DAC*/ - {0xa8, 0x55}, + /* {0xa8, 0x55}, */ {0xa8, 0x77}, - {0xa4, 0xff}, - {0xb0, 0xff}, - {0xa0, 0x73|0x08}, + + {0xb0, 0xee}, + {0xb4, OUT_VOLUME}, {0xb8, OUT_VOLUME}, + /* {0xb0, 0xff}, */ + {0xb0, 0xff}, + {0xa0, 0x73|0x08}, }; #define RK312x_CODEC_PLAYBACK_POWER_UP_LIST_LEN ARRAY_SIZE( \ playback_power_up_list) -- 2.34.1