LittleSaints
LittleSaints

Reputation: 421

WM8731 correctly set doesn't detected in Embedded Linux

On a SoM imx6-based with wm8731 on board, I set it in device tree:

    sound {
        compatible = "fsl,imx-audio-wm8731";
        model = "wm8731-audio";
        cpu-dai = <&sai2>;
        audio-codec = <&codec>;
        audio-routing =
            "Headphone Jack",   "LHPOUT",
            "Headphone Jack",   "RHPOUT",
            "LLINEIN",      "Line Jack",
            "RLINEIN",      "Line Jack";
    };

&i2c2 {
    clock_frequency = <100000>;
    pinctrl-names = "default";
    pinctrl-0 = <&pinctrl_i2c2>;
    status = "okay";

    codec: wm8731@1a {
        compatible = "wlf,wm8731"; /* codec audio */
        reg = <0x1a>;
        clocks = <&clks IMX6UL_CLK_SAI2>;
        clock-names = "mclk";
    }; /* fine codec: wm8731@1a */

I activate also in menuconfig, inside the appropriate audio section. During the initial bootlog, this message appears:

wm8731 1-001a: Failed to issue reset: -5
wm8731 1-001a: ASoC: failed to probe component -5
imx-wm8731 sound: ASoC: failed to instantiate card -5
imx-wm8731 sound: snd_soc_register_card failed (-5)
imx-wm8731: probe of sound failed with error -5

So, I have two different SoM: one works with no problem, the other one shows the error mentioned. It seems to be a hardware problem, but if I place the wrong board on a different carrier board, it sounds perfectly. Same, U-Boot, same SPL, same dtb file, same zImage. I don't know how to proceed to inspect. Any suggestion?

Upvotes: 0

Views: 69

Answers (0)

Related Questions