thesofproject / sof

Sound Open Firmware
Other
562 stars 319 forks source link

[BUG] Input from headset microphone gets choppy #4809

Open brianjmurrell opened 3 years ago

brianjmurrell commented 3 years ago

Describe the bug At some point after an unknown amount of up-time, input from a headset microphone becomes choppy. This doesn't happen immediately after a reboot but only some (unknown) time subsequently.

To Reproduce Unknown

Reproduction Rate 100% after an unknown amount of time since boot

Expected behavior Input should not be choppy

Impact Makes use of the headset microphone impossible

Environment 1) Branch name and commit hash of the 2 repositories: sof (firmware/topology) and linux (kernel driver).

alsa-info report:

alsa-info report ``` upload=true&script=true&cardinfo= !!################################ !!ALSA Information Script v 0.5.0 !!################################ !!Script ran on: Mon Sep 27 14:56:16 UTC 2021 !!Linux Distribution !!------------------ Fedora release 33 (Thirty Three) NAME=Fedora ID=fedora PRETTY_NAME="Fedora 33 (Workstation Edition)" LOGO=fedora-logo-icon CPE_NAME="cpe:/o:fedoraproject:fedora:33" HOME_URL="https://fedoraproject.org/" DOCUMENTATION_URL="https://docs.fedoraproject.org/en-US/fedora/f33/system-administrators-guide/" SUPPORT_URL="https://fedoraproject.org/wiki/Communicating_and_getting_help" BUG_REPORT_URL="https://bugzilla.redhat.com/" REDHAT_BUGZILLA_PRODUCT="Fedora" REDHAT_BUGZILLA_PRODUCT_VERSION=33 REDHAT_SUPPORT_PRODUCT="Fedora" REDHAT_SUPPORT_PRODUCT_VERSION=33 PRIVACY_POLICY_URL="https://fedoraproject.org/wiki/Legal:PrivacyPolicy" Fedora release 33 (Thirty Three) Fedora release 33 (Thirty Three) !!DMI Information !!--------------- Manufacturer: HP Product Name: HP ZBook Fury 15 G7 Mobile Workstation Product Version: Firmware Version: S92 Ver. 01.04.01 System SKU: 2V8E5UP#ABA Board Vendor: HP Board Name: 8783 !!ACPI Device Status Information !!--------------- /sys/bus/acpi/devices/ACPI000C:00/status 15 /sys/bus/acpi/devices/ELAN0720:00/status 15 /sys/bus/acpi/devices/HPIC000C:00/status 15 /sys/bus/acpi/devices/HPQ6001:00/status 15 /sys/bus/acpi/devices/HPQ6007:00/status 15 /sys/bus/acpi/devices/IFX0785:00/status 15 /sys/bus/acpi/devices/INT3400:00/status 15 /sys/bus/acpi/devices/INT3403:00/status 15 /sys/bus/acpi/devices/INT3403:01/status 15 /sys/bus/acpi/devices/INT3403:02/status 15 /sys/bus/acpi/devices/INT3403:03/status 15 /sys/bus/acpi/devices/INT3403:04/status 15 /sys/bus/acpi/devices/INT340E:00/status 15 /sys/bus/acpi/devices/INT3450:00/status 15 /sys/bus/acpi/devices/INT3F0D:00/status 15 /sys/bus/acpi/devices/LNXPOWER:01/status 1 /sys/bus/acpi/devices/LNXPOWER:02/status 1 /sys/bus/acpi/devices/LNXPOWER:03/status 15 /sys/bus/acpi/devices/LNXPOWER:04/status 1 /sys/bus/acpi/devices/LNXPOWER:05/status 1 /sys/bus/acpi/devices/LNXPOWER:06/status 1 /sys/bus/acpi/devices/LNXPOWER:07/status 1 /sys/bus/acpi/devices/LNXPOWER:08/status 1 /sys/bus/acpi/devices/LNXPOWER:09/status 1 /sys/bus/acpi/devices/PNP0103:00/status 15 /sys/bus/acpi/devices/PNP0B00:00/status 15 /sys/bus/acpi/devices/PNP0C02:00/status 3 /sys/bus/acpi/devices/PNP0C02:06/status 3 /sys/bus/acpi/devices/PNP0C04:00/status 31 /sys/bus/acpi/devices/PNP0C09:00/status 15 /sys/bus/acpi/devices/PNP0C0A:00/status 31 /sys/bus/acpi/devices/PNP0C0C:00/status 11 /sys/bus/acpi/devices/PRP00001:00/status 11 /sys/bus/acpi/devices/USBC000:00/status 15 /sys/bus/acpi/devices/device:2a/status 15 /sys/bus/acpi/devices/device:38/status 15 /sys/bus/acpi/devices/device:39/status 15 !!Kernel Information !!------------------ Kernel release: 5.13.16-100.fc33.x86_64 Operating System: GNU/Linux Architecture: x86_64 Processor: x86_64 SMP Enabled: Yes !!ALSA Version !!------------ Driver version: k5.13.16-100.fc33.x86_64 Library version: Utilities version: 1.2.4 !!Loaded ALSA modules !!------------------- snd_hda_intel (card 0) snd_usb_audio (card 1) snd_soc_skl_hda_dsp (card 2) !!Sound Servers on this system !!---------------------------- PipeWire: Installed - Yes (/usr/bin/pipewire) Running - Yes Pulseaudio: Installed - Yes (/usr/bin/pulseaudio) Running - Yes !!Soundcards recognised by ALSA !!----------------------------- 0 [NVidia ]: HDA-Intel - HDA NVidia HDA NVidia at 0xe1000000 irq 17 1 [Headset ]: USB-Audio - Thunderbolt Dock Audio Headset HP-Thunderbolt-Dock-Audio-Headset 2 [sofhdadsp ]: sof-hda-dsp - sof-hda-dsp HP-HPZBookFury15G7MobileWorkstation--8783 !!PCI Soundcards installed in the system !!-------------------------------------- 00:1f.3 Multimedia audio controller [0401]: Intel Corporation Comet Lake PCH cAVS [8086:06c8] Subsystem: Hewlett-Packard Company Device [103c:8783] 01:00.1 Audio device [0403]: NVIDIA Corporation TU106 High Definition Audio Controller [10de:10f9] (rev a1) Subsystem: Hewlett-Packard Company Device [103c:8782] !!HDA-Intel Codec information !!--------------------------- --startcollapse-- Codec: Nvidia GPU 93 HDMI/DP Address: 0 AFG Function Id: 0x1 (unsol 0) Vendor Id: 0x10de0093 Subsystem Id: 0x103c8782 Revision Id: 0x100100 No Modem Function Group found Default PCM: rates [0x0]: bits [0x0]: formats [0x0]: Default Amp-In caps: N/A Default Amp-Out caps: N/A State of AFG node 0x01: Power states: D0 D1 D2 D3 CLKSTOP EPSS Power: setting=D0, actual=D0 GPIO: io=0, o=0, i=0, unsolicited=0, wake=0 Node 0x04 [Pin Complex] wcaps 0x407381: 8-Channels Digital CP Pincap 0x09000094: OUT Detect HBR HDMI DP Pin Default 0x185600f0: [Jack] Digital Out at Int HDMI Conn = Digital, Color = Unknown DefAssociation = 0xf, Sequence = 0x0 Pin-ctls: 0x00: Unsolicited: tag=00, enabled=0 Devices: 4 Dev 00: PD = 0, ELDV = 0, IA = 0, Connections [ 0x08* 0x09 0x0a 0x0b ] Dev 01: PD = 0, ELDV = 0, IA = 0, Connections [ 0x08* 0x09 0x0a 0x0b ] Dev 02: PD = 0, ELDV = 0, IA = 0, Connections [ 0x08* 0x09 0x0a 0x0b ] *Dev 03: PD = 0, ELDV = 0, IA = 0, Connections [ 0x08* 0x09 0x0a 0x0b ] Connection: 4 0x08* 0x09 0x0a 0x0b Node 0x05 [Pin Complex] wcaps 0x407381: 8-Channels Digital CP Pincap 0x09000094: OUT Detect HBR HDMI DP Pin Default 0x585600f0: [N/A] Digital Out at Int HDMI Conn = Digital, Color = Unknown DefAssociation = 0xf, Sequence = 0x0 Pin-ctls: 0x00: Unsolicited: tag=00, enabled=0 Devices: 4 *Dev 00: PD = 0, ELDV = 0, IA = 0, Connections [ 0x08* 0x09 0x0a 0x0b ] Dev 01: PD = 0, ELDV = 0, IA = 0, Connections [ 0x08* 0x09 0x0a 0x0b ] Dev 02: PD = 0, ELDV = 0, IA = 0, Connections [ 0x08* 0x09 0x0a 0x0b ] Dev 03: PD = 0, ELDV = 0, IA = 0, Connections [ 0x08* 0x09 0x0a 0x0b ] Connection: 4 0x08* 0x09 0x0a 0x0b Node 0x06 [Pin Complex] wcaps 0x407381: 8-Channels Digital CP Pincap 0x09000094: OUT Detect HBR HDMI DP Pin Default 0x185600f0: [Jack] Digital Out at Int HDMI Conn = Digital, Color = Unknown DefAssociation = 0xf, Sequence = 0x0 Pin-ctls: 0x00: Unsolicited: tag=00, enabled=0 Devices: 4 Dev 00: PD = 0, ELDV = 0, IA = 0, Connections [ 0x08* 0x09 0x0a 0x0b ] Dev 01: PD = 0, ELDV = 0, IA = 0, Connections [ 0x08* 0x09 0x0a 0x0b ] Dev 02: PD = 0, ELDV = 0, IA = 0, Connections [ 0x08* 0x09 0x0a 0x0b ] *Dev 03: PD = 0, ELDV = 0, IA = 0, Connections [ 0x08* 0x09 0x0a 0x0b ] Connection: 4 0x08* 0x09 0x0a 0x0b Node 0x07 [Pin Complex] wcaps 0x407381: 8-Channels Digital CP Pincap 0x09000094: OUT Detect HBR HDMI DP Pin Default 0x185600f0: [Jack] Digital Out at Int HDMI Conn = Digital, Color = Unknown DefAssociation = 0xf, Sequence = 0x0 Pin-ctls: 0x00: Unsolicited: tag=00, enabled=0 Devices: 4 Dev 00: PD = 0, ELDV = 0, IA = 0, Connections [ 0x08* 0x09 0x0a 0x0b ] Dev 01: PD = 0, ELDV = 0, IA = 0, Connections [ 0x08* 0x09 0x0a 0x0b ] Dev 02: PD = 0, ELDV = 0, IA = 0, Connections [ 0x08* 0x09 0x0a 0x0b ] *Dev 03: PD = 0, ELDV = 0, IA = 0, Connections [ 0x08* 0x09 0x0a 0x0b ] Connection: 4 0x08* 0x09 0x0a 0x0b Node 0x08 [Audio Output] wcaps 0x62b1: 8-Channels Digital Stripe Converter: stream=0, channel=0 Digital: Digital category: 0x0 IEC Coding Type: 0x0 PCM: rates [0x7f0]: 32000 44100 48000 88200 96000 176400 192000 bits [0xe]: 16 20 24 formats [0x5]: PCM AC3 Unsolicited: tag=00, enabled=0 Node 0x09 [Audio Output] wcaps 0x62b1: 8-Channels Digital Stripe Converter: stream=0, channel=0 Digital: Digital category: 0x0 IEC Coding Type: 0x0 PCM: rates [0x7f0]: 32000 44100 48000 88200 96000 176400 192000 bits [0xe]: 16 20 24 formats [0x5]: PCM AC3 Unsolicited: tag=00, enabled=0 Node 0x0a [Audio Output] wcaps 0x62b1: 8-Channels Digital Stripe Converter: stream=0, channel=0 Digital: Digital category: 0x0 IEC Coding Type: 0x0 PCM: rates [0x7f0]: 32000 44100 48000 88200 96000 176400 192000 bits [0xe]: 16 20 24 formats [0x5]: PCM AC3 Unsolicited: tag=00, enabled=0 Node 0x0b [Audio Output] wcaps 0x62b1: 8-Channels Digital Stripe Converter: stream=0, channel=0 Digital: Digital category: 0x0 IEC Coding Type: 0x0 PCM: rates [0x7f0]: 32000 44100 48000 88200 96000 176400 192000 bits [0xe]: 16 20 24 formats [0x5]: PCM AC3 Unsolicited: tag=00, enabled=0 Codec: Realtek ALC285 Address: 0 AFG Function Id: 0x1 (unsol 1) Vendor Id: 0x10ec0285 Subsystem Id: 0x103c8783 Revision Id: 0x100002 No Modem Function Group found Default PCM: rates [0x560]: 44100 48000 96000 192000 bits [0xe]: 16 20 24 formats [0x1]: PCM Default Amp-In caps: N/A Default Amp-Out caps: N/A State of AFG node 0x01: Power states: D0 D1 D2 D3 D3cold CLKSTOP EPSS Power: setting=D0, actual=D0 GPIO: io=3, o=0, i=0, unsolicited=1, wake=0 IO[0]: enable=1, dir=1, wake=0, sticky=0, data=0, unsol=0 IO[1]: enable=0, dir=0, wake=0, sticky=0, data=0, unsol=0 IO[2]: enable=1, dir=1, wake=0, sticky=0, data=0, unsol=0 Node 0x02 [Audio Output] wcaps 0x41d: Stereo Amp-Out Control: name="Headphone Playback Volume", index=0, device=0 ControlAmp: chs=3, dir=Out, idx=0, ofs=0 Amp-Out caps: ofs=0x57, nsteps=0x57, stepsize=0x02, mute=0 Amp-Out vals: [0x47 0x47] Converter: stream=4, channel=0 PCM: rates [0x40]: 48000 bits [0xe]: 16 20 24 formats [0x1]: PCM Power states: D0 D1 D2 D3 EPSS Power: setting=D0, actual=D0 Node 0x03 [Audio Output] wcaps 0x41d: Stereo Amp-Out Control: name="Speaker Playback Volume", index=0, device=0 ControlAmp: chs=3, dir=Out, idx=0, ofs=0 Amp-Out caps: ofs=0x57, nsteps=0x57, stepsize=0x02, mute=0 Amp-Out vals: [0x47 0x47] Converter: stream=4, channel=0 PCM: rates [0x40]: 48000 bits [0xe]: 16 20 24 formats [0x1]: PCM Power states: D0 D1 D2 D3 EPSS Power: setting=D0, actual=D0 Node 0x04 [Vendor Defined Widget] wcaps 0xf00000: Mono Node 0x05 [Vendor Defined Widget] wcaps 0xf00000: Mono Node 0x06 [Audio Output] wcaps 0x411: Stereo Converter: stream=0, channel=0 PCM: rates [0x40]: 48000 bits [0xe]: 16 20 24 formats [0x1]: PCM Power states: D0 D1 D2 D3 EPSS Power: setting=D0, actual=D0 Node 0x07 [Audio Input] wcaps 0x10051b: Stereo Amp-In Amp-In caps: ofs=0x17, nsteps=0x3f, stepsize=0x02, mute=1 Amp-In vals: [0x97 0x97] Converter: stream=0, channel=0 SDI-Select: 0 PCM: rates [0x40]: 48000 bits [0xe]: 16 20 24 formats [0x1]: PCM Power states: D0 D1 D2 D3 EPSS Power: setting=D0, actual=D0 Connection: 1 0x24 Node 0x08 [Audio Input] wcaps 0x10051b: Stereo Amp-In Control: name="Capture Volume", index=0, device=0 ControlAmp: chs=3, dir=In, idx=0, ofs=0 Control: name="Capture Switch", index=0, device=0 ControlAmp: chs=3, dir=In, idx=0, ofs=0 Amp-In caps: ofs=0x17, nsteps=0x3f, stepsize=0x02, mute=1 Amp-In vals: [0x3b 0x3b] Converter: stream=1, channel=0 SDI-Select: 0 PCM: rates [0x560]: 44100 48000 96000 192000 bits [0xe]: 16 20 24 formats [0x1]: PCM Power states: D0 D1 D2 D3 EPSS Power: setting=D0, actual=D0 Connection: 1 0x23 Node 0x09 [Audio Input] wcaps 0x10051b: Stereo Amp-In Amp-In caps: ofs=0x17, nsteps=0x3f, stepsize=0x02, mute=1 Amp-In vals: [0x97 0x97] Converter: stream=0, channel=0 SDI-Select: 0 PCM: rates [0x560]: 44100 48000 96000 192000 bits [0xe]: 16 20 24 formats [0x1]: PCM Power states: D0 D1 D2 D3 EPSS Power: setting=D0, actual=D0 Connection: 1 0x22 Node 0x0a [Vendor Defined Widget] wcaps 0xf00000: Mono Node 0x0b [Vendor Defined Widget] wcaps 0xf00000: Mono Node 0x0c [Vendor Defined Widget] wcaps 0xf00000: Mono Node 0x0d [Vendor Defined Widget] wcaps 0xf00000: Mono Node 0x0e [Vendor Defined Widget] wcaps 0xf00000: Mono Node 0x0f [Vendor Defined Widget] wcaps 0xf00000: Mono Node 0x10 [Vendor Defined Widget] wcaps 0xf00000: Mono Node 0x11 [Vendor Defined Widget] wcaps 0xf00000: Mono Node 0x12 [Pin Complex] wcaps 0x40040b: Stereo Amp-In Amp-In caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0 Amp-In vals: [0x00 0x00] Pincap 0x00000020: IN Pin Default 0x40000000: [N/A] Line Out at Ext N/A Conn = Unknown, Color = Unknown DefAssociation = 0x0, Sequence = 0x0 Pin-ctls: 0x00: Power states: D0 D1 D2 D3 EPSS Power: setting=D0, actual=D0 Node 0x13 [Pin Complex] wcaps 0x40040b: Stereo Amp-In Amp-In caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0 Amp-In vals: [0x00 0x00] Pincap 0x00000020: IN Pin Default 0x411111f0: [N/A] Speaker at Ext Rear Conn = 1/8, Color = Black DefAssociation = 0xf, Sequence = 0x0 Misc = NO_PRESENCE Pin-ctls: 0x00: Power states: D0 D1 D2 D3 EPSS Power: setting=D0, actual=D0 Node 0x14 [Pin Complex] wcaps 0x40058d: Stereo Amp-Out Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1 Amp-Out vals: [0x80 0x80] Pincap 0x00010014: OUT EAPD Detect EAPD 0x2: EAPD Pin Default 0x411111f0: [N/A] Speaker at Ext Rear Conn = 1/8, Color = Black DefAssociation = 0xf, Sequence = 0x0 Misc = NO_PRESENCE Pin-ctls: 0x00: Unsolicited: tag=00, enabled=0 Power states: D0 D1 D2 D3 EPSS Power: setting=D0, actual=D0 Connection: 1 0x02 Node 0x15 [Vendor Defined Widget] wcaps 0xf00000: Mono Node 0x16 [Pin Complex] wcaps 0x40058d: Stereo Amp-Out Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1 Amp-Out vals: [0x80 0x80] Pincap 0x0000001c: OUT HP Detect Pin Default 0x411111f0: [N/A] Speaker at Ext Rear Conn = 1/8, Color = Black DefAssociation = 0xf, Sequence = 0x0 Misc = NO_PRESENCE Pin-ctls: 0x00: Unsolicited: tag=00, enabled=0 Power states: D0 D1 D2 D3 EPSS Power: setting=D0, actual=D0 Connection: 2 0x02* 0x03 Node 0x17 [Pin Complex] wcaps 0x40058d: Stereo Amp-Out Control: name="Speaker Playback Switch", index=0, device=0 ControlAmp: chs=3, dir=Out, idx=0, ofs=0 Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1 Amp-Out vals: [0x80 0x80] Pincap 0x0000001c: OUT HP Detect Pin Default 0x90170110: [Fixed] Speaker at Int N/A Conn = Analog, Color = Unknown DefAssociation = 0x1, Sequence = 0x0 Misc = NO_PRESENCE Pin-ctls: 0x40: OUT Unsolicited: tag=00, enabled=0 Power states: D0 D1 D2 D3 EPSS Power: setting=D0, actual=D0 Connection: 3 0x02 0x03* 0x06 Node 0x18 [Pin Complex] wcaps 0x40048b: Stereo Amp-In Amp-In caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0 Amp-In vals: [0x00 0x00] Pincap 0x00000024: IN Detect Pin Default 0x411111f0: [N/A] Speaker at Ext Rear Conn = 1/8, Color = Black DefAssociation = 0xf, Sequence = 0x0 Misc = NO_PRESENCE Pin-ctls: 0x00: Unsolicited: tag=00, enabled=0 Power states: D0 D1 D2 D3 EPSS Power: setting=D0, actual=D0 Node 0x19 [Pin Complex] wcaps 0x40048b: Stereo Amp-In Control: name="Mic Boost Volume", index=0, device=0 ControlAmp: chs=3, dir=In, idx=0, ofs=0 Amp-In caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0 Amp-In vals: [0x00 0x00] Pincap 0x00003724: IN Detect Vref caps: HIZ 50 GRD 80 100 Pin Default 0x03a11040: [Jack] Mic at Ext Left Conn = 1/8, Color = Black DefAssociation = 0x4, Sequence = 0x0 Pin-ctls: 0x24: IN VREF_80 Unsolicited: tag=02, enabled=1 Power states: D0 D1 D2 D3 EPSS Power: setting=D0, actual=D0 Node 0x1a [Pin Complex] wcaps 0x40048b: Stereo Amp-In Amp-In caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0 Amp-In vals: [0x00 0x00] Pincap 0x00003724: IN Detect Vref caps: HIZ 50 GRD 80 100 Pin Default 0x411111f0: [N/A] Speaker at Ext Rear Conn = 1/8, Color = Black DefAssociation = 0xf, Sequence = 0x0 Misc = NO_PRESENCE Pin-ctls: 0x00: VREF_HIZ Unsolicited: tag=00, enabled=0 Power states: D0 D1 D2 D3 EPSS Power: setting=D0, actual=D0 Node 0x1b [Pin Complex] wcaps 0x40058f: Stereo Amp-In Amp-Out Amp-In caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0 Amp-In vals: [0x00 0x00] Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1 Amp-Out vals: [0x80 0x80] Pincap 0x00013734: IN OUT EAPD Detect Vref caps: HIZ 50 GRD 80 100 EAPD 0x2: EAPD Pin Default 0x411111f0: [N/A] Speaker at Ext Rear Conn = 1/8, Color = Black DefAssociation = 0xf, Sequence = 0x0 Misc = NO_PRESENCE Pin-ctls: 0x00: VREF_HIZ Unsolicited: tag=00, enabled=0 Power states: D0 D1 D2 D3 EPSS Power: setting=D0, actual=D0 Connection: 2 0x02* 0x03 Node 0x1c [Vendor Defined Widget] wcaps 0xf00000: Mono Node 0x1d [Pin Complex] wcaps 0x400400: Mono Pincap 0x00000020: IN Pin Default 0x40628005: [N/A] Modem Line at Ext N/A Conn = 1/4, Color = Purple DefAssociation = 0x0, Sequence = 0x5 Pin-ctls: 0x20: IN Power states: D0 D1 D2 D3 EPSS Power: setting=D0, actual=D0 Node 0x1e [Pin Complex] wcaps 0x400501: Stereo Pincap 0x00000010: OUT Pin Default 0x411111f0: [N/A] Speaker at Ext Rear Conn = 1/8, Color = Black DefAssociation = 0xf, Sequence = 0x0 Misc = NO_PRESENCE Pin-ctls: 0x40: OUT Power states: D0 D1 D2 D3 EPSS Power: setting=D0, actual=D0 Connection: 1 0x06 Node 0x1f [Vendor Defined Widget] wcaps 0xf00000: Mono Node 0x20 [Vendor Defined Widget] wcaps 0xf00040: Mono Processing caps: benign=0, ncoeff=142 Node 0x21 [Pin Complex] wcaps 0x40058d: Stereo Amp-Out Control: name="Headphone Playback Switch", index=0, device=0 ControlAmp: chs=3, dir=Out, idx=0, ofs=0 Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1 Amp-Out vals: [0x00 0x00] Pincap 0x0001001c: OUT HP EAPD Detect EAPD 0x2: EAPD Pin Default 0x03211020: [Jack] HP Out at Ext Left Conn = 1/8, Color = Black DefAssociation = 0x2, Sequence = 0x0 Pin-ctls: 0xc0: OUT HP Unsolicited: tag=01, enabled=1 Power states: D0 D1 D2 D3 EPSS Power: setting=D0, actual=D0 Connection: 2 0x02* 0x03 Node 0x22 [Audio Mixer] wcaps 0x20010b: Stereo Amp-In Amp-In caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1 Amp-In vals: [0x80 0x80] [0x80 0x80] [0x80 0x80] [0x80 0x80] [0x80 0x80] Connection: 5 0x19 0x1a 0x1b 0x1d 0x13 Node 0x23 [Audio Mixer] wcaps 0x20010b: Stereo Amp-In Amp-In caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1 Amp-In vals: [0x00 0x00] [0x80 0x80] [0x80 0x80] [0x80 0x80] [0x80 0x80] Connection: 5 0x19 0x1a 0x1b 0x1d 0x12 Node 0x24 [Audio Selector] wcaps 0x300101: Stereo Connection: 3 0x12* 0x13 0x18 Codec: Intel Kabylake HDMI Address: 2 AFG Function Id: 0x1 (unsol 0) Vendor Id: 0x8086280b Subsystem Id: 0x80860101 Revision Id: 0x100000 No Modem Function Group found Default PCM: rates [0x0]: bits [0x0]: formats [0x0]: Default Amp-In caps: N/A Default Amp-Out caps: N/A State of AFG node 0x01: Power states: D0 D3 CLKSTOP EPSS Power: setting=D0, actual=D0, Clock-stop-OK GPIO: io=0, o=0, i=0, unsolicited=0, wake=0 Node 0x02 [Audio Output] wcaps 0x6611: 8-Channels Digital Device: name="HDMI 0", type="HDMI", device=3 Device: name="HDMI 2", type="HDMI", device=5 Converter: stream=3, channel=0 Digital: Enabled KAE Digital category: 0x0 IEC Coding Type: 0x0 PCM: rates [0x7f0]: 32000 44100 48000 88200 96000 176400 192000 bits [0x1a]: 16 24 32 formats [0x5]: PCM AC3 Power states: D0 D3 EPSS Power: setting=D0, actual=D0 Node 0x03 [Audio Output] wcaps 0x6611: 8-Channels Digital Device: name="HDMI 1", type="HDMI", device=4 Converter: stream=2, channel=0 Digital: Enabled KAE Digital category: 0x0 IEC Coding Type: 0x0 PCM: rates [0x7f0]: 32000 44100 48000 88200 96000 176400 192000 bits [0x1a]: 16 24 32 formats [0x5]: PCM AC3 Power states: D0 D3 EPSS Power: setting=D3, actual=D3 Node 0x04 [Audio Output] wcaps 0x6611: 8-Channels Digital Converter: stream=0, channel=0 Digital: Enabled KAE Digital category: 0x0 IEC Coding Type: 0x0 PCM: rates [0x7f0]: 32000 44100 48000 88200 96000 176400 192000 bits [0x1a]: 16 24 32 formats [0x5]: PCM AC3 Power states: D0 D3 EPSS Power: setting=D3, actual=D3 Node 0x05 [Pin Complex] wcaps 0x40778d: 8-Channels Digital Amp-Out CP Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1 Amp-Out vals: [0x00 0x00] Pincap 0x0b000094: OUT Detect HBR HDMI DP Pin Default 0x18560010: [Jack] Digital Out at Int HDMI Conn = Digital, Color = Unknown DefAssociation = 0x1, Sequence = 0x0 Pin-ctls: 0x40: OUT Unsolicited: tag=00, enabled=0 Power states: D0 D3 EPSS Power: setting=D0, actual=D0 Devices: 3 Dev 00: PD = 0, ELDV = 0, IA = 0, Connections [ 0x02* 0x03 0x04 ] *Dev 01: PD = 1, ELDV = 1, IA = 0, Connections [ 0x02* 0x03 0x04 ] Dev 02: PD = 0, ELDV = 0, IA = 0, Connections [ 0x02* 0x03 0x04 ] Connection: 3 0x02* 0x03 0x04 Node 0x06 [Pin Complex] wcaps 0x40778d: 8-Channels Digital Amp-Out CP Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1 Amp-Out vals: [0x00 0x00] Pincap 0x0b000094: OUT Detect HBR HDMI DP Pin Default 0x18560010: [Jack] Digital Out at Int HDMI Conn = Digital, Color = Unknown DefAssociation = 0x1, Sequence = 0x0 Pin-ctls: 0x00: Unsolicited: tag=00, enabled=0 Power states: D0 D3 EPSS Power: setting=D0, actual=D0 Devices: 0 Connection: 0 Node 0x07 [Pin Complex] wcaps 0x40778d: 8-Channels Digital Amp-Out CP Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1 Amp-Out vals: [0x00 0x00] Pincap 0x0b000094: OUT Detect HBR HDMI DP Pin Default 0x18560010: [Jack] Digital Out at Int HDMI Conn = Digital, Color = Unknown DefAssociation = 0x1, Sequence = 0x0 Pin-ctls: 0x00: Unsolicited: tag=00, enabled=0 Power states: D0 D3 EPSS Power: setting=D0, actual=D0 Devices: 0 Connection: 0 Node 0x08 [Vendor Defined Widget] wcaps 0xf00000: Mono --endcollapse-- !!USB Descriptors !!--------------- --startcollapse-- Bus 007 Device 005: ID 03f0:0269 HP, Inc Device Descriptor: bLength 18 bDescriptorType 1 bcdUSB 2.00 bDeviceClass 0 bDeviceSubClass 0 bDeviceProtocol 0 bMaxPacketSize0 64 idVendor 0x03f0 HP, Inc idProduct 0x0269 bcdDevice 0.03 iManufacturer 3 iProduct 1 iSerial 2 bNumConfigurations 1 Configuration Descriptor: bLength 9 bDescriptorType 2 wTotalLength 0x00f9 bNumInterfaces 4 bConfigurationValue 1 iConfiguration 4 bmAttributes 0x80 (Bus Powered) MaxPower 100mA Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 0 bAlternateSetting 0 bNumEndpoints 1 bInterfaceClass 1 Audio bInterfaceSubClass 1 Control Device bInterfaceProtocol 0 iInterface 5 AudioControl Interface Descriptor: bLength 10 bDescriptorType 36 bDescriptorSubtype 1 (HEADER) bcdADC 1.00 wTotalLength 0x005d bInCollection 2 baInterfaceNr(0) 1 baInterfaceNr(1) 2 AudioControl Interface Descriptor: bLength 12 bDescriptorType 36 bDescriptorSubtype 2 (INPUT_TERMINAL) bTerminalID 1 wTerminalType 0x0402 Headset bAssocTerminal 0 bNrChannels 2 wChannelConfig 0x0003 Left Front (L) Right Front (R) iChannelNames 0 iTerminal 0 AudioControl Interface Descriptor: bLength 13 bDescriptorType 36 bDescriptorSubtype 6 (FEATURE_UNIT) bUnitID 3 bSourceID 1 bControlSize 2 bmaControls(0) 0x0001 Mute Control bmaControls(1) 0x0002 Volume Control bmaControls(2) 0x0002 Volume Control iFeature 0 AudioControl Interface Descriptor: bLength 9 bDescriptorType 36 bDescriptorSubtype 3 (OUTPUT_TERMINAL) bTerminalID 2 wTerminalType 0x0101 USB Streaming bAssocTerminal 1 bSourceID 4 iTerminal 0 AudioControl Interface Descriptor: bLength 15 bDescriptorType 36 bDescriptorSubtype 8 (EXTENSION_UNIT) bUnitID 4 wExtensionCode 0x0bda bNrInPins 1 baSourceID(0) 3 bNrChannels 2 wChannelConfig 0x0003 Left Front (L) Right Front (R) iChannelNames 0 bControlSize 1 bmControls(0) 0x01 iExtension 0 AudioControl Interface Descriptor: bLength 12 bDescriptorType 36 bDescriptorSubtype 2 (INPUT_TERMINAL) bTerminalID 14 wTerminalType 0x0101 USB Streaming bAssocTerminal 0 bNrChannels 2 wChannelConfig 0x0003 Left Front (L) Right Front (R) iChannelNames 0 iTerminal 21 AudioControl Interface Descriptor: bLength 9 bDescriptorType 36 bDescriptorSubtype 3 (OUTPUT_TERMINAL) bTerminalID 15 wTerminalType 0x0402 Headset bAssocTerminal 14 bSourceID 16 iTerminal 0 AudioControl Interface Descriptor: bLength 13 bDescriptorType 36 bDescriptorSubtype 6 (FEATURE_UNIT) bUnitID 16 bSourceID 14 bControlSize 2 bmaControls(0) 0x0001 Mute Control bmaControls(1) 0x0002 Volume Control bmaControls(2) 0x0002 Volume Control iFeature 0 Endpoint Descriptor: bLength 9 bDescriptorType 5 bEndpointAddress 0x87 EP 7 IN bmAttributes 3 Transfer Type Interrupt Synch Type None Usage Type Data wMaxPacketSize 0x0010 1x 16 bytes bInterval 8 bRefresh 0 bSynchAddress 0 Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 1 bAlternateSetting 0 bNumEndpoints 0 bInterfaceClass 1 Audio bInterfaceSubClass 2 Streaming bInterfaceProtocol 0 iInterface 18 Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 1 bAlternateSetting 1 bNumEndpoints 1 bInterfaceClass 1 Audio bInterfaceSubClass 2 Streaming bInterfaceProtocol 0 iInterface 0 AudioStreaming Interface Descriptor: bLength 7 bDescriptorType 36 bDescriptorSubtype 1 (AS_GENERAL) bTerminalLink 2 bDelay 1 frames wFormatTag 0x0001 PCM AudioStreaming Interface Descriptor: bLength 11 bDescriptorType 36 bDescriptorSubtype 2 (FORMAT_TYPE) bFormatType 1 (FORMAT_TYPE_I) bNrChannels 2 bSubframeSize 2 bBitResolution 16 bSamFreqType 1 Discrete tSamFreq[ 0] 48000 Endpoint Descriptor: bLength 9 bDescriptorType 5 bEndpointAddress 0x81 EP 1 IN bmAttributes 5 Transfer Type Isochronous Synch Type Asynchronous Usage Type Data wMaxPacketSize 0x00f8 1x 248 bytes bInterval 4 bRefresh 0 bSynchAddress 0 AudioStreaming Endpoint Descriptor: bLength 7 bDescriptorType 37 bDescriptorSubtype 1 (EP_GENERAL) bmAttributes 0x01 Sampling Frequency bLockDelayUnits 0 Undefined wLockDelay 0x0000 Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 2 bAlternateSetting 0 bNumEndpoints 0 bInterfaceClass 1 Audio bInterfaceSubClass 2 Streaming bInterfaceProtocol 0 iInterface 21 Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 2 bAlternateSetting 1 bNumEndpoints 1 bInterfaceClass 1 Audio bInterfaceSubClass 2 Streaming bInterfaceProtocol 0 iInterface 0 AudioStreaming Interface Descriptor: bLength 7 bDescriptorType 36 bDescriptorSubtype 1 (AS_GENERAL) bTerminalLink 14 bDelay 1 frames wFormatTag 0x0001 PCM AudioStreaming Interface Descriptor: bLength 11 bDescriptorType 36 bDescriptorSubtype 2 (FORMAT_TYPE) bFormatType 1 (FORMAT_TYPE_I) bNrChannels 2 bSubframeSize 2 bBitResolution 16 bSamFreqType 1 Discrete tSamFreq[ 0] 48000 Endpoint Descriptor: bLength 9 bDescriptorType 5 bEndpointAddress 0x04 EP 4 OUT bmAttributes 9 Transfer Type Isochronous Synch Type Adaptive Usage Type Data wMaxPacketSize 0x00f8 1x 248 bytes bInterval 4 bRefresh 0 bSynchAddress 0 AudioStreaming Endpoint Descriptor: bLength 7 bDescriptorType 37 bDescriptorSubtype 1 (EP_GENERAL) bmAttributes 0x01 Sampling Frequency bLockDelayUnits 0 Undefined wLockDelay 0x0000 Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 3 bAlternateSetting 0 bNumEndpoints 1 bInterfaceClass 3 Human Interface Device bInterfaceSubClass 0 bInterfaceProtocol 0 iInterface 0 HID Device Descriptor: bLength 9 bDescriptorType 33 bcdHID 1.11 bCountryCode 0 Not supported bNumDescriptors 1 bDescriptorType 34 Report wDescriptorLength 183 Report Descriptors: ** UNAVAILABLE ** Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x88 EP 8 IN bmAttributes 3 Transfer Type Interrupt Synch Type None Usage Type Data wMaxPacketSize 0x0010 1x 16 bytes bInterval 4 --endcollapse-- !!USB Stream information !!---------------------- --startcollapse-- HP-Thunderbolt-Dock-Audio-Headset : USB Audio Playback: Status: Running Interface = 2 Altset = 1 Packet Size = 248 Momentary freq = 48000 Hz (0x6.0000) Interface 2 Altset 1 Format: S16_LE Channels: 2 Endpoint: 0x04 (4 OUT) (ADAPTIVE) Rates: 48000 Data packet interval: 1000 us Bits: 16 Channel map: FL FR Capture: Status: Running Interface = 1 Altset = 1 Packet Size = 248 Momentary freq = 48000 Hz (0x6.0000) Interface 1 Altset 1 Format: S16_LE Channels: 2 Endpoint: 0x81 (1 IN) (ASYNC) Rates: 48000 Data packet interval: 1000 us Bits: 16 Channel map: FL FR --endcollapse-- !!USB Mixer information !!--------------------- --startcollapse-- USB Mixer: usb_id=0x03f00269, ctrlif=0, ctlerr=0 Card: HP-Thunderbolt-Dock-Audio-Headset Unit: 3 Control: name="Headset Capture Volume", index=0 Info: id=3, control=2, cmask=0x3, channels=2, type="S16" Volume: min=-8576, max=1536, dBmin=-3350, dBmax=600 Unit: 3 Control: name="Headset Capture Switch", index=0 Info: id=3, control=1, cmask=0x0, channels=1, type="INV_BOOLEAN" Volume: min=0, max=1, dBmin=0, dBmax=0 Unit: 4 Control: name="Extension Unit Switch", index=0 Info: id=4, control=1, cmask=0x0, channels=1, type="BOOLEAN" Volume: min=0, max=1, dBmin=0, dBmax=0 Unit: 16 Control: name="Headsets Playback Volume", index=0 Info: id=16, control=2, cmask=0x3, channels=2, type="S16" Volume: min=-16800, max=0, dBmin=-6562, dBmax=0 Unit: 16 Control: name="Headsets Playback Switch", index=0 Info: id=16, control=1, cmask=0x0, channels=1, type="INV_BOOLEAN" Volume: min=0, max=1, dBmin=0, dBmax=0 --endcollapse-- !!ALSA Device nodes !!----------------- crw-rw----+ 1 root audio 116, 9 Sep 22 15:02 /dev/snd/controlC0 crw-rw----+ 1 root audio 116, 12 Sep 27 10:40 /dev/snd/controlC1 crw-rw----+ 1 root audio 116, 24 Sep 22 15:02 /dev/snd/controlC2 crw-rw----+ 1 root audio 116, 8 Sep 22 15:02 /dev/snd/hwC0D0 crw-rw----+ 1 root audio 116, 23 Sep 22 15:02 /dev/snd/hwC2D0 crw-rw----+ 1 root audio 116, 22 Sep 22 15:02 /dev/snd/hwC2D2 crw-rw----+ 1 root audio 116, 6 Sep 23 09:59 /dev/snd/pcmC0D10p crw-rw----+ 1 root audio 116, 7 Sep 23 09:59 /dev/snd/pcmC0D11p crw-rw----+ 1 root audio 116, 2 Sep 23 09:59 /dev/snd/pcmC0D3p crw-rw----+ 1 root audio 116, 3 Sep 23 09:59 /dev/snd/pcmC0D7p crw-rw----+ 1 root audio 116, 4 Sep 23 09:59 /dev/snd/pcmC0D8p crw-rw----+ 1 root audio 116, 5 Sep 23 09:59 /dev/snd/pcmC0D9p crw-rw----+ 1 root audio 116, 11 Sep 27 10:40 /dev/snd/pcmC1D0c crw-rw----+ 1 root audio 116, 10 Sep 27 10:40 /dev/snd/pcmC1D0p crw-rw----+ 1 root audio 116, 16 Sep 22 15:06 /dev/snd/pcmC2D0c crw-rw----+ 1 root audio 116, 15 Sep 22 15:06 /dev/snd/pcmC2D0p crw-rw----+ 1 root audio 116, 18 Sep 22 15:02 /dev/snd/pcmC2D1c crw-rw----+ 1 root audio 116, 17 Sep 22 15:02 /dev/snd/pcmC2D1p crw-rw----+ 1 root audio 116, 19 Sep 22 15:06 /dev/snd/pcmC2D3p crw-rw----+ 1 root audio 116, 20 Sep 22 15:06 /dev/snd/pcmC2D4p crw-rw----+ 1 root audio 116, 21 Sep 22 15:06 /dev/snd/pcmC2D5p crw-rw----+ 1 root audio 116, 13 Sep 22 15:06 /dev/snd/pcmC2D6c crw-rw----+ 1 root audio 116, 14 Sep 23 09:59 /dev/snd/pcmC2D7c crw-rw----+ 1 root audio 116, 1 Sep 22 15:02 /dev/snd/seq crw-rw----+ 1 root audio 116, 33 Sep 22 15:02 /dev/snd/timer /dev/snd/by-id: total 0 drwxr-xr-x. 2 root root 60 Sep 27 10:40 . drwxr-xr-x. 4 root root 580 Sep 27 10:40 .. lrwxrwxrwx. 1 root root 12 Sep 27 10:40 usb-Generic_USB_Audio_201604140001-00 -> ../controlC1 /dev/snd/by-path: total 0 drwxr-xr-x. 2 root root 100 Sep 27 10:40 . drwxr-xr-x. 4 root root 580 Sep 27 10:40 .. lrwxrwxrwx. 1 root root 12 Sep 22 15:02 pci-0000:00:1f.3-platform-skl_hda_dsp_generic -> ../controlC2 lrwxrwxrwx. 1 root root 12 Sep 22 15:02 pci-0000:01:00.1 -> ../controlC0 lrwxrwxrwx. 1 root root 12 Sep 27 10:40 pci-0000:3d:00.0-usb-0:1.3.5:1.0 -> ../controlC1 !!ALSA configuration files !!------------------------ !!System wide config file (/etc/asound.conf) # # Place your global alsa-lib configuration here... # !!Aplay/Arecord output !!-------------------- APLAY **** List of PLAYBACK Hardware Devices **** card 0: NVidia [HDA NVidia], device 3: HDMI 0 [HDMI 0] Subdevices: 1/1 Subdevice #0: subdevice #0 card 0: NVidia [HDA NVidia], device 7: HDMI 1 [HDMI 1] Subdevices: 1/1 Subdevice #0: subdevice #0 card 0: NVidia [HDA NVidia], device 8: HDMI 2 [HDMI 2] Subdevices: 1/1 Subdevice #0: subdevice #0 card 0: NVidia [HDA NVidia], device 9: HDMI 3 [HDMI 3] Subdevices: 1/1 Subdevice #0: subdevice #0 card 0: NVidia [HDA NVidia], device 10: HDMI 4 [HDMI 4] Subdevices: 1/1 Subdevice #0: subdevice #0 card 0: NVidia [HDA NVidia], device 11: HDMI 5 [HDMI 5] Subdevices: 1/1 Subdevice #0: subdevice #0 card 1: Headset [Thunderbolt Dock Audio Headset], device 0: USB Audio [USB Audio] Subdevices: 0/1 Subdevice #0: subdevice #0 card 2: sofhdadsp [sof-hda-dsp], device 0: HDA Analog (*) [] Subdevices: 0/1 Subdevice #0: subdevice #0 card 2: sofhdadsp [sof-hda-dsp], device 1: HDA Digital (*) [] Subdevices: 1/1 Subdevice #0: subdevice #0 card 2: sofhdadsp [sof-hda-dsp], device 3: HDMI1 (*) [] Subdevices: 0/1 Subdevice #0: subdevice #0 card 2: sofhdadsp [sof-hda-dsp], device 4: HDMI2 (*) [] Subdevices: 0/1 Subdevice #0: subdevice #0 card 2: sofhdadsp [sof-hda-dsp], device 5: HDMI3 (*) [] Subdevices: 0/1 Subdevice #0: subdevice #0 ARECORD **** List of CAPTURE Hardware Devices **** card 1: Headset [Thunderbolt Dock Audio Headset], device 0: USB Audio [USB Audio] Subdevices: 0/1 Subdevice #0: subdevice #0 card 2: sofhdadsp [sof-hda-dsp], device 0: HDA Analog (*) [] Subdevices: 0/1 Subdevice #0: subdevice #0 card 2: sofhdadsp [sof-hda-dsp], device 1: HDA Digital (*) [] Subdevices: 1/1 Subdevice #0: subdevice #0 card 2: sofhdadsp [sof-hda-dsp], device 6: DMIC (*) [] Subdevices: 0/1 Subdevice #0: subdevice #0 card 2: sofhdadsp [sof-hda-dsp], device 7: DMIC16kHz (*) [] Subdevices: 1/1 Subdevice #0: subdevice #0 !!Amixer output !!------------- !!-------Mixer controls for card NVidia Card hw:0 'NVidia'/'HDA NVidia at 0xe1000000 irq 17' Mixer name : 'Nvidia GPU 93 HDMI/DP' Components : 'HDA:10de0093,103c8782,00100100' Controls : 42 Simple ctrls : 6 Simple mixer control 'IEC958',0 Capabilities: pswitch pswitch-joined Playback channels: Mono Mono: Playback [on] Simple mixer control 'IEC958',1 Capabilities: pswitch pswitch-joined Playback channels: Mono Mono: Playback [on] Simple mixer control 'IEC958',2 Capabilities: pswitch pswitch-joined Playback channels: Mono Mono: Playback [on] Simple mixer control 'IEC958',3 Capabilities: pswitch pswitch-joined Playback channels: Mono Mono: Playback [on] Simple mixer control 'IEC958',4 Capabilities: pswitch pswitch-joined Playback channels: Mono Mono: Playback [on] Simple mixer control 'IEC958',5 Capabilities: pswitch pswitch-joined Playback channels: Mono Mono: Playback [on] !!-------Mixer controls for card Headset Card hw:1 'Headset'/'HP-Thunderbolt-Dock-Audio-Headset' Mixer name : 'USB Mixer' Components : 'USB03f0:0269' Controls : 7 Simple ctrls : 3 Simple mixer control 'Extension Unit',0 Capabilities: pswitch pswitch-joined Playback channels: Mono Mono: Playback [off] Simple mixer control 'Headset',0 Capabilities: cvolume cswitch cswitch-joined Capture channels: Front Left - Front Right Limits: Capture 0 - 79 Front Left: Capture 35 [44%] [-16.00dB] [off] Front Right: Capture 35 [44%] [-16.00dB] [off] Simple mixer control 'Headsets',0 Capabilities: pvolume pswitch pswitch-joined Playback channels: Front Left - Front Right Limits: Playback 0 - 175 Mono: Front Left: Playback 175 [100%] [0.00dB] [on] Front Right: Playback 175 [100%] [0.00dB] [on] !!-------Mixer controls for card sofhdadsp Card hw:2 'sofhdadsp'/'HP-HPZBookFury15G7MobileWorkstation--8783' Mixer name : 'Realtek ALC285' Components : 'HDA:8086280b,80860101,00100000 HDA:10ec0285,103c8783,00100002 cfg-dmics:4' Controls : 48 Simple ctrls : 18 Simple mixer control 'Master',0 Capabilities: pvolume pvolume-joined pswitch pswitch-joined Playback channels: Mono Limits: Playback 0 - 87 Mono: Playback 87 [100%] [0.00dB] [on] Simple mixer control 'Headphone',0 Capabilities: pvolume pswitch Playback channels: Front Left - Front Right Limits: Playback 0 - 87 Mono: Front Left: Playback 71 [82%] [-12.00dB] [on] Front Right: Playback 71 [82%] [-12.00dB] [on] Simple mixer control 'Speaker',0 Capabilities: pvolume pswitch Playback channels: Front Left - Front Right Limits: Playback 0 - 87 Mono: Front Left: Playback 71 [82%] [-12.00dB] [off] Front Right: Playback 71 [82%] [-12.00dB] [off] Simple mixer control 'Mic Boost',0 Capabilities: volume Playback channels: Front Left - Front Right Capture channels: Front Left - Front Right Limits: 0 - 3 Front Left: 0 [0%] [0.00dB] Front Right: 0 [0%] [0.00dB] Simple mixer control 'IEC958',0 Capabilities: pswitch pswitch-joined Playback channels: Mono Mono: Playback [on] Simple mixer control 'IEC958',1 Capabilities: pswitch pswitch-joined Playback channels: Mono Mono: Playback [on] Simple mixer control 'IEC958',2 Capabilities: pswitch pswitch-joined Playback channels: Mono Mono: Playback [on] Simple mixer control 'Capture',0 Capabilities: cvolume cswitch Capture channels: Front Left - Front Right Limits: Capture 0 - 63 Front Left: Capture 59 [94%] [27.00dB] [on] Front Right: Capture 59 [94%] [27.00dB] [on] Simple mixer control 'Auto-Mute Mode',0 Capabilities: enum Items: 'Disabled' 'Enabled' Item0: 'Disabled' Simple mixer control 'Dmic0',0 Capabilities: cvolume cswitch Capture channels: Front Left - Front Right - Rear Left - Rear Right Limits: Capture 0 - 70 Front Left: Capture 49 [70%] [-1.00dB] [off] Front Right: Capture 49 [70%] [-1.00dB] [off] Rear Left: Capture 49 [70%] [-1.00dB] [off] Rear Right: Capture 49 [70%] [-1.00dB] [off] Simple mixer control 'Dmic1 2nd',0 Capabilities: cvolume Capture channels: Front Left - Front Right Limits: Capture 0 - 70 Front Left: Capture 50 [71%] [0.00dB] Front Right: Capture 50 [71%] [0.00dB] Simple mixer control 'PGA1.0 1 Master',0 Capabilities: pvolume Playback channels: Front Left - Front Right Limits: Playback 0 - 32 Mono: Front Left: Playback 32 [100%] [0.00dB] Front Right: Playback 32 [100%] [0.00dB] Simple mixer control 'PGA2.0 2 Master',0 Capabilities: cvolume Capture channels: Front Left - Front Right Limits: Capture 0 - 80 Front Left: Capture 50 [62%] [0.00dB] Front Right: Capture 50 [62%] [0.00dB] Simple mixer control 'PGA3.0 3 Master',0 Capabilities: pvolume Playback channels: Front Left - Front Right Limits: Playback 0 - 32 Mono: Front Left: Playback 32 [100%] [0.00dB] Front Right: Playback 32 [100%] [0.00dB] Simple mixer control 'PGA4.0 4 Master',0 Capabilities: cvolume Capture channels: Front Left - Front Right Limits: Capture 0 - 80 Front Left: Capture 50 [62%] [0.00dB] Front Right: Capture 50 [62%] [0.00dB] Simple mixer control 'PGA7.0 7 Master',0 Capabilities: pvolume Playback channels: Front Left - Front Right Limits: Playback 0 - 32 Mono: Front Left: Playback 32 [100%] [0.00dB] Front Right: Playback 32 [100%] [0.00dB] Simple mixer control 'PGA8.0 8 Master',0 Capabilities: pvolume Playback channels: Front Left - Front Right Limits: Playback 0 - 32 Mono: Front Left: Playback 32 [100%] [0.00dB] Front Right: Playback 32 [100%] [0.00dB] Simple mixer control 'PGA9.0 9 Master',0 Capabilities: pvolume Playback channels: Front Left - Front Right Limits: Playback 0 - 32 Mono: Front Left: Playback 32 [100%] [0.00dB] Front Right: Playback 32 [100%] [0.00dB] !!Alsactl output !!-------------- --startcollapse-- state.NVidia { control.1 { iface CARD name 'HDMI/DP,pcm=3 Jack' value false comment { access read type BOOLEAN count 1 } } control.2 { iface MIXER name 'IEC958 Playback Con Mask' value '0fff000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000' comment { access read type IEC958 count 1 } } control.3 { iface MIXER name 'IEC958 Playback Pro Mask' value '0f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000' comment { access read type IEC958 count 1 } } control.4 { iface MIXER name 'IEC958 Playback Default' value '0400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000' comment { access 'read write' type IEC958 count 1 } } control.5 { iface MIXER name 'IEC958 Playback Switch' value true comment { access 'read write' type BOOLEAN count 1 } } control.6 { iface PCM device 3 name ELD value '' comment { access 'read volatile' type BYTES count 0 } } control.7 { iface CARD name 'HDMI/DP,pcm=7 Jack' value false comment { access read type BOOLEAN count 1 } } control.8 { iface MIXER name 'IEC958 Playback Con Mask' index 1 value '0fff000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000' comment { access read type IEC958 count 1 } } control.9 { iface MIXER name 'IEC958 Playback Pro Mask' index 1 value '0f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000' comment { access read type IEC958 count 1 } } control.10 { iface MIXER name 'IEC958 Playback Default' index 1 value '0400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000' comment { access 'read write' type IEC958 count 1 } } control.11 { iface MIXER name 'IEC958 Playback Switch' index 1 value true comment { access 'read write' type BOOLEAN count 1 } } control.12 { iface PCM device 7 name ELD value '' comment { access 'read volatile' type BYTES count 0 } } control.13 { iface CARD name 'HDMI/DP,pcm=8 Jack' value false comment { access read type BOOLEAN count 1 } } control.14 { iface MIXER name 'IEC958 Playback Con Mask' index 2 value '0fff000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000' comment { access read type IEC958 count 1 } } control.15 { iface MIXER name 'IEC958 Playback Pro Mask' index 2 value '0f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000' comment { access read type IEC958 count 1 } } control.16 { iface MIXER name 'IEC958 Playback Default' index 2 value '0400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000' comment { access 'read write' type IEC958 count 1 } } control.17 { iface MIXER name 'IEC958 Playback Switch' index 2 value true comment { access 'read write' type BOOLEAN count 1 } } control.18 { iface PCM device 8 name ELD value '' comment { access 'read volatile' type BYTES count 0 } } control.19 { iface CARD name 'HDMI/DP,pcm=9 Jack' value false comment { access read type BOOLEAN count 1 } } control.20 { iface MIXER name 'IEC958 Playback Con Mask' index 3 value '0fff000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000' comment { access read type IEC958 count 1 } } control.21 { iface MIXER name 'IEC958 Playback Pro Mask' index 3 value '0f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000' comment { access read type IEC958 count 1 } } control.22 { iface MIXER name 'IEC958 Playback Default' index 3 value '0482000200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000' comment { access 'read write' type IEC958 count 1 } } control.23 { iface MIXER name 'IEC958 Playback Switch' index 3 value true comment { access 'read write' type BOOLEAN count 1 } } control.24 { iface PCM device 9 name ELD value '' comment { access 'read volatile' type BYTES count 0 } } control.25 { iface CARD name 'HDMI/DP,pcm=10 Jack' value false comment { access read type BOOLEAN count 1 } } control.26 { iface MIXER name 'IEC958 Playback Con Mask' index 4 value '0fff000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000' comment { access read type IEC958 count 1 } } control.27 { iface MIXER name 'IEC958 Playback Pro Mask' index 4 value '0f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000' comment { access read type IEC958 count 1 } } control.28 { iface MIXER name 'IEC958 Playback Default' index 4 value '0482000200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000' comment { access 'read write' type IEC958 count 1 } } control.29 { iface MIXER name 'IEC958 Playback Switch' index 4 value true comment { access 'read write' type BOOLEAN count 1 } } control.30 { iface PCM device 10 name ELD value '' comment { access 'read volatile' type BYTES count 0 } } control.31 { iface CARD name 'HDMI/DP,pcm=11 Jack' value false comment { access read type BOOLEAN count 1 } } control.32 { iface MIXER name 'IEC958 Playback Con Mask' index 5 value '0fff000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000' comment { access read type IEC958 count 1 } } control.33 { iface MIXER name 'IEC958 Playback Pro Mask' index 5 value '0f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000' comment { access read type IEC958 count 1 } } control.34 { iface MIXER name 'IEC958 Playback Default' index 5 value '0400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000' comment { access 'read write' type IEC958 count 1 } } control.35 { iface MIXER name 'IEC958 Playback Switch' index 5 value true comment { access 'read write' type BOOLEAN count 1 } } control.36 { iface PCM device 11 name ELD value '' comment { access 'read volatile' type BYTES count 0 } } control.37 { iface PCM device 3 name 'Playback Channel Map' value.0 0 value.1 0 value.2 0 value.3 0 value.4 0 value.5 0 value.6 0 value.7 0 comment { access 'read write' type INTEGER count 8 range '0 - 36' } } control.38 { iface PCM device 7 name 'Playback Channel Map' value.0 0 value.1 0 value.2 0 value.3 0 value.4 0 value.5 0 value.6 0 value.7 0 comment { access 'read write' type INTEGER count 8 range '0 - 36' } } control.39 { iface PCM device 8 name 'Playback Channel Map' value.0 0 value.1 0 value.2 0 value.3 0 value.4 0 value.5 0 value.6 0 value.7 0 comment { access 'read write' type INTEGER count 8 range '0 - 36' } } control.40 { iface PCM device 9 name 'Playback Channel Map' value.0 0 value.1 0 value.2 0 value.3 0 value.4 0 value.5 0 value.6 0 value.7 0 comment { access 'read write' type INTEGER count 8 range '0 - 36' } } control.41 { iface PCM device 10 name 'Playback Channel Map' value.0 0 value.1 0 value.2 0 value.3 0 value.4 0 value.5 0 value.6 0 value.7 0 comment { access 'read write' type INTEGER count 8 range '0 - 36' } } control.42 { iface PCM device 11 name 'Playback Channel Map' value.0 0 value.1 0 value.2 0 value.3 0 value.4 0 value.5 0 value.6 0 value.7 0 comment { access 'read write' type INTEGER count 8 range '0 - 36' } } } state.Headset { control.1 { iface PCM name 'Capture Channel Map' value.0 3 value.1 4 comment { access read type INTEGER count 2 range '0 - 36' } } control.2 { iface PCM name 'Playback Channel Map' value.0 3 value.1 4 comment { access read type INTEGER count 2 range '0 - 36' } } control.3 { iface MIXER name 'Headset Capture Switch' value false comment { access 'read write' type BOOLEAN count 1 } } control.4 { iface MIXER name 'Headset Capture Volume' value.0 35 value.1 35 comment { access 'read write' type INTEGER count 2 range '0 - 79' dbmin -3350 dbmax 600 dbvalue.0 -1600 dbvalue.1 -1600 } } control.5 { iface MIXER name 'Extension Unit Switch' value false comment { access 'read write' type BOOLEAN count 1 } } control.6 { iface MIXER name 'Headsets Playback Switch' value true comment { access 'read write' type BOOLEAN count 1 } } control.7 { iface MIXER name 'Headsets Playback Volume' value.0 175 value.1 175 comment { access 'read write' type INTEGER count 2 range '0 - 175' dbmin -6562 dbmax 0 dbvalue.0 0 dbvalue.1 0 } } } state.sofhdadsp { control.1 { iface MIXER name 'Headphone Playback Volume' value.0 71 value.1 71 comment { access 'read write' type INTEGER count 2 range '0 - 87' dbmin -6525 dbmax 0 dbvalue.0 -1200 dbvalue.1 -1200 } } control.2 { iface MIXER name 'Headphone Playback Switch' value.0 true value.1 true comment { access 'read write' type BOOLEAN count 2 } } control.3 { iface MIXER name 'Speaker Playback Volume' value.0 71 value.1 71 comment { access 'read write' type INTEGER count 2 range '0 - 87' dbmin -6525 dbmax 0 dbvalue.0 -1200 dbvalue.1 -1200 } } control.4 { iface MIXER name 'Speaker Playback Switch' value.0 false value.1 false comment { access 'read write' type BOOLEAN count 2 } } control.5 { iface MIXER name 'Auto-Mute Mode' value Disabled comment { access 'read write' type ENUMERATED count 1 item.0 Disabled item.1 Enabled } } control.6 { iface MIXER name 'Capture Volume' value.0 59 value.1 59 comment { access 'read write' type INTEGER count 2 range '0 - 63' dbmin -1725 dbmax 3000 dbvalue.0 2700 dbvalue.1 2700 } } control.7 { iface MIXER name 'Capture Switch' value.0 true value.1 true comment { access 'read write' type BOOLEAN count 2 } } control.8 { iface MIXER name 'Mic Boost Volume' value.0 0 value.1 0 comment { access 'read write' type INTEGER count 2 range '0 - 3' dbmin 0 dbmax 3000 dbvalue.0 0 dbvalue.1 0 } } control.9 { iface MIXER name 'Master Playback Volume' value 87 comment { access 'read write' type INTEGER count 1 range '0 - 87' dbmin -6525 dbmax 0 dbvalue.0 0 } } control.10 { iface MIXER name 'Master Playback Switch' value true comment { access 'read write' type BOOLEAN count 1 } } control.11 { iface CARD name 'Mic Jack' value true comment { access read type BOOLEAN count 1 } } control.12 { iface CARD name 'Headphone Jack' value true comment { access read type BOOLEAN count 1 } } control.13 { iface CARD name 'Speaker Phantom Jack' value true comment { access read type BOOLEAN count 1 } } control.14 { iface CARD name 'HDMI/DP,pcm=3 Jack' value true comment { access read type BOOLEAN count 1 } } control.15 { iface MIXER name 'IEC958 Playback Con Mask' value '0fff000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000' comment { access read type IEC958 count 1 } } control.16 { iface MIXER name 'IEC958 Playback Pro Mask' value '0f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000' comment { access read type IEC958 count 1 } } control.17 { iface MIXER name 'IEC958 Playback Default' value '0400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000' comment { access 'read write' type IEC958 count 1 } } control.18 { iface MIXER name 'IEC958 Playback Switch' value true comment { access 'read write' type BOOLEAN count 1 } } control.19 { iface PCM device 3 name ELD value '100008006c14000100000000000000004c65010353434549204d4f4e49544f5209070500' comment { access 'read volatile' type BYTES count 36 } } control.20 { iface CARD name 'HDMI/DP,pcm=4 Jack' value false comment { access read type BOOLEAN count 1 } } control.21 { iface MIXER name 'IEC958 Playback Con Mask' index 1 value '0fff000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000' comment { access read type IEC958 count 1 } } control.22 { iface MIXER name 'IEC958 Playback Pro Mask' index 1 value '0f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000' comment { access read type IEC958 count 1 } } control.23 { iface MIXER name 'IEC958 Playback Default' index 1 value '0400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000' comment { access 'read write' type IEC958 count 1 } } control.24 { iface MIXER name 'IEC958 Playback Switch' index 1 value true comment { access 'read write' type BOOLEAN count 1 } } control.25 { iface PCM device 4 name ELD value '' comment { access 'read volatile' type BYTES count 0 } } control.26 { iface CARD name 'HDMI/DP,pcm=5 Jack' value false comment { access read type BOOLEAN count 1 } } control.27 { iface MIXER name 'IEC958 Playback Con Mask' index 2 value '0fff000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000' comment { access read type IEC958 count 1 } } control.28 { iface MIXER name 'IEC958 Playback Pro Mask' index 2 value '0f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000' comment { access read type IEC958 count 1 } } control.29 { iface MIXER name 'IEC958 Playback Default' index 2 value '0400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000' comment { access 'read write' type IEC958 count 1 } } control.30 { iface MIXER name 'IEC958 Playback Switch' index 2 value true comment { access 'read write' type BOOLEAN count 1 } } control.31 { iface PCM device 5 name ELD value '' comment { access 'read volatile' type BYTES count 0 } } control.32 { iface PCM device 3 name 'Playback Channel Map' value.0 3 value.1 4 value.2 0 value.3 0 value.4 0 value.5 0 value.6 0 value.7 0 comment { access 'read write' type INTEGER count 8 range '0 - 36' } } control.33 { iface PCM device 4 name 'Playback Channel Map' value.0 0 value.1 0 value.2 0 value.3 0 value.4 0 value.5 0 value.6 0 value.7 0 comment { access 'read write' type INTEGER count 8 range '0 - 36' } } control.34 { iface PCM device 5 name 'Playback Channel Map' value.0 0 value.1 0 value.2 0 value.3 0 value.4 0 value.5 0 value.6 0 value.7 0 comment { access 'read write' type INTEGER count 8 range '0 - 36' } } control.35 { iface MIXER name 'PGA1.0 1 Master Playback Volume' value.0 32 value.1 32 comment { access 'read write' type INTEGER count 2 range '0 - 32' dbmin -9999999 dbmax 0 dbvalue.0 0 dbvalue.1 0 } } control.36 { iface MIXER name 'PGA2.0 2 Master Capture Volume' value.0 50 value.1 50 comment { access 'read write' type INTEGER count 2 range '0 - 80' dbmin -9999999 dbmax 3000 dbvalue.0 0 dbvalue.1 0 } } control.38 { iface MIXER name 'PGA3.0 3 Master Playback Volume' value.0 32 value.1 32 comment { access 'read write' type INTEGER count 2 range '0 - 32' dbmin -9999999 dbmax 0 dbvalue.0 0 dbvalue.1 0 } } control.39 { iface MIXER name 'PGA4.0 4 Master Capture Volume' value.0 50 value.1 50 comment { access 'read write' type INTEGER count 2 range '0 - 80' dbmin -9999999 dbmax 3000 dbvalue.0 0 dbvalue.1 0 } } control.41 { iface MIXER name 'PGA7.0 7 Master Playback Volume' value.0 32 value.1 32 comment { access 'read write' type INTEGER count 2 range '0 - 32' dbmin -9999999 dbmax 0 dbvalue.0 0 dbvalue.1 0 } } control.42 { iface MIXER name 'PGA8.0 8 Master Playback Volume' value.0 32 value.1 32 comment { access 'read write' type INTEGER count 2 range '0 - 32' dbmin -9999999 dbmax 0 dbvalue.0 0 dbvalue.1 0 } } control.43 { iface MIXER name 'PGA9.0 9 Master Playback Volume' value.0 32 value.1 32 comment { access 'read write' type INTEGER count 2 range '0 - 32' dbmin -9999999 dbmax 0 dbvalue.0 0 dbvalue.1 0 } } control.44 { iface MIXER name 'Dmic0 Capture Volume' value.0 49 value.1 49 value.2 49 value.3 49 comment { access 'read write' type INTEGER count 4 range '0 - 70' dbmin -9999999 dbmax 2000 dbvalue.0 -100 dbvalue.1 -100 dbvalue.2 -100 dbvalue.3 -100 } } control.45 { iface MIXER name 'Dmic0 Capture Switch' value.0 false value.1 false value.2 false value.3 false comment { access 'read write' type BOOLEAN count 4 } } control.47 { iface MIXER name 'Dmic1 2nd Capture Volume' value.0 50 value.1 50 comment { access 'read write' type INTEGER count 2 range '0 - 70' dbmin -9999999 dbmax 2000 dbvalue.0 0 dbvalue.1 0 } } } --endcollapse-- !!All Loaded Modules !!------------------ ac97_bus acpi_pad acpi_thermal_rel asn1_encoder auth_rpcgss bluetooth bnep bonding bridge btbcm btintel btrtl btusb cdc_ether cec cfg80211 coretemp crc32_pclmul crc32c_intel crct10dif_pclmul dm_bio_prison dm_crypt dm_persistent_data dm_thin_pool drm drm_kms_helper drm_ttm_helper e1000e ebtable_broute ebtable_filter ebtable_nat ebtables ecc ecdh_generic ee1004 fat fuse ghash_clmulni_intel hid_multitouch hid_sensor_als hid_sensor_hub hid_sensor_iio_common hid_sensor_trigger hp_accel hp_wireless hp_wmi i2c_algo_bit i2c_hid i2c_hid_acpi i2c_i801 i2c_nvidia_gpu i2c_smbus i915 iTCO_vendor_support iTCO_wdt idma64 industrialio industrialio_triggered_buffer int3400_thermal int3403_thermal int340x_thermal_zone intel_cstate intel_ish_ipc intel_ishtp intel_ishtp_hid intel_ishtp_loader intel_pch_thermal intel_pmc_bxt intel_powerclamp intel_rapl_common intel_rapl_msr intel_soc_dts_iosf intel_tcc_cooling intel_uncore intel_wmi_thunderbolt ip6_tables ip6table_filter ip6table_mangle ip6table_nat ip6table_raw ip6table_security ip_set ip_tables ipt_REJECT iptable_filter iptable_mangle iptable_nat iptable_raw iptable_security irqbypass iwlmvm iwlwifi joydev kfifo_buf kvm kvm_intel ledtrig_audio libarc4 lis3lv02d llc mac80211 mc mei mei_hdcp mei_me mei_wdt mii mmc_core mxm_wmi nf_conntrack nf_conntrack_broadcast nf_conntrack_netbios_ns nf_conntrack_tftp nf_defrag_ipv4 nf_defrag_ipv6 nf_nat nf_nat_tftp nf_reject_ipv4 nf_reject_ipv6 nf_tables nfnetlink nft_chain_nat nft_ct nft_fib nft_fib_inet nft_fib_ipv4 nft_fib_ipv6 nft_objref nft_reject nft_reject_inet nouveau nvme nvme_core pinctrl_cannonlake platform_profile processor_thermal_device processor_thermal_mbox processor_thermal_rapl processor_thermal_rfim r8152 r8153_ecm rapl rfcomm rfkill rtsx_pci rtsx_pci_sdmmc serio_raw snd snd_compress snd_ctl_led snd_hda_codec snd_hda_codec_generic snd_hda_codec_hdmi snd_hda_codec_realtek snd_hda_core snd_hda_ext_core snd_hda_intel snd_hwdep snd_intel_dspcfg snd_intel_sdw_acpi snd_pcm snd_pcm_dmaengine snd_rawmidi snd_seq snd_seq_device snd_soc_acpi snd_soc_acpi_intel_match snd_soc_core snd_soc_dmic snd_soc_hdac_hda snd_soc_hdac_hdmi snd_soc_intel_hda_dsp_common snd_soc_skl snd_soc_skl_hda_dsp snd_soc_sst_dsp snd_soc_sst_ipc snd_sof snd_sof_intel_hda snd_sof_intel_hda_common snd_sof_pci snd_sof_pci_intel_cnl snd_sof_xtensa_dsp snd_timer snd_usb_audio snd_usbmidi_lib soundcore soundwire_cadence soundwire_generic_allocation soundwire_intel sparse_keymap stp sunrpc thunderbolt tls trusted ttm tun typec typec_ucsi ucsi_acpi ucsi_ccg usbnet uvcvideo vfat video videobuf2_common videobuf2_memops videobuf2_v4l2 videobuf2_vmalloc videodev wmi wmi_bmof x86_pkg_temp_thermal xt_CHECKSUM xt_MASQUERADE xt_REDIRECT xt_addrtype xt_conntrack xt_hl zram !!Sysfs Files !!----------- /sys/class/sound/hwC0D0/init_pin_configs: 0x04 0x185600f0 0x05 0x585600f0 0x06 0x185600f0 0x07 0x185600f0 /sys/class/sound/hwC0D0/driver_pin_configs: /sys/class/sound/hwC0D0/user_pin_configs: /sys/class/sound/hwC0D0/init_verbs: /sys/class/sound/hwC0D0/hints: /sys/class/sound/hwC2D0/init_pin_configs: 0x12 0x40000000 0x13 0x411111f0 0x14 0x411111f0 0x16 0x411111f0 0x17 0x90170110 0x18 0x411111f0 0x19 0x03a11040 0x1a 0x411111f0 0x1b 0x411111f0 0x1d 0x40628005 0x1e 0x411111f0 0x21 0x03211020 /sys/class/sound/hwC2D0/driver_pin_configs: /sys/class/sound/hwC2D0/user_pin_configs: /sys/class/sound/hwC2D0/init_verbs: /sys/class/sound/hwC2D0/hints: /sys/class/sound/hwC2D2/init_pin_configs: 0x05 0x18560010 0x06 0x18560010 0x07 0x18560010 /sys/class/sound/hwC2D2/driver_pin_configs: /sys/class/sound/hwC2D2/user_pin_configs: /sys/class/sound/hwC2D2/init_verbs: /sys/class/sound/hwC2D2/hints: !!ALSA/HDA dmesg !!-------------- [ 0.530859] ACPI: Added _OSI(Linux-Dell-Video) [ 0.530859] ACPI: Added _OSI(Linux-Lenovo-NV-HDMI-Audio) [ 0.530859] ACPI: Added _OSI(Linux-HPI-Hybrid-Graphics) -- [ 25.588597] i801_smbus 0000:00:1f.4: SMBus using PCI interrupt [ 25.589148] snd_hda_intel 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if info 0x040100 [ 25.589214] snd_hda_intel 0000:00:1f.3: Digital mics found on Skylake+ platform, using SOF driver [ 25.589284] snd_hda_intel 0000:01:00.1: enabling device (0000 -> 0002) [ 25.589356] snd_hda_intel 0000:01:00.1: Disabling MSI [ 25.589362] snd_hda_intel 0000:01:00.1: Handle vga_switcheroo audio client [ 25.589483] i2c i2c-12: 4/4 memory slots populated (from DMI) -- [ 25.667546] audit: type=1130 audit(1632337362.609:128): pid=1 uid=0 auid=4294967295 ses=4294967295 subj=system_u:system_r:init_t:s0 msg='unit=dm-event comm="systemd" exe="/usr/lib/systemd/systemd" hostname=? addr=? terminal=? res=success' [ 25.685618] input: HDA NVidia HDMI/DP,pcm=3 as /devices/pci0000:00/0000:00:01.0/0000:01:00.1/sound/card0/input20 [ 25.685683] input: HDA NVidia HDMI/DP,pcm=7 as /devices/pci0000:00/0000:00:01.0/0000:01:00.1/sound/card0/input21 [ 25.685824] input: HDA NVidia HDMI/DP,pcm=8 as /devices/pci0000:00/0000:00:01.0/0000:01:00.1/sound/card0/input22 [ 25.685863] input: HDA NVidia HDMI/DP,pcm=9 as /devices/pci0000:00/0000:00:01.0/0000:01:00.1/sound/card0/input23 [ 25.685902] input: HDA NVidia HDMI/DP,pcm=10 as /devices/pci0000:00/0000:00:01.0/0000:01:00.1/sound/card0/input24 [ 25.685942] input: HDA NVidia HDMI/DP,pcm=11 as /devices/pci0000:00/0000:00:01.0/0000:01:00.1/sound/card0/input25 [ 25.710877] RAPL PMU: API unit is 2^-32 Joules, 5 fixed counters, 655360 ms ovfl timer -- [ 25.781715] EXT4-fs (nvme1n1p2): mounted filesystem with ordered data mode. Opts: (null). Quota mode: none. [ 25.787710] snd_soc_skl 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if info 0x040100 [ 25.787728] snd_soc_skl 0000:00:1f.3: Digital mics found on Skylake+ platform, using SOF driver [ 25.828920] zram0: detected capacity change from 0 to 8388608 -- [ 25.894896] intel_tcc_cooling: Programmable TCC Offset detected [ 25.897230] sof-audio-pci-intel-cnl 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if info 0x040100 [ 25.897246] sof-audio-pci-intel-cnl 0000:00:1f.3: Digital mics found on Skylake+ platform, using SOF driver [ 25.897256] sof-audio-pci-intel-cnl 0000:00:1f.3: enabling device (0000 -> 0002) [ 25.897439] sof-audio-pci-intel-cnl 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if 0x040100 [ 25.897552] sof-audio-pci-intel-cnl 0000:00:1f.3: bound 0000:00:02.0 (ops i915_audio_component_bind_ops [i915]) [ 25.897652] iwlwifi 0000:00:14.3: base HW address: 04:6c:59:2b:b0:9c [ 25.903834] sof-audio-pci-intel-cnl 0000:00:1f.3: use msi interrupt mode [ 25.938151] intel_rapl_common: Found RAPL domain package -- [ 25.966844] iTCO_wdt iTCO_wdt: initialized. heartbeat=30 sec (nowayout=0) [ 25.967286] sof-audio-pci-intel-cnl 0000:00:1f.3: hda codecs found, mask 5 [ 25.967289] sof-audio-pci-intel-cnl 0000:00:1f.3: using HDA machine driver skl_hda_dsp_generic now [ 25.967293] sof-audio-pci-intel-cnl 0000:00:1f.3: DMICs detected in NHLT tables: 4 [ 26.021435] iwlwifi 0000:00:14.3 wlp0s20f3: renamed from wlan0 -- [ 26.084922] audit: type=1130 audit(1632337363.027:133): pid=1 uid=0 auid=4294967295 ses=4294967295 subj=system_u:system_r:init_t:s0 msg='unit=systemd-fsck@dev-mapper-fedora_rootvol\x2dfedora_opt comm="systemd" exe="/usr/lib/systemd/systemd" hostname=? addr=? terminal=? res=success' [ 26.093632] sof-audio-pci-intel-cnl 0000:00:1f.3: Firmware info: version 1:6:1-53680 [ 26.093635] sof-audio-pci-intel-cnl 0000:00:1f.3: Firmware: ABI 3:17:0 Kernel ABI 3:18:0 [ 26.109484] EXT4-fs (dm-15): warning: mounting unchecked fs, running e2fsck is recommended [ 26.110556] sof-audio-pci-intel-cnl 0000:00:1f.3: Topology: ABI 3:17:0 Kernel ABI 3:18:0 [ 26.110945] EXT4-fs (dm-15): mounted filesystem without journal. Opts: discard,errors=remount-ro. Quota mode: none. -- [ 26.123111] EXT4-fs (dm-20): mounted filesystem without journal. Opts: discard,errors=remount-ro. Quota mode: none. [ 26.125949] sof-audio-pci-intel-cnl 0000:00:1f.3: ASoC: Parent card not yet available, widget card binding deferred [ 26.129230] audit: type=1130 audit(1632337363.071:134): pid=1 uid=0 auid=4294967295 ses=4294967295 subj=system_u:system_r:init_t:s0 msg='unit=lvm2-pvscan@253:0 comm="systemd" exe="/usr/lib/systemd/systemd" hostname=? addr=? terminal=? res=success' [ 26.145560] snd_hda_codec_realtek ehdaudio0D0: autoconfig for ALC285: line_outs=1 (0x17/0x0/0x0/0x0/0x0) type:speaker [ 26.145564] snd_hda_codec_realtek ehdaudio0D0: speaker_outs=0 (0x0/0x0/0x0/0x0/0x0) [ 26.145565] snd_hda_codec_realtek ehdaudio0D0: hp_outs=1 (0x21/0x0/0x0/0x0/0x0) [ 26.145567] snd_hda_codec_realtek ehdaudio0D0: mono: mono_out=0x0 [ 26.145568] snd_hda_codec_realtek ehdaudio0D0: inputs: [ 26.145569] snd_hda_codec_realtek ehdaudio0D0: Mic=0x19 [ 26.191305] usbcore: registered new interface driver snd-usb-audio [ 26.222591] audit: type=1130 audit(1632337363.164:135): pid=1 uid=0 auid=4294967295 ses=4294967295 subj=system_u:system_r:init_t:s0 msg='unit=systemd-fsck@dev-mapper-fedora_rootvol\x2dfedora_var comm="systemd" exe="/usr/lib/systemd/systemd" hostname=? addr=? terminal=? res=success' -- [ 26.247346] audit: type=1130 audit(1632337363.189:137): pid=1 uid=0 auid=4294967295 ses=4294967295 subj=system_u:system_r:init_t:s0 msg='unit=systemd-rfkill comm="systemd" exe="/usr/lib/systemd/systemd" hostname=? addr=? terminal=? res=success' [ 26.296090] snd_hda_codec_realtek ehdaudio0D0: ASoC: sink widget AIF1TX overwritten [ 26.296096] snd_hda_codec_realtek ehdaudio0D0: ASoC: source widget AIF1RX overwritten [ 26.296209] skl_hda_dsp_generic skl_hda_dsp_generic: ASoC: sink widget hifi3 overwritten -- [ 26.296240] skl_hda_dsp_generic skl_hda_dsp_generic: ASoC: source widget Alt Analog Codec Capture overwritten [ 26.303293] snd_hda_codec_hdmi ehdaudio0D2: Monitor plugged-in, Failed to power up codec ret=[-13] [ 26.314439] input: sof-hda-dsp Mic as /devices/pci0000:00/0000:00:1f.3/skl_hda_dsp_generic/sound/card2/input26 [ 26.314479] input: sof-hda-dsp Headphone as /devices/pci0000:00/0000:00:1f.3/skl_hda_dsp_generic/sound/card2/input27 [ 26.314505] input: sof-hda-dsp HDMI/DP,pcm=3 as /devices/pci0000:00/0000:00:1f.3/skl_hda_dsp_generic/sound/card2/input28 [ 26.314529] input: sof-hda-dsp HDMI/DP,pcm=4 as /devices/pci0000:00/0000:00:1f.3/skl_hda_dsp_generic/sound/card2/input29 [ 26.314552] input: sof-hda-dsp HDMI/DP,pcm=5 as /devices/pci0000:00/0000:00:1f.3/skl_hda_dsp_generic/sound/card2/input30 [ 26.382034] thunderbolt 0-3: new device found, vendor=0xf0 device=0x467 -- [ 55.842586] IPv6: ADDRCONF(NETDEV_CHANGE): ens4u1u3u3: link becomes ready [ 56.082127] snd_hda_intel 0000:01:00.1: bound 0000:01:00.0 (ops nv50_audio_component_bind_ops [nouveau]) [ 56.161112] bond0: (slave ens4u1u3u3): Enslaving as a backup interface with a down link -- [66711.147123] [drm:drm_dp_mst_dpcd_read [drm_kms_helper]] *ERROR* mstb 0000000032d1e9c5 port 3: DPCD read on addr 0x4b0 for 1 bytes NAKed [68227.087678] snd_hda_codec_realtek ehdaudio0D0: didn't find PCM for DAI Digital Codec DAI [68227.087680] snd_hda_codec_realtek ehdaudio0D0: ASoC: error at snd_soc_dai_startup on Digital Codec DAI: -22 [68227.087682] Digital Playback and Capture: soc_pcm_open() failed (-22) [68227.087683] HDA Digital: ASoC: dpcm_be_dai_startup() failed at Digital Playback and Capture (-22) [68227.087684] HDA Digital: dpcm_fe_dai_startup() failed (-22) [68228.652120] usb usb3: root hub lost power or was reset [68228.652128] usb usb4: root hub lost power or was reset [68228.661707] snd_hda_codec_realtek ehdaudio0D0: didn't find PCM for DAI Digital Codec DAI [68228.661710] snd_hda_codec_realtek ehdaudio0D0: ASoC: error at snd_soc_dai_startup on Digital Codec DAI: -22 [68228.661712] Digital Playback and Capture: soc_pcm_open() failed (-22) [68228.661714] HDA Digital: ASoC: dpcm_be_dai_startup() failed at Digital Playback and Capture (-22) [68228.661715] HDA Digital: dpcm_fe_dai_startup() failed (-22) [68293.993652] usb usb3: root hub lost power or was reset !!Packages installed !!-------------------- alsa-lib-1.2.4-5.fc33.x86_64 alsa-utils-1.2.4-2.fc33.x86_64 alsa-plugins-pulseaudio-1.2.2-4.fc33.x86_64 alsa-sof-firmware-1.6.1-4.fc33.noarch alsa-tools-firmware-1.2.2-3.fc33.x86_64 ```

