Skip to content

[BUG] Microphone not detected #1870

Closed
Closed

Description

@MayurVirkar

Describe the bug
Unable to detect microphone input

To Reproduce
Upgrade to kernel 5.6

Expected behavior
Microphone to be detected..

Impact
Annoyance..

Environment

  1. Branch name and commit hash of the 2 repositories: sof (firmware/topology) and linux (kernel driver).
    • Kernel: 5.6.0-rc4-1-mainline
    • SOF: 1.4.2-1

Screenshots or console output
Dmesg

[    2.809128] snd_hda_intel 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if info 0x040100
[    2.815323] snd_hda_intel 0000:00:1f.3: Digital mics found on Skylake+ platform, using SOF driver
[    3.369592] sof-audio-pci 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if info 0x040100
[    3.370646] sof-audio-pci 0000:00:1f.3: Digital mics found on Skylake+ platform, using SOF driver
[    3.370655] sof-audio-pci 0000:00:1f.3: enabling device (0000 -> 0002)
[    3.370874] sof-audio-pci 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if 0x040100
[    3.371022] sof-audio-pci 0000:00:1f.3: bound 0000:00:02.0 (ops i915_audio_component_bind_ops [i915])
[    3.375886] sof-audio-pci 0000:00:1f.3: use msi interrupt mode
[    3.447403] sof-audio-pci 0000:00:1f.3: hda codecs found, mask 5
[    3.447406] sof-audio-pci 0000:00:1f.3: using HDA machine driver skl_hda_dsp_generic now
[    3.451047] sof-audio-pci 0000:00:1f.3: unexpected ipc interrupt raised!
[    3.451049] sof-audio-pci 0000:00:1f.3: error: no reply expected, received 0x0
[    3.537679] sof-audio-pci 0000:00:1f.3: Firmware info: version 1:4:2-66a5a
[    3.537681] sof-audio-pci 0000:00:1f.3: Firmware: ABI 3:11:0 Kernel ABI 3:12:0
[    3.537912] sof-audio-pci 0000:00:1f.3: firmware boot complete
[    3.581579] skl_hda_dsp_generic skl_hda_dsp_generic: info: override BE DAI link iDisp1
[    3.581582] skl_hda_dsp_generic skl_hda_dsp_generic: info: override BE DAI link iDisp2
[    3.581584] skl_hda_dsp_generic skl_hda_dsp_generic: info: override BE DAI link iDisp3
[    3.581585] skl_hda_dsp_generic skl_hda_dsp_generic: info: override BE DAI link Analog Playback and Capture
[    3.581587] skl_hda_dsp_generic skl_hda_dsp_generic: info: override BE DAI link Digital Playback and Capture
[    3.581589] skl_hda_dsp_generic skl_hda_dsp_generic: info: override BE DAI link dmic01
[    3.581590] skl_hda_dsp_generic skl_hda_dsp_generic: info: override BE DAI link dmic16k
[    3.582579] sof-audio-pci 0000:00:1f.3: Topology: ABI 3:11:0 Kernel ABI 3:12:0
[    3.582585] sof-audio-pci 0000:00:1f.3: warning: widget type 7 name iDisp3 Tx not handled
[    3.583338] sof-audio-pci 0000:00:1f.3: warning: widget type 0 name codec0_in not handled
[    3.583341] sof-audio-pci 0000:00:1f.3: warning: widget type 7 name iDisp2 Tx not handled
[    3.584060] sof-audio-pci 0000:00:1f.3: warning: widget type 0 name codec1_in not handled
[    3.584063] sof-audio-pci 0000:00:1f.3: warning: widget type 7 name iDisp1 Tx not handled
[    3.584778] sof-audio-pci 0000:00:1f.3: warning: widget type 1 name codec0_out not handled
[    3.584780] sof-audio-pci 0000:00:1f.3: warning: widget type 7 name Analog CPU Playback not handled
[    3.585571] sof-audio-pci 0000:00:1f.3: warning: widget type 1 name codec1_out not handled
[    3.585574] sof-audio-pci 0000:00:1f.3: warning: widget type 7 name Digital CPU Playback not handled
[    3.585576] sof-audio-pci 0000:00:1f.3: warning: widget type 0 name codec2_in not handled
[    3.585578] sof-audio-pci 0000:00:1f.3: warning: widget type 7 name Alt Analog CPU Playback not handled
[    3.585580] sof-audio-pci 0000:00:1f.3: warning: widget type 1 name codec2_out not handled
[    3.585582] sof-audio-pci 0000:00:1f.3: warning: widget type 0 name Analog CPU Capture not handled
[    3.586353] sof-audio-pci 0000:00:1f.3: warning: widget type 1 name iDisp1_out not handled
[    3.586355] sof-audio-pci 0000:00:1f.3: warning: widget type 0 name Digital CPU Capture not handled
[    3.587144] sof-audio-pci 0000:00:1f.3: warning: widget type 1 name iDisp2_out not handled
[    3.587146] sof-audio-pci 0000:00:1f.3: warning: widget type 0 name Alt Analog CPU Capture not handled
[    3.587975] sof-audio-pci 0000:00:1f.3: warning: widget type 1 name iDisp3_out not handled
[    3.595516] sof-audio-pci 0000:00:1f.3: ASoC: Parent card not yet available, widget card binding deferred
[    3.610055] snd_hda_codec_realtek ehdaudio0D0: autoconfig for ALC285: line_outs=1 (0x17/0x0/0x0/0x0/0x0) type:speaker
[    3.610058] snd_hda_codec_realtek ehdaudio0D0:    speaker_outs=0 (0x0/0x0/0x0/0x0/0x0)
[    3.610060] snd_hda_codec_realtek ehdaudio0D0:    hp_outs=1 (0x21/0x0/0x0/0x0/0x0)
[    3.610061] snd_hda_codec_realtek ehdaudio0D0:    mono: mono_out=0x0
[    3.610062] snd_hda_codec_realtek ehdaudio0D0:    inputs:
[    3.610064] snd_hda_codec_realtek ehdaudio0D0:      Mic=0x19
[    3.652144] snd_hda_codec_realtek ehdaudio0D0: ASoC: sink widget AIF1TX overwritten
[    3.652150] snd_hda_codec_realtek ehdaudio0D0: ASoC: source widget AIF1RX overwritten
[    3.652181] skl_hda_dsp_generic skl_hda_dsp_generic: intel-hdmi-hifi1 <-> iDisp1 Pin mapping ok
[    3.652184] skl_hda_dsp_generic skl_hda_dsp_generic: intel-hdmi-hifi2 <-> iDisp2 Pin mapping ok
[    3.652187] skl_hda_dsp_generic skl_hda_dsp_generic: intel-hdmi-hifi3 <-> iDisp3 Pin mapping ok
[    3.652190] skl_hda_dsp_generic skl_hda_dsp_generic: Analog Codec DAI <-> Analog CPU DAI mapping ok
[    3.652193] skl_hda_dsp_generic skl_hda_dsp_generic: Digital Codec DAI <-> Digital CPU DAI mapping ok
[    3.652198] skl_hda_dsp_generic skl_hda_dsp_generic: dmic-hifi <-> DMIC01 Pin mapping ok
[    3.652201] skl_hda_dsp_generic skl_hda_dsp_generic: dmic-hifi <-> DMIC16k Pin mapping ok
[    3.652223] skl_hda_dsp_generic skl_hda_dsp_generic: snd-soc-dummy-dai <-> DMIC48kHz 6 mapping ok
[    3.652243] skl_hda_dsp_generic skl_hda_dsp_generic: snd-soc-dummy-dai <-> DMIC16kHz 7 mapping ok
[    3.652271] skl_hda_dsp_generic skl_hda_dsp_generic: snd-soc-dummy-dai <-> HDA Analog 0 mapping ok
[    3.652295] skl_hda_dsp_generic skl_hda_dsp_generic: snd-soc-dummy-dai <-> HDA Digital 1 mapping ok
[    3.652309] skl_hda_dsp_generic skl_hda_dsp_generic: snd-soc-dummy-dai <-> HDMI1 3 mapping ok
[    3.652322] skl_hda_dsp_generic skl_hda_dsp_generic: snd-soc-dummy-dai <-> HDMI2 4 mapping ok
[    3.652337] skl_hda_dsp_generic skl_hda_dsp_generic: snd-soc-dummy-dai <-> HDMI3 5 mapping ok
[    3.652421] skl_hda_dsp_generic skl_hda_dsp_generic: ASoC: sink widget hifi3 overwritten
[    3.652427] skl_hda_dsp_generic skl_hda_dsp_generic: ASoC: sink widget hifi2 overwritten
[    3.652431] skl_hda_dsp_generic skl_hda_dsp_generic: ASoC: sink widget hifi1 overwritten
[    3.652435] skl_hda_dsp_generic skl_hda_dsp_generic: ASoC: source widget Codec Output Pin1 overwritten
[    3.652439] skl_hda_dsp_generic skl_hda_dsp_generic: ASoC: sink widget Codec Input Pin1 overwritten
[    3.652445] skl_hda_dsp_generic skl_hda_dsp_generic: ASoC: sink widget Analog Codec Playback overwritten
[    3.652451] skl_hda_dsp_generic skl_hda_dsp_generic: ASoC: sink widget Digital Codec Playback overwritten
[    3.652456] skl_hda_dsp_generic skl_hda_dsp_generic: ASoC: sink widget Alt Analog Codec Playback overwritten
[    3.652463] skl_hda_dsp_generic skl_hda_dsp_generic: ASoC: source widget Analog Codec Capture overwritten
[    3.652468] skl_hda_dsp_generic skl_hda_dsp_generic: ASoC: source widget Digital Codec Capture overwritten
[    3.652474] skl_hda_dsp_generic skl_hda_dsp_generic: ASoC: source widget Alt Analog Codec Capture overwritten
[    3.664573] input: sof-hda-dsp Mic as /devices/pci0000:00/0000:00:1f.3/skl_hda_dsp_generic/sound/card0/input27
[    3.664629] input: sof-hda-dsp Headphone as /devices/pci0000:00/0000:00:1f.3/skl_hda_dsp_generic/sound/card0/input28
[    3.664691] input: sof-hda-dsp HDMI/DP,pcm=3 as /devices/pci0000:00/0000:00:1f.3/skl_hda_dsp_generic/sound/card0/input29
[    3.664747] input: sof-hda-dsp HDMI/DP,pcm=4 as /devices/pci0000:00/0000:00:1f.3/skl_hda_dsp_generic/sound/card0/input30
[    3.664795] input: sof-hda-dsp HDMI/DP,pcm=5 as /devices/pci0000:00/0000:00:1f.3/skl_hda_dsp_generic/sound/card0/input31
[   11.879718] sof-audio-pci 0000:00:1f.3: error: no reply expected, received 0x0
[   11.965260] sof-audio-pci 0000:00:1f.3: firmware boot complete
[  935.152427] sof-audio-pci 0000:00:1f.3: error: no reply expected, received 0x0
[  935.260268] sof-audio-pci 0000:00:1f.3: firmware boot complete
[ 3401.994089] sof-audio-pci 0000:00:1f.3: error: no reply expected, received 0x0
[ 3402.110982] sof-audio-pci 0000:00:1f.3: firmware boot complete
[47735.123470] sof-audio-pci 0000:00:1f.3: error: cl_dsp_init: timeout for HIPCIE done
[47735.123477] sof-audio-pci 0000:00:1f.3: error: status = 0xffffffff panic = 0xffffffff
[47735.124082] sof-audio-pci 0000:00:1f.3: error: no reply expected, received 0x0
[47735.226940] sof-audio-pci 0000:00:1f.3: firmware boot complete
[51409.383342] sof-audio-pci 0000:00:1f.3: error: no reply expected, received 0x0
[51409.497078] sof-audio-pci 0000:00:1f.3: firmware boot complete
[51721.750818] sof-audio-pci 0000:00:1f.3: error: cl_dsp_init: timeout for HIPCIE done
[51721.750825] sof-audio-pci 0000:00:1f.3: error: status = 0xffffffff panic = 0xffffffff
[51721.751426] sof-audio-pci 0000:00:1f.3: error: no reply expected, received 0x0
[51721.854853] sof-audio-pci 0000:00:1f.3: firmware boot complete
[52719.470203] sof-audio-pci 0000:00:1f.3: error: no reply expected, received 0x0
[52719.567573] sof-audio-pci 0000:00:1f.3: firmware boot complete
[52921.826967] sof-audio-pci 0000:00:1f.3: error: no reply expected, received 0x0
[52921.922243] sof-audio-pci 0000:00:1f.3: firmware boot complete
[53176.523956] sof-audio-pci 0000:00:1f.3: error: no reply expected, received 0x0
[53176.618964] sof-audio-pci 0000:00:1f.3: firmware boot complete
[53270.065426] sof-audio-pci 0000:00:1f.3: error: no reply expected, received 0x0
[53270.161734] sof-audio-pci 0000:00:1f.3: firmware boot complete
[53305.022389] sof-audio-pci 0000:00:1f.3: error: no reply expected, received 0x0
[53305.119161] sof-audio-pci 0000:00:1f.3: firmware boot complete
[53376.912642] sof-audio-pci 0000:00:1f.3: error: no reply expected, received 0x0
[53377.027550] sof-audio-pci 0000:00:1f.3: firmware boot complete
[55043.471576] sof-audio-pci 0000:00:1f.3: error: cl_dsp_init: timeout for HIPCIE done
[55043.471583] sof-audio-pci 0000:00:1f.3: error: status = 0xffffffff panic = 0xffffffff
[55043.472202] sof-audio-pci 0000:00:1f.3: error: no reply expected, received 0x0
[55043.574834] sof-audio-pci 0000:00:1f.3: firmware boot complete
[55166.031872] sof-audio-pci 0000:00:1f.3: error: no reply expected, received 0x0
[55166.127683] sof-audio-pci 0000:00:1f.3: firmware boot complete

