有时候,我们硬件上的解法导致左右声道的逻辑与驱动的设置不一致,导致左右声道反,可以通过修改驱动达到一致性,查看CODEC_DI2S_RXCR1寄存器是修改左右声道的寄存器,按以下修改即可:
--- a/sound/soc/codecs/rk817_codec.c
+++ b/sound/soc/codecs/rk817_codec.c
[url=home.php?mod=space&uid=1999721]@@[/url] -272,7 +272,7 @@ static struct rk817_reg_val_typ playback_power_up_list[] = {
{RK817_CODEC_DI2S_RXCMD_TSD, 0x00},
{RK817_CODEC_DI2S_RSD, 0x00},
/* {RK817_CODEC_DI2S_CKM, 0x00}, */
-
{RK817_CODEC_DI2S_RXCR1, 0x02},
{RK817_CODEC_DI2S_RXCMD_TSD, 0x20},
{RK817_CODEC_DTOP_VUCTIME, 0xf4},
{RK817_CODEC_DDAC_MUTE_MIXCTL, 0x00},
@@ -312,7 +312,7 @@ static struct rk817_reg_val_typ capture_power_up_list[] = {
{RK817_CODEC_DI2S_RXCMD_TSD, 0x00},
{RK817_CODEC_DI2S_RSD, 0x00},
/* {RK817_CODEC_DI2S_CKM, 0x00}, */
-
{RK817_CODEC_DI2S_RXCR1, 0x02},
{RK817_CODEC_DI2S_RXCMD_TSD, 0x20},
{RK817_CODEC_DTOP_VUCTIME, 0xf4},
原作者:botelv
|