This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

TLV320AIC3107: TLV320AIC3107

Part Number: TLV320AIC3107

Tool/software:

Hi, I am trying to play a tone out of Class-D using speaker-test and have no sound.  Here is the relevant information ...

From the functional block diagram, my routing and attempt to play a tone:

amixer set "Line DAC,0" 65
amixer set PCM,0 65
amixer set "Left Line Mixer DACL1,0 Switch" off
amixer set "Left Line Mixer DACR1,0 Switch" off
amixer set "Left Line Mixer Line2L Bypass,0 Switch" off
amixer set "Left Line Mixer Line2R Bypass,0 Switch" off
amixer set "Left Line Mixer PGAL Bypass,0 Switch" off
amixer set "Left Line Mixer PGAR Bypass,0 Switch" off
 
amixer set "Left DAC Mux,0" DAC_L3
 
# Initialize Class-D Amp
amixer set 'Class-D' 3
 
# Run speaker-test
speaker-test -D hw:0,0 -t sine -f 800 -c 2

I get a pop on the speaker at the start of the test and another after I stop the test but that's it.

Thank you.

================================================================

Information from my device tree if needed:

sound-tlv320 {
compatible = "fsl,imx-audio-tlv320";
model = "imx-tlv320";
audio-cpu = <&sai1>;
audio-codec = <&tlv320aic3107_1>;
audio-routing =
"Speaker Positive", "SPOP",
"Speaker Negative", "SPOM";
};

&i2c3 {
clock-frequency = <100000>;
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_i2c3>;
status = "okay";

tlv320aic3107_1: tlv320aic3107_1@18 {
#sound-dai-cells = <0>;
compatible = "ti,tlv320aic3x";
reg = <0x18>;
tdm-offset = <0>;
gpio-reset = <&gpio1 15 GPIO_ACTIVE_LOW>;
clocks = <&clks IMX7D_OSC_24M_CLK>;
clock-names = "mclk";
status = "okay";
/* Regulators */
ai3x-ocmv = <3>;
IOVDD-supply = <&reg_3p3v>; /* I/O Voltage */
DVDD-supply = <&reg_3p3v>; /* Digital Core Voltage */
AVDD-supply = <&reg_3p3v>; /* Analog DAC Voltage */
DRVDD-supply = <&reg_3p3v>; /* ADC Analog and Output Driver Voltage */
};
};

&sai1 {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_sai1>;
assigned-clocks = <&clks IMX7D_SAI1_ROOT_SRC>,
<&clks IMX7D_SAI1_ROOT_CLK>;
assigned-clock-parents = <&clks IMX7D_PLL_AUDIO_POST_DIV>;
assigned-clock-rates = <0>, <36864000>;
status = "okay";
};

pinctrl_sai1: sai1grp {
fsl,pins = <
MX7D_PAD_SAI1_MCLK__GPIO6_IO18 0xd6
MX7D_PAD_SAI1_RX_BCLK__GPIO6_IO17 0xd6
MX7D_PAD_SAI1_RX_SYNC__GPIO6_IO16 0xd6
MX7D_PAD_SAI1_TX_DATA__GPIO6_IO15 0xd6
MX7D_PAD_SAI1_TX_SYNC__GPIO6_IO14 0xd6
MX7D_PAD_SAI1_TX_BCLK__GPIO6_IO13 0xd6
MX7D_PAD_SAI1_RX_DATA__GPIO6_IO12 0xd6
MX7D_PAD_GPIO1_IO15__GPIO1_IO15 0xd6
>;
};