I don't really know much of anything about SOF. I'm really just an end-user of it. As such, I am quite sure there is not enough information here, but I don't know what else to add that would be relevant. I am of course happy to provide whatever additional information is necessary.

plbossart commented 3 years ago

@brianjmurrell the headset is not directly controlled by the Intel PCH but by the HDaudio codec.

Can you try using the legacy driver by adding “options snd-intel-dspcfg dsp_driver=1” to /etc/modprobe.d/alsa-base.conf.

This will prevent the internal microphones from working, but at least we should be able to see if the headset is functional without SOF.

lgirdwood commented 3 years ago

@plbossart hmm, this is CML capture related, so could benefit from the stream offset fixes done by @ranj063 in v1.9.1 @brianjmurrell v1.9.1 is a few weeks away, but could solve this problem.

plbossart commented 3 years ago

Also @brianjmurrell is there any reason why you have both PipeWire and PulseAudio? Usually it's one or the other.

PipeWire:
      Installed - Yes (/usr/bin/pipewire)
      Running - Yes

Pulseaudio:
      Installed - Yes (/usr/bin/pulseaudio)
      Running - Yes
plbossart commented 3 years ago

@plbossart hmm, this is CML capture related, so could benefit from the stream offset fixes done by @ranj063 in v1.9.1 @brianjmurrell v1.9.1 is a few weeks away, but could solve this problem.

I don't think so, the changes are only to stop the DMA and avoid a timeout, and you would see a big issue requiring a reboot.

brianjmurrell commented 3 years ago

Can you try using the legacy driver by adding “options snd-intel-dspcfg dsp_driver=1” to /etc/modprobe.d/alsa-base.conf.

Wow! The stack of snd_* kernel modules has gotten huge while I was not looking. Any hints/tricks on how to easily rmmod snd_intel_dspcfg and it's entire stack of dependencies? I'd rather not have to completely reboot. It would be pretty disruptive to my other ongoing work.

Also @brianjmurrell is there any reason why you have both PipeWire and PulseAudio? Usually it's one or the other.

Just because pulseaudio and bluetooth simply don't work without having to jump through hoops. Pipewire was reported to fix it, but my tests there reveal it has other issues. So they are just there to be able to switch back and forth while debugging one or the other.

brianjmurrell commented 3 years ago

Wow! The stack of snd_* kernel modules has gotten huge while I was not looking. Any hints/tricks on how to easily rmmod snd_intel_dspcfg and it's entire stack of dependencies? I'd rather not have to completely reboot. It would be pretty disruptive to my other ongoing work.

Damn! Trying to remove some snd_* module (I don't recall which one) hung my system. The mouse pointer was still active but everything else was locked up hard. Couldn't even ssh into the thing even though ping still works. :frowning:

brianjmurrell commented 3 years ago

So, given that I had to reboot, I added the module parameter.

So far recording from "Built-in Audio" seems good. But SOF sounded fine just after a reboot. Time will tell.

plbossart commented 3 years ago

Wow! The stack of snd_* kernel modules has gotten huge while I was not looking. Any hints/tricks on how to easily rmmod snd_intel_dspcfg and it's entire stack of dependencies? I'd rather not have to completely reboot. It would be pretty disruptive to my other ongoing work.

Damn! Trying to remove some snd_* module (I don't recall which one) hung my system. The mouse pointer was still active but everything else was locked up hard. Couldn't even ssh into the thing even though ping still works.

we have scripts in https://github.com/thesofproject/sof-test/tree/main/tools/kmod to remove/insert modules, but they may not always work, e.g. if userspace keeps a reference on a stream, etc.

brianjmurrell commented 3 years ago

Can you try using the legacy driver by adding “options snd-intel-dspcfg dsp_driver=1” to /etc/modprobe.d/alsa-base.conf.

This does provide for stable headset input.

So what next?

plbossart commented 3 years ago

@brianjmurrell thanks for the experiments. The good news is that there is no issue with the hardware codec management. That's beyond the scope of our SOF driver, and it is difficult for us to check since it's really very hardware specific.

if you have spare cycles and able to help us debug further, re-enabling SOF without the "options snd-intel-dspcfg dsp_driver=1” but with the latest firmware would be nice.

You have fedora33, not sure if they have picked the new firmware just yet, if not you can install it yourself. The firmware can be found here: https://github.com/thesofproject/sof-bin and you can follow the instructions with just 1.9 instead of 1.7.

brianjmurrell commented 3 years ago

RPM says that the current sof firmware files come from alsa-sof-firmware-1.6.1-4.fc33.noarch and the specfile says they are from: sof-bin commit f31c9ce for whatever that is worth.

Even Fedora rawhide still only has 1.8 in it.

plbossart commented 3 years ago

yes, 1.9 was released last week so it's not a surprise that there's a delay. 1.6 is relatively old, we've done a lot of work since, so it's really advised to try 1.9.

brianjmurrell commented 3 years ago

we have scripts in https://github.com/thesofproject/sof-test/tree/main/tools/kmod to remove/insert modules, but they may not always work, e.g. if userspace keeps a reference on a stream, etc.

Pretty useful. I still ended up with:

$ lsmod | grep snd
snd_hda_codec_realtek   155648  1
snd_hda_codec_generic    98304  1 snd_hda_codec_realtek
ledtrig_audio          16384  1 snd_hda_codec_generic
snd_hda_codec_hdmi     73728  2
snd_usb_audio         335872  1
snd_hda_intel          57344  2
snd_usbmidi_lib        45056  1 snd_usb_audio
snd_intel_dspcfg       28672  1 snd_hda_intel
snd_rawmidi            45056  1 snd_usbmidi_lib
snd_intel_sdw_acpi     20480  1 snd_intel_dspcfg
snd_hda_codec         172032  4 snd_hda_codec_generic,snd_hda_codec_hdmi,snd_hda_intel,snd_hda_codec_realtek
snd_hda_core          110592  5 snd_hda_codec_generic,snd_hda_codec_hdmi,snd_hda_intel,snd_hda_codec,snd_hda_codec_realtek
snd_hwdep              16384  2 snd_usb_audio,snd_hda_codec
snd_seq_device         16384  1 snd_rawmidi
snd_pcm               135168  5 snd_hda_codec_hdmi,snd_hda_intel,snd_usb_audio,snd_hda_codec,snd_hda_core
mc                     65536  5 videodev,snd_usb_audio,videobuf2_v4l2,uvcvideo,videobuf2_common
snd_timer              49152  1 snd_pcm
snd                   110592  18 snd_hda_codec_generic,snd_seq_device,snd_hda_codec_hdmi,snd_hwdep,snd_hda_intel,snd_usb_audio,snd_usbmidi_lib,snd_hda_codec,snd_hda_codec_realtek,snd_timer,snd_pcm,snd_rawmidi
soundcore              16384  1 snd

I did stop pulseaudio.{socket,service} but I also had to kill an alsactl process. After that:

$ sudo rmmod snd_usb_audio snd_hda_intel snd_usbmidi_lib snd_intel_dspcfg snd_rawmidi snd_intel_sdw_acpisnd_intel_sdw_acpi snd_hda_codec snd_hda_core snd_hwdep snd_seq_device snd_pcm snd_timer snd

caused:

[353469.054160] BUG: unable to handle page fault for address: 000000000000173c
[353469.054172] #PF: supervisor read access in kernel mode
[353469.054177] #PF: error_code(0x0000) - not-present page
[353469.054183] PGD 0 P4D 0 
[353469.054190] Oops: 0000 [#1] SMP NOPTI
[353469.054198] CPU: 2 PID: 2906589 Comm: kworker/2:3 Not tainted 5.13.16-100.fc33.x86_64 #1
[353469.054206] Hardware name: HP HP ZBook Fury 15 G7 Mobile Workstation/8783, BIOS S92 Ver. 01.04.01 01/05/2021
[353469.054211] Workqueue: events set_brightness_delayed
[353469.054222] RIP: 0010:micmute_led_set+0x14/0x80 [snd_hda_codec_realtek]
[353469.054253] Code: 85 f6 41 0f 95 c0 eb b8 66 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 00 0f 1f 44 00 00 48 8b 47 50 48 8b 78 40 48 8b 97 58 04 00 00 <8b> 8a 3c 17 00 00 8b 82 48 17 00 00 85 c9 75 46 85 f6 41 0f 94 c0
[353469.054261] RSP: 0018:ffffae654410fe70 EFLAGS: 00010286
[353469.054267] RAX: ffffa010c9ce0400 RBX: ffffa010ccdf26e8 RCX: ffffa01fff4aa620
[353469.054272] RDX: 0000000000000000 RSI: 0000000000000000 RDI: ffffa010c8317800
[353469.054277] RBP: ffffa010ccdf2628 R08: ffffa01fff4aa620 R09: ffffa0179245072c
[353469.054280] R10: 0000000000000007 R11: 0000000000000002 R12: ffffa01fff4aa600
[353469.054285] R13: ffffa01fff4b0700 R14: 0000000000000000 R15: 0000000000000001
[353469.054290] FS:  0000000000000000(0000) GS:ffffa01fff480000(0000) knlGS:0000000000000000
[353469.054296] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[353469.054301] CR2: 000000000000173c CR3: 000000069c960002 CR4: 00000000007706e0
[353469.054306] PKRU: 55555554
[353469.054309] Call Trace:
[353469.054315]  set_brightness_delayed+0x71/0xb0
[353469.054325]  process_one_work+0x1e9/0x380
[353469.054336]  worker_thread+0x53/0x3e0
[353469.054344]  ? process_one_work+0x380/0x380
[353469.054352]  kthread+0x124/0x150
[353469.054359]  ? set_kthread_struct+0x40/0x40
[353469.054366]  ret_from_fork+0x1f/0x30
[353469.054380] Modules linked in: sctp ip6_udp_tunnel udp_tunnel nfnetlink_queue nfnetlink_log r8153_ecm cdc_ether usbnet ib_core xt_addrtype xt_REDIRECT xt_hl rfcomm xt_CHECKSUM xt_MASQUERADE xt_conntrack ipt_REJECT nf_nat_tftp nf_conntrack_tftp tun bridge stp llc bonding tls nft_objref nf_conntrack_netbios_ns nf_conntrack_broadcast nft_fib_inet nft_fib_ipv4 nft_fib_ipv6 nft_fib nft_reject_inet nf_reject_ipv4 nf_reject_ipv6 nft_reject nft_ct nft_chain_nat nf_tables ebtable_nat ebtable_broute ip6table_nat ip6table_mangle ip6table_raw ip6table_security iptable_nat nf_nat nf_conntrack nouveau nf_defrag_ipv6 nf_defrag_ipv4 iptable_mangle iptable_raw iptable_security mxm_wmi drm_ttm_helper ttm ip_set nfnetlink ebtable_filter ebtables ip6table_filter ip6_tables iptable_filter bnep iTCO_wdt intel_pmc_bxt ee1004 iTCO_vendor_support mei_wdt mei_hdcp intel_rapl_msr ucsi_ccg intel_tcc_cooling x86_pkg_temp_thermal intel_powerclamp coretemp kvm_intel kvm irqbypass rapl intel_cstate vfat fat
[353469.054503]  intel_uncore snd_hda_codec_realtek hp_wmi platform_profile snd_hda_codec_generic iwlmvm intel_wmi_thunderbolt ledtrig_audio sparse_keymap snd_hda_codec_hdmi wmi_bmof ac97_bus mac80211 snd_hda_intel(-) snd_usbmidi_lib snd_intel_dspcfg snd_rawmidi i2c_i801 snd_intel_sdw_acpi i2c_smbus snd_hda_codec libarc4 uvcvideo videobuf2_vmalloc thunderbolt iwlwifi snd_hda_core btusb videobuf2_memops btrtl snd_hwdep mei_me videobuf2_v4l2 btbcm videobuf2_common btintel mei snd_seq_device idma64 bluetooth cfg80211 videodev snd_pcm hid_sensor_als hid_sensor_trigger hid_sensor_iio_common ecdh_generic industrialio_triggered_buffer joydev mc snd_timer rfkill kfifo_buf processor_thermal_device processor_thermal_rfim ecc industrialio snd processor_thermal_mbox processor_thermal_rapl intel_rapl_common intel_pch_thermal intel_soc_dts_iosf i2c_nvidia_gpu soundcore ucsi_acpi typec_ucsi typec int3403_thermal int340x_thermal_zone hp_accel lis3lv02d int3400_thermal acpi_pad acpi_thermal_rel hp_wireless
[353469.054615]  auth_rpcgss sunrpc zram ip_tables dm_thin_pool dm_persistent_data dm_bio_prison dm_crypt trusted asn1_encoder r8152 mii hid_sensor_hub intel_ishtp_loader intel_ishtp_hid i915 i2c_algo_bit rtsx_pci_sdmmc crct10dif_pclmul drm_kms_helper hid_multitouch mmc_core crc32_pclmul crc32c_intel ghash_clmulni_intel cec drm nvme e1000e serio_raw intel_ish_ipc rtsx_pci nvme_core intel_ishtp wmi i2c_hid_acpi i2c_hid video pinctrl_cannonlake fuse [last unloaded: snd_usb_audio]
[353469.054680] CR2: 000000000000173c
[353469.054685] ---[ end trace bc3a84d46096d7a7 ]---
[353469.054689] RIP: 0010:micmute_led_set+0x14/0x80 [snd_hda_codec_realtek]
[353469.054711] Code: 85 f6 41 0f 95 c0 eb b8 66 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 00 0f 1f 44 00 00 48 8b 47 50 48 8b 78 40 48 8b 97 58 04 00 00 <8b> 8a 3c 17 00 00 8b 82 48 17 00 00 85 c9 75 46 85 f6 41 0f 94 c0
[353469.054718] RSP: 0018:ffffae654410fe70 EFLAGS: 00010286
[353469.054724] RAX: ffffa010c9ce0400 RBX: ffffa010ccdf26e8 RCX: ffffa01fff4aa620
[353469.054728] RDX: 0000000000000000 RSI: 0000000000000000 RDI: ffffa010c8317800
[353469.054732] RBP: ffffa010ccdf2628 R08: ffffa01fff4aa620 R09: ffffa0179245072c
[353469.054735] R10: 0000000000000007 R11: 0000000000000002 R12: ffffa01fff4aa600
[353469.054739] R13: ffffa01fff4b0700 R14: 0000000000000000 R15: 0000000000000001
[353469.054743] FS:  0000000000000000(0000) GS:ffffa01fff480000(0000) knlGS:0000000000000000
[353469.054748] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[353469.054752] CR2: 000000000000173c CR3: 000000069c960002 CR4: 00000000007706e0
[353469.054757] PKRU: 55555554

:-( At least I commented out the options snd-intel-dspcfg dsp_driver=1 so when I reboot I should get back to using sof.

brianjmurrell commented 3 years ago

yes, 1.9 was released last week so it's not a surprise that there's a delay. 1.6 is relatively old, we've done a lot of work since, so it's really advised to try 1.9.

Since 1.8 is easily/readily available from F34, going to try that first. But will roll a 1.9 RPM if that still doesn't work.

brianjmurrell commented 3 years ago

Hrm. Didn't expect it to be this bad. But I now only have a TU106 High Definition Audio Controller in pavucontrol now.

$ $ lsmod | grep snd
snd_ctl_led            24576  0
snd_soc_skl_hda_dsp    24576  6
snd_soc_intel_hda_dsp_common    20480  1 snd_soc_skl_hda_dsp
snd_soc_hdac_hdmi      45056  1 snd_soc_skl_hda_dsp
snd_soc_dmic           16384  1
snd_hda_codec_realtek   155648  1
snd_hda_codec_generic    98304  1 snd_hda_codec_realtek
snd_sof_pci_intel_cnl    16384  5
snd_sof_intel_hda_common   110592  1 snd_sof_pci_intel_cnl
soundwire_intel        45056  1 snd_sof_intel_hda_common
snd_sof_intel_hda      20480  1 snd_sof_intel_hda_common
snd_sof_pci            20480  2 snd_sof_intel_hda_common,snd_sof_pci_intel_cnl
snd_sof_xtensa_dsp     16384  1 snd_sof_intel_hda_common
snd_sof               147456  2 snd_sof_pci,snd_sof_intel_hda_common
ledtrig_audio          16384  3 snd_ctl_led,snd_hda_codec_generic,snd_sof
snd_soc_skl           180224  0
snd_soc_hdac_hda       24576  2 snd_sof_intel_hda_common,snd_soc_skl
snd_hda_ext_core       36864  5 snd_sof_intel_hda_common,snd_soc_hdac_hdmi,snd_soc_hdac_hda,snd_soc_skl,snd_sof_intel_hda
snd_soc_sst_ipc        20480  1 snd_soc_skl
snd_soc_sst_dsp        36864  1 snd_soc_skl
snd_soc_acpi_intel_match    49152  3 snd_sof_intel_hda_common,snd_soc_skl,snd_sof_pci_intel_cnl
snd_soc_acpi           16384  3 snd_soc_acpi_intel_match,snd_sof_intel_hda_common,snd_soc_skl
snd_soc_core          331776  8 soundwire_intel,snd_sof,snd_sof_intel_hda_common,snd_soc_hdac_hdmi,snd_soc_hdac_hda,snd_soc_skl,snd_soc_dmic,snd_soc_skl_hda_dsp
snd_hda_codec_hdmi     73728  2
snd_usb_audio         335872  1
snd_compress           32768  1 snd_soc_core
snd_pcm_dmaengine      16384  1 snd_soc_core
ac97_bus               16384  1 snd_soc_core
snd_hda_intel          57344  5
snd_usbmidi_lib        45056  1 snd_usb_audio
snd_intel_dspcfg       28672  3 snd_hda_intel,snd_sof_intel_hda_common,snd_soc_skl
snd_intel_sdw_acpi     20480  2 snd_sof_intel_hda_common,snd_intel_dspcfg
snd_rawmidi            45056  1 snd_usbmidi_lib
snd_hda_codec         172032  7 snd_hda_codec_generic,snd_hda_codec_hdmi,snd_hda_intel,snd_hda_codec_realtek,snd_soc_intel_hda_dsp_common,snd_soc_hdac_hda,snd_soc_skl_hda_dsp
snd_hda_core          110592  12 snd_hda_codec_generic,snd_hda_codec_hdmi,snd_hda_intel,snd_hda_ext_core,snd_hda_codec,snd_hda_codec_realtek,snd_soc_intel_hda_dsp_common,snd_sof_intel_hda_common,snd_soc_hdac_hdmi,snd_soc_hdac_hda,snd_soc_skl,snd_sof_intel_hda
snd_hwdep              16384  2 snd_usb_audio,snd_hda_codec
snd_seq                90112  0
snd_seq_device         16384  2 snd_seq,snd_rawmidi
snd_pcm               135168  17 snd_hda_codec_hdmi,snd_hda_intel,snd_usb_audio,snd_hda_codec,soundwire_intel,snd_sof,snd_sof_intel_hda_common,snd_soc_hdac_hdmi,snd_compress,snd_soc_core,snd_soc_skl,snd_hda_core,snd_pcm_dmaengine
snd_timer              49152  2 snd_seq,snd_pcm
mc                     65536  5 videodev,snd_usb_audio,videobuf2_v4l2,uvcvideo,videobuf2_common
snd                   110592  38 snd_ctl_led,snd_hda_codec_generic,snd_seq,snd_seq_device,snd_hda_codec_hdmi,snd_hwdep,snd_hda_intel,snd_usb_audio,snd_usbmidi_lib,snd_hda_codec,snd_hda_codec_realtek,snd_timer,snd_soc_hdac_hdmi,snd_compress,snd_soc_core,snd_pcm,snd_soc_skl_hda_dsp,snd_rawmidi
soundcore              16384  2 snd_ctl_led,snd
$ dmesg | grep snd
[   21.496210] snd_hda_intel 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if info 0x040100
[   21.496218] snd_hda_intel 0000:00:1f.3: Digital mics found on Skylake+ platform, using SOF driver
[   21.496281] snd_hda_intel 0000:01:00.1: enabling device (0000 -> 0002)
[   21.496332] snd_hda_intel 0000:01:00.1: Disabling MSI
[   21.496335] snd_hda_intel 0000:01:00.1: Handle vga_switcheroo audio client
[   21.590446] snd_soc_skl 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if info 0x040100
[   21.590464] snd_soc_skl 0000:00:1f.3: Digital mics found on Skylake+ platform, using SOF driver
[   22.010637] snd_hda_codec_realtek ehdaudio0D0: autoconfig for ALC285: line_outs=1 (0x17/0x0/0x0/0x0/0x0) type:speaker
[   22.010641] snd_hda_codec_realtek ehdaudio0D0:    speaker_outs=0 (0x0/0x0/0x0/0x0/0x0)
[   22.010642] snd_hda_codec_realtek ehdaudio0D0:    hp_outs=1 (0x21/0x0/0x0/0x0/0x0)
[   22.010644] snd_hda_codec_realtek ehdaudio0D0:    mono: mono_out=0x0
[   22.010645] snd_hda_codec_realtek ehdaudio0D0:    inputs:
[   22.010646] snd_hda_codec_realtek ehdaudio0D0:      Mic=0x19
[   22.083137] usbcore: registered new interface driver snd-usb-audio
[   22.160470] snd_hda_codec_realtek ehdaudio0D0: ASoC: sink widget AIF1TX overwritten
[   22.160475] snd_hda_codec_realtek ehdaudio0D0: ASoC: source widget AIF1RX overwritten
[   22.167548] snd_hda_codec_hdmi ehdaudio0D2: Monitor plugged-in, Failed to power up codec ret=[-13]
[   84.507038] snd_hda_intel 0000:01:00.1: bound 0000:01:00.0 (ops nv50_audio_component_bind_ops [nouveau])
plbossart commented 3 years ago

could be a UCM issue as well, it's handled with the alsa-ucm-conf package. Can you provide the list to the results of 'alsa-info' to see what the driver exposes?

brianjmurrell commented 3 years ago

It does appear in pavucontrol now but any attempt to choose Comment Lake PCH cAVS * as an input device, for example simply doesn't actually make the choice.

alsa-info.txt

brianjmurrell commented 3 years ago

These have appeared in dmesg since the above log was generated:

[ 2333.228987] snd_hda_codec_realtek ehdaudio0D0: didn't find PCM for DAI Digital Codec DAI
[ 2333.228990] snd_hda_codec_realtek ehdaudio0D0: ASoC: error at snd_soc_dai_startup on Digital Codec DAI: -22
[ 2333.228992]  Digital Playback and Capture: soc_pcm_open() failed (-22)
[ 2333.228993]  HDA Digital: ASoC: dpcm_be_dai_startup() failed at Digital Playback and Capture (-22)
[ 2333.228994]  HDA Digital: dpcm_fe_dai_startup() failed (-22)
[ 2333.230068] snd_hda_codec_realtek ehdaudio0D0: didn't find PCM for DAI Digital Codec DAI
[ 2333.230070] snd_hda_codec_realtek ehdaudio0D0: ASoC: error at snd_soc_dai_startup on Digital Codec DAI: -22
[ 2333.230071]  Digital Playback and Capture: soc_pcm_open() failed (-22)
[ 2333.230073]  HDA Digital: ASoC: dpcm_be_dai_startup() failed at Digital Playback and Capture (-22)
[ 2333.230074]  HDA Digital: dpcm_fe_dai_startup() failed (-22)
plbossart commented 3 years ago

It does appear in pavucontrol now but any attempt to choose Comment Lake PCH cAVS * as an input device, for example simply doesn't actually make the choice.

Some of these devices are playback, the only thing you can select for input is DMIC.

alsa-info.txt

Doesn't look so bad, we have the right filter of HDMI devices handled by the nVidia card.

The part that's not good is the HDaudio digital part. we've seen such issues on other boards, it depends on BIOS verbs and the presence of a digital output proper. we should probably remove this option or make it dependent on a run-time information to disable it if not present. @kv2019i @ranj063 FYI

The only thing that I see as possibly problematic is the

snd_hda_codec_realtek ehdaudio0D0: Unable to sync register 0x2b8000. -5

that could point to some power management issue? You have 5.13.19 for the kernel, that's recent enough and should work.

kv2019i commented 3 years ago

Hmm, this is an interesting config. Both the GPUs seem to be enabled, Intel and the Nvidia one. This may create issues as SOF driver does not support the vga-switcheroo (dynamic switching of multiplexed GPUs). But OTOH, there are no errors related to this in the log, so this would not seem to be the source of problems here.

The "Unable to sync" smells of the regressions that were found related to commit 215a22ed31a1 ("ALSA: hda: Refactor codec PM to use direct-complete optimization"), but I checked that 5.13.19 has all the fixes.

brianjmurrell commented 3 years ago

Latest messages from the kernel as I was seeing if it was working this morning:

[233030.272528] snd_hda_codec_realtek ehdaudio0D0: didn't find PCM for DAI Digital Codec DAI
[233030.272531] snd_hda_codec_realtek ehdaudio0D0: ASoC: error at snd_soc_dai_startup on Digital Codec DAI: -22
[233030.272533]  Digital Playback and Capture: soc_pcm_open() failed (-22)
[233030.272534]  HDA Digital: ASoC: dpcm_be_dai_startup() failed at Digital Playback and Capture (-22)
[233030.272535]  HDA Digital: dpcm_fe_dai_startup() failed (-22)
[233030.273955] snd_hda_codec_realtek ehdaudio0D0: didn't find PCM for DAI Digital Codec DAI
[233030.273956] snd_hda_codec_realtek ehdaudio0D0: ASoC: error at snd_soc_dai_startup on Digital Codec DAI: -22
[233030.273958]  Digital Playback and Capture: soc_pcm_open() failed (-22)
[233030.273959]  HDA Digital: ASoC: dpcm_be_dai_startup() failed at Digital Playback and Capture (-22)
[233030.273960]  HDA Digital: dpcm_fe_dai_startup() failed (-22)

How likely is the 1.9 (vs. the 1.8 that I have currently) firmware to fix this?

brianjmurrell commented 3 years ago

Both the GPUs seem to be enabled, Intel and the Nvidia one

That's not something that I set up. Probably just the default state. Currently it seems that the nouveau module is loaded but honestly, I have no idea which GPU is actually driving my display output at the moment. I probably don't really care either. I am not doing anything on this machine that the Nvidia GPU is likely to be better at performing than the Intel one.

I don't really know how to disable one or the other though.

brianjmurrell commented 3 years ago

pulseaudio seems to be blocked in the kernel now:

[234932.386752] sysrq: Show Blocked State
[234932.387276] task:kworker/3:2     state:D stack:    0 pid:1275858 ppid:     2 flags:0x00004000
[234932.387279] Workqueue: pm pm_runtime_work
[234932.387282] Call Trace:
[234932.387284]  __schedule+0x2f0/0x990
[234932.387287]  schedule+0x46/0xb0
[234932.387288]  schedule_timeout+0x7d/0x120
[234932.387290]  ? __raw_callee_save___native_queued_spin_unlock+0x11/0x1e
[234932.387292]  ? __bpf_trace_tick_stop+0x10/0x10
[234932.387296]  snd_hdac_bus_get_response+0x16f/0x230 [snd_hda_core]
[234932.387301]  ? finish_wait+0x80/0x80
[234932.387303]  snd_hdac_bus_exec_verb_unlocked+0x4b/0x140 [snd_hda_core]
[234932.387306]  ? __mutex_unlock_slowpath.constprop.0+0xae/0xf0
[234932.387307]  codec_exec_verb+0x72/0x110 [snd_hda_codec]
[234932.387312]  snd_hda_codec_set_power_to_all+0x58/0xb0 [snd_hda_codec]
[234932.387316]  hda_set_power_state+0x9c/0x100 [snd_hda_codec]
[234932.387320]  ? hda_call_codec_suspend+0xa0/0xa0 [snd_hda_codec]
[234932.387324]  hda_call_codec_suspend+0x6f/0xa0 [snd_hda_codec]
[234932.387327]  hda_codec_runtime_suspend+0x27/0x80 [snd_hda_codec]
[234932.387331]  ? hda_call_codec_suspend+0xa0/0xa0 [snd_hda_codec]
[234932.387334]  __rpm_callback+0x7e/0x140
[234932.387335]  ? hda_call_codec_suspend+0xa0/0xa0 [snd_hda_codec]
[234932.387339]  rpm_callback+0x1f/0x70
[234932.387340]  ? hda_call_codec_suspend+0xa0/0xa0 [snd_hda_codec]
[234932.387343]  rpm_suspend+0x137/0x6c0
[234932.387344]  ? psi_task_switch+0xc5/0x240
[234932.387346]  ? __switch_to_asm+0x42/0x70
[234932.387347]  ? __switch_to+0x114/0x450
[234932.387350]  pm_runtime_work+0x8e/0x90
[234932.387351]  process_one_work+0x1e9/0x380
[234932.387353]  worker_thread+0x53/0x3e0
[234932.387354]  ? process_one_work+0x380/0x380
[234932.387355]  kthread+0x124/0x150
[234932.387356]  ? set_kthread_struct+0x40/0x40
[234932.387357]  ret_from_fork+0x1f/0x30
[234932.387373] task:pulseaudio      state:D stack:    0 pid:1285436 ppid: 10420 flags:0x00004224
[234932.387375] Call Trace:
[234932.387375]  __schedule+0x2f0/0x990
[234932.387376]  schedule+0x46/0xb0
[234932.387377]  schedule_preempt_disabled+0xa/0x10
[234932.387378]  __mutex_lock.constprop.0+0x279/0x440
[234932.387380]  codec_exec_verb+0x4f/0x110 [snd_hda_codec]
[234932.387384]  hdmi_pin_setup_infoframe+0x15c/0x230 [snd_hda_codec_hdmi]
[234932.387387]  hdmi_setup_audio_infoframe+0x145/0x170 [snd_hda_codec_hdmi]
[234932.387390]  generic_hdmi_playback_pcm_prepare+0x15b/0x260 [snd_hda_codec_hdmi]
[234932.387392]  snd_hda_codec_prepare+0x4d/0x110 [snd_hda_codec]
[234932.387396]  hdac_hda_dai_prepare+0x69/0x90 [snd_soc_hdac_hda]
[234932.387398]  snd_soc_pcm_dai_prepare+0x51/0xb0 [snd_soc_core]
[234932.387409]  ? snd_pcm_common_ioctl+0x9ae/0x1120 [snd_pcm]
[234932.387413]  soc_pcm_prepare+0x50/0x100 [snd_soc_core]
[234932.387421]  dpcm_be_dai_prepare+0xba/0x120 [snd_soc_core]
[234932.387428]  dpcm_fe_dai_prepare+0xaa/0x1d0 [snd_soc_core]
[234932.387435]  snd_pcm_prepare+0x146/0x1a0 [snd_pcm]
[234932.387439]  snd_pcm_ioctl+0x23/0x30 [snd_pcm]
[234932.387442]  __x64_sys_ioctl+0x80/0xb0
[234932.387444]  do_syscall_64+0x3d/0x80
[234932.387446]  entry_SYSCALL_64_after_hwframe+0x44/0xae
[234932.387448] RIP: 0033:0x7f981fecff7b
[234932.387450] RSP: 002b:00007fffc28eaed8 EFLAGS: 00000202 ORIG_RAX: 0000000000000010
[234932.387451] RAX: ffffffffffffffda RBX: 000055834f84a020 RCX: 00007f981fecff7b
[234932.387452] RDX: 0000000000000000 RSI: 0000000000004140 RDI: 000000000000002e
[234932.387453] RBP: 00007fffc28eb4c0 R08: 0000000000000000 R09: 00000000000012bd
[234932.387453] R10: 0000000000000004 R11: 0000000000000202 R12: 0000000000000000
[234932.387454] R13: 00007fffc28eb190 R14: 0000000000000000 R15: 00007fffc28eaf20
plbossart commented 3 years ago

The latest dmesg still hints at codec power management issues when we use the hdac_hda codec with SOF.

plbossart commented 3 years ago

Latest messages from the kernel as I was seeing if it was working this morning:

[233030.272528] snd_hda_codec_realtek ehdaudio0D0: didn't find PCM for DAI Digital Codec DAI
[233030.272531] snd_hda_codec_realtek ehdaudio0D0: ASoC: error at snd_soc_dai_startup on Digital Codec DAI: -22
[233030.272533]  Digital Playback and Capture: soc_pcm_open() failed (-22)
[233030.272534]  HDA Digital: ASoC: dpcm_be_dai_startup() failed at Digital Playback and Capture (-22)
[233030.272535]  HDA Digital: dpcm_fe_dai_startup() failed (-22)
[233030.273955] snd_hda_codec_realtek ehdaudio0D0: didn't find PCM for DAI Digital Codec DAI
[233030.273956] snd_hda_codec_realtek ehdaudio0D0: ASoC: error at snd_soc_dai_startup on Digital Codec DAI: -22
[233030.273958]  Digital Playback and Capture: soc_pcm_open() failed (-22)
[233030.273959]  HDA Digital: ASoC: dpcm_be_dai_startup() failed at Digital Playback and Capture (-22)
[233030.273960]  HDA Digital: dpcm_fe_dai_startup() failed (-22)

How likely is the 1.9 (vs. the 1.8 that I have currently) firmware to fix this?

Not going to be fixed by 1.9. The firmware knows nothing about the codec state and capability. That's part of the problem, the path to the digital output is exposed unconditionally, the Linux driver should somehow disable it based on boot-time information if that path doesn't exist.

kv2019i commented 3 years ago

Hmm, this hints at the display codec getting stuck:

[234932.387380] codec_exec_verb+0x4f/0x110 [snd_hda_codec] [234932.387384] hdmi_pin_setup_infoframe+0x15c/0x230 [snd_hda_codec_hdmi]

I think we are talking about multiple issues here. The "DAI Digital Codec DAI" errors you talk about earlier are completely harmless. Pipewire is opening a PCM that is not connected to any hw so you get an error. This won't cause any harm.

The resume/suspend error. I think this is related to the multiplexed GPU setup (and at @brianjmurrell , this is a feature of the laptop's design and needs additional kernel support on top of Nvidia and Intel hw drivers). The above log showing pulseaudio stuck clearly points to Intel audio driver trying to talk to Intel GPU, but latter has been switched off (and will not response). For this, you can try following to disable audio driver for Intel GPU: /etc/modprobe/sof-options.conf

# limit SOF driver to only handle the external HDA codec 
options snd_sof_intel_hda_common codec_mask=0x1

But then the original problem of microphone getting choppy. I don't see how this would relate to problems #1 and #2 above. That could still get solved by upgrade to SOF1.8 or SOF1.9. @brianjmurrell Could you try a newer Fedora image, maybe Fedora35 beta https://getfedora.org/workstation/download/ ...?

brianjmurrell commented 3 years ago

For this, you can try following to disable audio driver for Intel GPU:

I've added that for my next reboot.

But then the original problem of microphone getting choppy

Maybe it's too early to determine sufficiently, but I didn't have choppy input audio today using SOF. Maybe the update to 1.8 firmware fixed it. I will report as time goes on.

brianjmurrell commented 3 years ago

The resume/suspend error. I think this is related to the multiplexed GPU setup (and at @brianjmurrell , this is a feature of the laptop's design and needs additional kernel support on top of Nvidia and Intel hw drivers).

Are you referring to something like https://01.org/linuxgraphics/gfx-docs/drm/gpu/vga-switcheroo.html or some yet-unknown-unimplemented support? Is there something I should be doing to avoid this:

points to Intel audio driver trying to talk to Intel GPU, but latter has been switched off (and will not response).

other than manually setting snd_sof_intel_hda_common options?

I guess I am looking for the answer to the question of what needs changing where to make this all work out of the box without the need to get help and do manual kernel module settings. Is there something the distro should be doing differently so that this problem doesn't happen to everyone with muxed GPUs?

kv2019i commented 3 years ago

@brianjmurrell wrote:

Are you referring to something like https://01.org/linuxgraphics/gfx-docs/drm/gpu/vga-switcheroo.html or some yet-unknown-unimplemented support? Is there something I should be doing to avoid this:

Exactly that. This would seem to require new feature development. FIled https://github.com/thesofproject/sof/issues/4854

brianjmurrell commented 3 years ago

This one can probably be closed as resolved by SOF 1.8 firmware unless you disagree.

plbossart commented 3 years ago

let's close then, thanks @brianjmurrell for your tests!

brianjmurrell commented 3 years ago

Hrm. I need to reopen this. I am back to having choppy sound on the headset microphone. Sound on the Comet Lake PCH cAVS Digital Microphone however sounds good.

Can somebody please reopen this?

brianjmurrell commented 3 years ago

I do still have the 1.8 firmware installed. Is there any further info I can provide to diagnose why just the headset mic is choppy?

plbossart commented 3 years ago

well it's the hardest problem to solve @brianjmurrell... There are multiple layers of userspace, kernel and firmware and there may be multiple reasons at different level.

One way to try and demonstrate the problem is to play a 440Hz sine wave over speakers (you may need a different playback device), and capture to a file with the headset, then look at the waveform with e.g. audacity. 'choppy' audio can usually be seen as missing chunks (zeroed out) or irregular waveforms with discontinuities.

brianjmurrell commented 3 years ago

One way to try and demonstrate the problem is to play a 440Hz sine wave over speakers (you may need a different playback device), and capture to a file with the headset, then look at the waveform with e.g. audacity. 'choppy' audio can usually be seen as missing chunks (zeroed out) or irregular waveforms with discontinuities.

I'm not sure what the purpose of this would be. I can hear the choppyness (i.e. drop-outs) just by doing a loopback (i.e. back to the ear piece of the headset) recording of the headset microphone. I' have a really good idea of what that is going to look like in audacity. The question is how to stop this from happening.

plbossart commented 3 years ago

@brianjmurrell you can hear the issue, we cannot and the 'choppy' attribute is not precise enough.

By sharing the waveform others might be able to figure out how much data is missing or what the issue is. If you want an issue to go away we need to root-cause it.

brianjmurrell commented 3 years ago

Choppy means that there are drop-outs on the input. So the captured sound is broken up with small "dead" spaces in it, making it difficult to understand what one is saying.

That said, I have no idea how to play a 440Hz sine wave. As I am not an audio engineer but just an end user, you might have to explain it to me as if I were 5 years old. Or point me to docs you already have written about how to do this form of debugging, of course. No need to repeat it here if it's already described somewhere else.

plbossart commented 3 years ago

just unzip and play this file with any audio player over speakers, and provide the captured wav file back to us. tone-440.wav.gz

The duration of the drops are particularly interesting for us as they point to DMA issues. Magic values such as 48 samples dropped (1ms) would clearly point to a DSP firmware issue. If we see longer drops then it's more likely some sort of application interference.

galibozek commented 2 years ago

Same error on Arch - 5.16.3-arch1-1, SOF: 2.0

sty 27 20:08:52 kernel: snd_hda_codec_realtek ehdaudio0D0: didn't find PCM for DAI Digital Codec DAI
sty 27 20:08:52 kernel: snd_hda_codec_realtek ehdaudio0D0: ASoC: error at snd_soc_dai_startup on Digital Codec DAI: -22
sty 27 20:08:52 kernel:  Digital Playback and Capture: soc_pcm_open() failed (-22)
sty 27 20:08:52 kernel:  HDA Digital: ASoC: dpcm_be_dai_startup() failed at Digital Playback and Capture (-22)
sty 27 20:08:52 kernel:  HDA Digital: dpcm_fe_dai_startup() failed (-22)
sty 27 20:08:52 kernel: snd_hda_codec_realtek ehdaudio0D0: didn't find PCM for DAI Digital Codec DAI
sty 27 20:08:52 kernel: snd_hda_codec_realtek ehdaudio0D0: ASoC: error at snd_soc_dai_startup on Digital Codec DAI: -22
sty 27 20:08:52 kernel:  Digital Playback and Capture: soc_pcm_open() failed (-22)
sty 27 20:08:52 kernel:  HDA Digital: ASoC: dpcm_be_dai_startup() failed at Digital Playback and Capture (-22)
sty 27 20:08:52 kernel:  HDA Digital: dpcm_fe_dai_startup() failed (-22)
plbossart commented 2 years ago

@galibozek this error is usually harmless, we don't actually use the digital output in any device. Do you see any real issue or just reporting those logs?

galibozek commented 2 years ago

@plbossart I did not observe any real problem

plbossart commented 2 years ago

thanks @galibozek. we'll need to work on this and remove this path when it's not fully enabled in the codec driver. Or alternatively remove the digital path since it's not used by anyone.

lgirdwood commented 2 years ago

@singalsu fyi - are there any frag API users in the DMIC pipes ? I assume we can fix those all for v2.1 to give a DMIC performance boost that may help here.

singalsu commented 2 years ago

Attach of a sine wave recording would be useful, see tone 440 Hz comment above. Or get a sine wave player app to your smartphone and use it as sound source. https://apps.apple.com/us/app/sine-wave-generator/id1118935547 https://play.google.com/store/apps/details?id=sine.wave.signal.generator&hl=en_IE&gl=US

jike212 commented 2 years ago

This is an older issue but I just began experiencing the same thing on my X1 Carbon Gen 9 (Tigerlake) and Fedora 36. It just started happening a few days ago and I'm not sure why.

My dmesg resembles @brianjmurrell and @galibozek's posts. Anything else I can test?

plbossart commented 2 years ago

@jike212 please check if by any chance you had an update of the SOF firmware. There was a release last week, that's the only thing that I can think of.

lgirdwood commented 2 years ago

@jike212 can you provide the audio driver output in your dmesg thanks.