瑞芯微Rockchip开发者社区
直播中

北京烤鸭

12年用户 617经验值
私信 关注
[问答]

wm8960挂载在I2C2上匹配不了驱动这是为什么

我用的是IMX6Q+linux4.1.15内核版本,在设备树文件imx6qdl-sabresd.dtsi 中做修改, wm8960挂载在I2C1上工作正常,挂载在I2C2上匹配不了驱动,wm8960.c中probe未执行,请帮忙分析下原因,谢谢


回帖(3)

李海

2022-1-7 09:26:16
检查一下使用的i2c2的引脚是否有其他复用,是否有其他驱动
举报

杨海清

2022-1-7 09:26:58
你好,我们现在单独在I2C1上挂载WM8960可以正常工作,单独在I2C2上挂载WM8960也可以工作。但是如果在设备树同时添加两路WM8960的话,两路声卡均不能工作了,打印的log如下,还请帮忙分析下原因,谢谢。
[    3.129137] wm8960_probe:running...
[    3.132723] wm8960_probe:device name =1-001a
[    3.140748] imx-wm8960 sound@1: wm8960-hifi <-> 202c000.ssi mapping ok
[    3.152121] imx-wm8960 sound@1: snd-soc-dummy-dai <-> 2034000.asrc mapping ok
[    3.159403] imx-wm8960 sound@1: wm8960-hifi <-> 202c000.ssi mapping ok
[    3.277014] soc_init_card_debugfs:card->name=wm8960-audio
[    3.282526] imx-wm8960 sound@2: ASoC: Failed to create card debugfs directory
[    3.289729] wm8960_probe:running...
[    3.293315] wm8960_probe:device name =0-001a
[    3.300767] imx-wm8960 sound@2: wm8960-hifi <-> 2028000.ssi mapping ok
[    3.310975] imx-wm8960 sound@2: snd-soc-dummy-dai <-> 2034000.asrc mapping ok
[    3.318269] imx-wm8960 sound@2: wm8960-hifi <-> 2028000.ssi mapping ok
[    3.324911] imx-wm8960 sound@2: ASoC: no AA widget found for ASRC-Playback
[    3.332150] imx-wm8960 sound@2: ASoC: Failed to add route ASRC-Playback -> direct -> CPU-Playback
[    3.341057] imx-wm8960 sound@2: ASoC: no sink widget found for ASRC-Capture
[    3.348047] imx-wm8960 sound@2: ASoC: Failed to add route CPU-Capture -> direct -> ASRC-Capture





  • 我们硬件威廉希尔官方网站 上做了两路WM8960分别挂载了I2C1和I2C2上。刚才已经试过设备树中设置不同的model,名字不冲突了,但是看log中依然找不到audio-routing =    中的一些东西。以下是两路声卡的设备树以及打印的log

    &mx6sound {
            compatible = "fsl,imx6q-sabresd-wm8960",
            "fsl,imx-audio-wm8960";
            model = "wm8960-audio";
            status="okay";
          
            audio-codec = <&codec2>;
            cpu-dai = <&ssi1>;
            mux-int-port = <1>;
            mux-ext-port = <3>;
          
            audio-routing =
            "Headphone Jack", "HP_L",
            "Headphone Jack", "HP_R",
            "Ext Spk", "SPK_RP",
            "Ext Spk", "SPK_RN",
            "Ext Spk", "SPK_LP",
            "Ext Spk", "SPK_LN",
            "AMIC", "MICB",
            "LINPUT1", "AMIC",
            "LINPUT2", "AMIC",
            "RINPUT1", "AMIC",
            "RINPUT2", "AMIC",
            "LINPUT3", "AMIC",
            "RINPUT3", "AMIC",
            "DMIC", "MICB",
            "LINPUT1", "DMIC",
            "LINPUT2", "DMIC",
            "RINPUT1", "DMIC",
            "RINPUT2", "DMIC",
            "CPU-Playback", "ASRC-Playback",
            "Playback", "CPU-Playback",
            "ASRC-Capture", "CPU-Capture",
            "CPU-Capture", "Capture";
            hp-det-gpios = <&gpio7 8 0>;
          

    };


    &mx6sound2 {
            compatible = "fsl,imx6q-sabresd-wm8960",
            "fsl,imx-audio-wm8960";
            model = "wm8960_2-audio";
            status="okay";
          
            audio-codec = <&codec3>;
            cpu-dai = <&ssi2>;
            mux-int-port = <2>;
            mux-ext-port = <4>;
          
          
            audio-routing =
            "Headphone Jack", "HP_L",
            "Headphone Jack", "HP_R",
            "Ext Spk", "SPK_RP",
            "Ext Spk", "SPK_RN",
            "Ext Spk", "SPK_LP",
            "Ext Spk", "SPK_LN",
            "AMIC", "MICB",
            "LINPUT1", "AMIC",
            "LINPUT2", "AMIC",
            "RINPUT1", "AMIC",
            "RINPUT2", "AMIC",
            "LINPUT3", "AMIC",
            "RINPUT3", "AMIC",
            "DMIC", "MICB",
            "LINPUT1", "DMIC",
            "LINPUT2", "DMIC",
            "RINPUT1", "DMIC",
            "RINPUT2", "DMIC",
            "CPU-Playback", "ASRC-Playback",
            "Playback", "CPU-Playback",
            "ASRC-Capture", "CPU-Capture",
            "CPU-Capture", "Capture";
            hp-det-gpios = <&gpio7 8 0>;
          

    };



    [    3.099207] wm8960_i2c_probe excuted
    [    3.099207]
    [    3.099207]
    [    3.118430] fsl-asrc 2034000.asrc: driver registered
    [    3.126094] fsl-hdmi-dai soc:hdmi_audio@00120000: failed to probe. Load HDMI-video first.
    [    3.134320] fsl-hdmi-dai: probe of soc:hdmi_audio@00120000 failed with error -12
    [    3.143608] soc_init_card_debugfs:card->name=wm8960-audio
    [    3.149196] wm8960_probe:running...
    [    3.152783] wm8960_probe:device name =0-001a
    [    3.160834] imx-wm8960 sound@1: wm8960-hifi <-> 2028000.ssi mapping ok
    [    3.172171] imx-wm8960 sound@1: snd-soc-dummy-dai <-> 2034000.asrc mapping ok
    [    3.179467] imx-wm8960 sound@1: wm8960-hifi <-> 2028000.ssi mapping ok
    [    3.297108] soc_init_card_debugfs:card->name=wm8960_2-audio
    [    3.302893] wm8960_probe:running...
    [    3.306517] wm8960_probe:device name =1-001a
    [    3.313991] imx-wm8960 sound@2: wm8960-hifi <-> 202c000.ssi mapping ok
    [    3.324210] imx-wm8960 sound@2: snd-soc-dummy-dai <-> 2034000.asrc mapping ok
    [    3.331479] imx-wm8960 sound@2: wm8960-hifi <-> 202c000.ssi mapping ok
    [    3.338125] imx-wm8960 sound@2: ASoC: no source widget found for ASRC-Playback
    [    3.345381] imx-wm8960 sound@2: ASoC: Failed to add route ASRC-Playback -> direct -> CPU-Playback
    [    3.354290] imx-wm8960 sound@2: ASoC: no sink widget found for ASRC-Capture
    [    3.361264] imx-wm8960 sound@2: ASoC: Failed to add route CPU-Capture -> direct -> ASRC-Capture

举报

张红玲

2022-1-7 09:27:02
目前WM8960输出一路用在耳机另一路用在音响,您看看是不是您设置两路声卡设置的不对,有冲突
举报

更多回帖

发帖
×
20
完善资料,
赚取积分