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.

AM5728: Audio playback error

Expert 2990 points
Other Parts Discussed in Thread: TLV320AIC3120, AM5728

HI all:

        Just now we want to use the tlv320aic3120 for audio playback on the am5728 custom board.

         When we configured the devicetree, the kernel will reporter error like below

         ## aic31xx_set_dai_sysclk: clk_id = 0, freq = 22579200, dir = 0

        tlv320aic31xx-codec 0-0018: aic31xx_set_dai_sysclk: Unsupported frequency 22579200

        My devicetree is like below:

sound0: sound@0 {
               compatible = "simple-audio-card";
               simple-audio-card,name = "custom";
               simple-audio-card,widgets =
                "Headphone", "Headphone Jack",
                "Speaker", "Speaker";
              simple-audio-card,routing =
                "Headphone Jack", "HPL",
                "Headphone Jack", "HPR",
                "Speaker", "SPL",
                "Speaker", "SPR";
                 simple-audio-card,format = "i2s";
                 simple-audio-card,bitclock-master = <&sound0_master>;
                 simple-audio-card,frame-master = <&sound0_master>;
                 simple-audio-card,cpu {
                               sound-dai = <&mcasp3>;
                  };

                 sound0_master: simple-audio-card,codec {
                             sound-dai = <&tlv320aic3120>;
                             clocks = <&clkout2_clk>;
                 };
      };

tlv320aic3120: tlv320aic3120@18 {
                   #sound-dai-cells = <0>;
                    compatible = "ti,tlv320aic3120";
                   reg = <0x18>;
                   assigned-clocks = <&clkoutmux2_clk_mux>;
                   assigned-clock-parents = <&sys_clk2_dclk_div>;

                             adc-settle-ms = <40>;
                             SPRVDD-supply = <&vdd_3v3>;
                             SPLVDD-supply = <&vdd_3v3>;
                             AVDD-supply = <&vdd_3v3>;
                            IOVDD-supply = <&vdd_3v3>;
                           DRVDD-supply = <&vdd_3v3>;
                            DVDD-supply = <&aic_dvdd>;

                           status = "okay";
            };

in the hardware, we used the pin clkout2 to generate the mclk to tlv320aic3120?

So how can we change the clkout2 to 12MHZ or 24MHZ in the devicetree

Thanks

regards