Alsa Info
http://alsa-project.org/db/?f=0009909a465159bb2d8c79d1330df1aa7110508a

Activity

  1. kv2019i commented on Mar 6, 2020

    @kv2019i
    Collaborator

    Thanks @MayurVirkar for filing the separate logs and the new logs. This seems like a kernel issue, so I'll move this to the driver component.

  2. transferred this issue fromthesofproject/sofon Mar 6, 2020
  3. kv2019i commented on Mar 6, 2020

    @kv2019i
    Collaborator

    @MayurVirkar When you say microphone is not detected, how do you exactly detect this? Via sound settings UI or looking at ALSA logs?

    I ask because the logs actually look fine and the alsa-info print even states the dmic devices are up and running:
    http://alsa-project.org/db/?f=0009909a465159bb2d8c79d1330df1aa7110508a

    card 0: sofhdadsp [sof-hda-dsp], device 6: DMIC48kHz (*) []
      Subdevices: 1/1
      Subdevice #0: subdevice #0
    card 0: sofhdadsp [sof-hda-dsp], device 7: DMIC16kHz (*) []
      Subdevices: 1/1
      Subdevice #0: subdevice #0
    

    If the microphone works at ALSA level, that means that driver and firmware are fine, and problem is with Pulseaudio integration. My first guess would be something missing in the UCM rules. The digital mics on this device are not part of the HDA set, so Pulseaudio cannot find them unless they are described in an UCM file, or by old-style ALSA conf-files.

    FYI to @juimonen

  4. self-assigned this
    on Mar 6, 2020
  5. added
    bugSomething isn't working
    and removed on Mar 6, 2020
  6. plbossart commented on Mar 6, 2020

    @plbossart
    Member

    There is still something very odd about the logs and IPC issues:

    [47735.123470] sof-audio-pci 0000:00:1f.3: error: cl_dsp_init: timeout for HIPCIE done
    [47735.123477] sof-audio-pci 0000:00:1f.3: error: status = 0xffffffff panic = 0xffffffff
    [47735.124082] sof-audio-pci 0000:00:1f.3: error: no reply expected, received 0x0
    [47735.226940] sof-audio-pci 0000:00:1f.3: firmware boot complete
    [51409.383342] sof-audio-pci 0000:00:1f.3: error: no reply expected, received 0x0
    [51409.497078] sof-audio-pci 0000:00:1f.3: firmware boot complete
    [51721.750818] sof-audio-pci 0000:00:1f.3: error: cl_dsp_init: timeout for HIPCIE done
    [51721.750825] sof-audio-pci 0000:00:1f.3: error: status = 0xffffffff panic = 0xffffffff
    

    @MayurVirkar could you try with our latest development kernel?
    https://github.com/thesofproject/linux/tree/topic/sof-dev

    Thanks!

  7. MayurVirkar commented on Mar 9, 2020

    @MayurVirkar
    Author

    @kv2019i
    Expecting to see it in Manjaro Sound Manager.
    Any pointers towards configuring UCM?

    @plbossart
    Sure, will do it and keep you updated!
    Thanks!

  8. kv2019i commented on Mar 9, 2020

    @kv2019i
    Collaborator

    @MayurVirkar wrote:

    Expecting to see it in Manjaro Sound Manager.
    Any pointers towards configuring UCM?

    Ok, then driver+firmware are likely ok and you are just missing the Pulseaudio configuration.

    We've been contributing the needed UCM rules to upstream:
    https://github.com/alsa-project/alsa-ucm-conf/tree/master
    ... and alsa-ucm 1.2.x releases all support these platforms with SOF and digital mics.

    There has been lot of development around UCms recently, so to you the 1.2.x release directly, you need reasonable new alsa-ucm-com, libasound and pulseaudio. At least Rawhide has picked them up already, e.g. here's the alsa-ucm package:
    https://rpmfind.net/linux/RPM/fedora/devel/rawhide/x86_64/a/alsa-ucm-1.2.2-1.fc33.noarch.html

    .. some distros have backported some of the changes to older releases.

    Key is that the UCM file for SOF exist and it should declare a digital mic:
    https://github.com/alsa-project/alsa-ucm-conf/blob/master/ucm2/sof-hda-dsp/HiFi.conf#L135

    Ideally this done by your distro (as there are multiple ways e.g. Pulseaudio can be configured). Some possible pitfalls:

    • if libasound is too old, it doesn't support UCM2 files
    • if UCM file and kernel don't match, correct UCM file is not found

    Hope this helps!

  9. plbossart commented on Mar 9, 2020

    @plbossart
    Member

    Manjaro uses pacman for packages, so someone will have to update the alsa-lib version to 1.2.2 and likewise package the ucm2 latest versions.

  10. kv2019i commented on Mar 9, 2020

    @kv2019i
    Collaborator

    @plbossart wrote:

    Manjaro uses pacman for packages, so someone will have to update the alsa-lib version to 1.2.2 and likewise package the ucm2 latest versions.

    Well, distrowatch.com lists many hundreds of active Linux distributions ;) , so we just have to implement and fix the upstream projects and let the distro ecosystem do its thing.

    In case of Manjaro, it's based on ArchLinux which has active maintenance for these packages, e.g.1.2.2 is already there:
    https://www.archlinux.org/packages/extra/x86_64/alsa-lib/

    WIth Rawhide, latest Ubuntu repositories and ArchLinux already with UCM2-enabled alsa-lib, I think this will spread pretty quickly.

  11. MayurVirkar commented on Mar 10, 2020

    @MayurVirkar
    Author

    Hello @plbossart & @kv2019i
    I can confirm that I have the latest versions of all the packages mentioned above.
    Alsa-* is on 1.2.2-1
    Pulseaudio - 13.0-3

  12. MayurVirkar commented on Mar 10, 2020

    @MayurVirkar
    Author
    #alsaucm listcards
    ALSA lib utils.c:261:(uc_mgr_config_load) could not open configuration file /usr/share/alsa/ucm2/HDA-Intel/HDA-Intel.conf
    alsaucm: error failed to get card list: No such file or directory
    

    Does this help?

  13. kv2019i commented on Mar 10, 2020

    @kv2019i
    Collaborator

    @MayurVirkar Do you have "alsa-ucm" package also installed? I'm guessing you have, but just making sure.

    You can then try debug with alsaucm tool. This allows to verify the UCM file without running Pulseaudio. You can do the following:

    $ alsaucm -i
    alsaucm>> open sof-hda-dsp
    alsaucm>> set _verb HiFi
    alsaucm>> list _devices
      0: Headphones1
        Headphones
      1: Speaker
        Speaker
      2: Mic
        Digital Microphone
    [...]
    

    ... if above looks the same (there should be Digital Mic listed), then there's something wrong with pulseaudio setup. Pierre gave instructions how to get pulseaudio logs here #1877 (comment)

  14. MayurVirkar commented on Mar 10, 2020

    @MayurVirkar
    Author
    ➜  /etc alsaucm -i
    alsaucm: Interacive mode - 'q' to quit
    alsaucm>> open sof-hda-dsp
    alsaucm>> set _verb HiFi
    alsaucm>> list _devices
      0: Headphones1
        Headphones
      1: Speaker
        Speaker
      2: Mic
        Digital Microphone
      3: Headphones2
        Headphones Stereo Microphone
      4: HDMI1
        HDMI1/DP1 Output
      5: HDMI2
        HDMI2/DP2 Output
      6: HDMI3
        HDMI3/DP3 Output
    alsaucm>> 
    

    @kv2019i Yup, everything looks same.
    I will post pulseaudio logs soon.

  15. MayurVirkar commented on Mar 11, 2020

    @MayurVirkar
    Author

    Okay,
    So I think I reached somewhere.
    Pulseaudio (pavcontrol) Shows Hifi profile but with (unavailble) tag.
    If i select it, I can see mic in the "Input" tab. I can see it getting current input, but the port shows "unplugged".
    Screenshots attahed..

    Screenshot from 2020-03-11 19-16-50
    Screenshot from 2020-03-11 19-16-43

  16. plbossart commented on Mar 11, 2020

    @plbossart
    Member

    @MayurVirkar if you see 'unplugged' it's likely because there's a confusion between DMIC and headset mic. DMICs are fixed.

    I suggest you provide the pulseaudio -vvvf logs using the info in #1877 (comment)

  17. MayurVirkar commented on Apr 2, 2020

    @MayurVirkar
    Author

    log.txt
    Hello,
    Kindly find attached log.txt as requested.
    Apologies for the delay. Things are crazy everywhere.

  18. kv2019i commented on Apr 2, 2020

    @kv2019i
    Collaborator

    Thanks @MayurVirkar ! Crazy time everywhere indeed.

    The logs confirm that FW+drivers seem to be working. I've gone through it a couple of times, but cannot see any errors that would explain why Pulseaudio marks the profile unavailable. These traces are the problematic one:

    D: [pulseaudio] card.c: HiFi availability no
    D: [pulseaudio] card.c: off availability unknown
    I: [pulseaudio] card.c: alsa_card.pci-0000_00_1f.3-platform-skl_hda_dsp_generic: active_profile: off
    D: [pulseaudio] module-card-restore.c: Not restoring profile HiFi for card alsa_card.pci-0000_00_1f.3-platform-skl_hda_dsp_generic, because the profile is currently unavailable.

    ... in my comparison run on a similar platform, I just get:

    I: [pulseaudio.notu] alsa-ucm.c: Set UCM verb to HiFi

    ... at this place. The "plugged" status of is exactly the same on my system. I have same version of alsa+UCM, but slightly older Pulseaudio.

    @juimonen , any idea what could explain above?

  19. juimonen commented on Apr 2, 2020

    @juimonen

    @MayurVirkar @kv2019i looks odd to me also... seems that profile is set of because of jack event... @MayurVirkar what if you plug in headphones/headset does the profile come available and can you then choose still dmic?

  20. MayurVirkar commented on Apr 2, 2020

    @MayurVirkar
    Author

    @juimonen That's very strange, but yes. Once i plug in headphones, I can select the profile.

  21. added
    dmicIssues related to PCH connected DMIC
    on Sep 22, 2020
  22. plbossart commented on Jan 22, 2021

    @plbossart
    Member

    no update since April 2020, closing.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

Communityend-user or distro-reported issuesbugSomething isn't workingdmicIssues related to PCH connected DMIC

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions