TLV320AIC3101: Audio issue from left speaker.

Part Number: TLV320AIC3101

Tool/software:

we have issue with speaker, we have connected two speakers across, right speaker working fine, but left speaker not able listen when i set to full volume some low music able here, below is the ckt and i2c dump.



Bellow is my dts 

sound-tlv320aic310x {
compatible = "simple-audio-card";
simple-audio-card,name = "sound-tlv320aic310x";
simple-audio-card,format = "i2s";
simple-audio-card,bitclock-master = <&cpudai2>;
simple-audio-card,frame-master = <&cpudai2>;
/* simple-audio-card,mclk-fs = <256>;*/
simple-audio-card,widgets =
"Microphone", "Microphone Jack",
"Line", "Line In Jack",
"Line", "Line Out Jack",
"Headphone", "Headphone Jack",
"Speaker", "Speaker External",
"Line", "POTS Line In",
"Line", "External Mic";
simple-audio-card,routing =
"Headphone Jack", "HPLOUT",
"Headphone Jack", "HPROUT",
"LINE2R", "POTS Line In",
"Line Out Jack", "LLOUT",
"Line Out Jack", "RLOUT";

cpudai2:simple-audio-card,cpu {
sound-dai = <&sai3>;
clocks = <&clk IMX8MP_CLK_SAI3_ROOT>;
dai-tdm-slot-num = <2>;
dai-tdm-slot-width = <32>;
dai-tdm-slot-tx-mask = <0 0 0 0 0 0 0 0>;
dai-tdm-slot-rx-mask = <1 1 1 1 0 0 0 0>;
};
simple-audio-card,codec {
sound-dai = <&codec>;
/*clocks = <&audio_blk_ctrl IMX8MP_CLK_AUDIO_BLK_CTRL_SAI3_MCLK1>; */
clocks = <&clk IMX8MP_CLK_SAI3_ROOT>;
};
};
codec: codec@18 {
#sound-dai-cells=<0>;
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_tlv320>;
compatible = "ti,tlv320aic3x";
reg = <0x18>;
reset-gpios = <&gpio1 10 GPIO_ACTIVE_LOW>;
ai31xx-micbias-vg = <MICBIAS_2_0V>;
/* ai31xx-micbias-vg = <MICBIAS_AVDDV>; */
IOVDD-supply = <&buck5>;
DVDD-supply = <&buck5>;
AVDD-supply = <&buck4>;
DRVDD-supply = <&buck4>;
};

&sai3 {
#sound-dai-cells = <0>;
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_sai3>;
assigned-clocks = <&clk IMX8MP_CLK_SAI3>;
assigned-clock-parents = <&clk IMX8MP_AUDIO_PLL1_OUT>;
assigned-clock-rates = <24576000>;
clocks = <&audio_blk_ctrl IMX8MP_CLK_AUDIO_BLK_CTRL_SAI3_IPG>, <&clk IMX8MP_CLK_DUMMY>,
<&audio_blk_ctrl IMX8MP_CLK_AUDIO_BLK_CTRL_SAI3_MCLK1>, <&clk IMX8MP_CLK_DUMMY>,
<&clk IMX8MP_CLK_DUMMY>, <&clk IMX8MP_AUDIO_PLL1_OUT>, <&clk IMX8MP_AUDIO_PLL2_OUT>;
clock-names = "bus", "mclk0", "mclk1", "mclk2", "mclk3", "pll8k", "pll11k";
fsl,sai-mclk-direction-output;
/*fsl,sai-synchronous-rx;*/
status = "okay";
};

pinctrl_tlv320: tlv320grp {
fsl,pins = <
MX8MP_IOMUXC_GPIO1_IO10__GPIO1_IO10 0x00
>;
};

pinctrl_sai3: sai3grp {
fsl,pins = <
MX8MP_IOMUXC_SAI3_TXFS__AUDIOMIX_SAI3_TX_SYNC 0xd6
MX8MP_IOMUXC_SAI3_TXC__AUDIOMIX_SAI3_TX_BCLK 0xd6
MX8MP_IOMUXC_SAI3_RXD__AUDIOMIX_SAI3_RX_DATA00 0xd6
MX8MP_IOMUXC_SAI3_TXD__AUDIOMIX_SAI3_TX_DATA00 0xd6
MX8MP_IOMUXC_SAI3_MCLK__AUDIOMIX_SAI3_MCLK 0xd6
MX8MP_IOMUXC_SAI3_RXFS__GPIO4_IO28 0xd6
MX8MP_IOMUXC_SAI3_RXC__GPIO4_IO29 0xd6
>;
};


  • Hi,

    Many of our engineers are out of office this week, expect a response early next week.

    Thanks for your patience

  • Hi,

    Thank you for your patience. I have a couple of suggestions.

    Your schematic is cut off in the picture, so I can't see the speaker connection. Have you tried swapping the speaker connections to verify the issue is with the codec?

    From what I can see in the register dump, your right DAC is muted, and your left DAC is set with -7.5dB gain. Try unmuting both DACs and setting both gains to 0dB.

    Do you have the I2C script you are using to configure the device? Register dumps are hard to make out your intended configuration.

    Best regards,
    Jeff McPherson