Bug 205293 - [REGRESSION] hda-intel: No response from codec
Summary: [REGRESSION] hda-intel: No response from codec
Status: RESOLVED INVALID
Alias: None
Product: Drivers
Classification: Unclassified
Component: Sound(ALSA) (show other bugs)
Hardware: Intel Linux
: P1 normal
Assignee: Jaroslav Kysela
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2019-10-22 23:08 UTC by Tomas Janousek
Modified: 2019-11-05 13:42 UTC (History)
2 users (show)

See Also:
Kernel Version: 5.3.7
Subsystem:
Regression: No
Bisected commit-id:


Attachments

Description Tomas Janousek 2019-10-22 23:08:35 UTC
After update from 5.2.17 to 5.3.7, probing of hda codecs seems broken:

kernel: snd_hda_intel 0000:00:1f.3: No response from codec, resetting bus: last cmd=0x20370503
kernel: snd_hda_intel 0000:00:1f.3: No response from codec, resetting bus: last cmd=0x201f0500
kernel: snd_hda_intel 0000:00:1f.3: No response from codec, resetting bus: last cmd=0x20270503
… repeated many times …
kernel: snd_hda_codec_generic hdaudioC0D2: Unable to sync register 0x2f0d00. -11
kernel: snd_hda_intel 0000:00:1f.3: azx_get_response timeout, switching to single_cmd mode: last cmd=0x20270503

Hardware: ThinkPad T25 (should be equivalent to T470), also reported to be broken on ThinkPad X1C5 (https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=942881#3).

Can be worked around by using "options snd_hda_intel probe_mask=1", but HDMI seems to no longer be detected:

kernel: snd_hda_codec_realtek hdaudioC0D0: autoconfig for ALC298: line_outs=1 (0x14/0x0/0x0/0x0/0x0) type:speaker
kernel: snd_hda_codec_realtek hdaudioC0D0:    speaker_outs=0 (0x0/0x0/0x0/0x0/0x0)
kernel: snd_hda_codec_realtek hdaudioC0D0:    hp_outs=2 (0x17/0x21/0x0/0x0/0x0)
kernel: snd_hda_codec_realtek hdaudioC0D0:    mono: mono_out=0x0
kernel: snd_hda_codec_realtek hdaudioC0D0:    inputs:
kernel: snd_hda_codec_realtek hdaudioC0D0:      Mic=0x18
kernel: snd_hda_codec_realtek hdaudioC0D0:      Dock Mic=0x19
kernel: snd_hda_codec_realtek hdaudioC0D0:      Internal Mic=0x12
kernel: input: HDA Intel PCH Mic as /devices/pci0000:00/0000:00:1f.3/sound/card0/input12
kernel: input: HDA Intel PCH Dock Mic as /devices/pci0000:00/0000:00:1f.3/sound/card0/input13
kernel: input: HDA Intel PCH Dock Headphone as /devices/pci0000:00/0000:00:1f.3/sound/card0/input14
kernel: input: HDA Intel PCH Headphone as /devices/pci0000:00/0000:00:1f.3/sound/card0/input15

Without probe_mask=1, it logs:

kernel: snd_hda_codec_realtek hdaudioC0D0: autoconfig for ALC298: line_outs=1 (0x14/0x0/0x0/0x0/0x0) type:speaker
kernel: snd_hda_codec_realtek hdaudioC0D0:    speaker_outs=0 (0x0/0x0/0x0/0x0/0x0)
kernel: snd_hda_codec_realtek hdaudioC0D0:    hp_outs=2 (0x17/0x21/0x0/0x0/0x0)
kernel: snd_hda_codec_realtek hdaudioC0D0:    mono: mono_out=0x0
kernel: snd_hda_codec_realtek hdaudioC0D0:    inputs:
kernel: snd_hda_codec_realtek hdaudioC0D0:      Mic=0x18
kernel: snd_hda_codec_realtek hdaudioC0D0:      Dock Mic=0x19
kernel: snd_hda_codec_realtek hdaudioC0D0:      Internal Mic=0x12
kernel: snd_hda_codec_generic hdaudioC0D2: autoconfig for Generic: line_outs=0 (0x0/0x0/0x0/0x0/0x0) type:line
kernel: snd_hda_codec_generic hdaudioC0D2:    speaker_outs=0 (0x0/0x0/0x0/0x0/0x0)
kernel: snd_hda_codec_generic hdaudioC0D2:    hp_outs=0 (0x0/0x0/0x0/0x0/0x0)
kernel: snd_hda_codec_generic hdaudioC0D2:    mono: mono_out=0x0
kernel: snd_hda_codec_generic hdaudioC0D2:    dig-out=0x3/0x0
kernel: snd_hda_codec_generic hdaudioC0D2:    inputs:
kernel: input: HDA Digital PCBeep as /devices/pci0000:00/0000:00:1f.3/sound/card0/input11
kernel: input: HDA Intel PCH Mic as /devices/pci0000:00/0000:00:1f.3/sound/card0/input12
kernel: input: HDA Intel PCH Dock Mic as /devices/pci0000:00/0000:00:1f.3/sound/card0/input13
kernel: input: HDA Intel PCH Dock Headphone as /devices/pci0000:00/0000:00:1f.3/sound/card0/input14
kernel: input: HDA Intel PCH Headphone as /devices/pci0000:00/0000:00:1f.3/sound/card0/input15
kernel: input: HDA Intel PCH HDMI as /devices/pci0000:00/0000:00:1f.3/sound/card0/input16

And finally, on 5.2.17 it logs:

kernel: snd_hda_codec_realtek hdaudioC0D0: autoconfig for ALC298: line_outs=1 (0x14/0x0/0x0/0x0/0x0) type:speaker
kernel: snd_hda_codec_realtek hdaudioC0D0:    speaker_outs=0 (0x0/0x0/0x0/0x0/0x0)
kernel: snd_hda_codec_realtek hdaudioC0D0:    hp_outs=2 (0x17/0x21/0x0/0x0/0x0)
kernel: snd_hda_codec_realtek hdaudioC0D0:    mono: mono_out=0x0
kernel: snd_hda_codec_realtek hdaudioC0D0:    inputs:
kernel: snd_hda_codec_realtek hdaudioC0D0:      Mic=0x18
kernel: snd_hda_codec_realtek hdaudioC0D0:      Dock Mic=0x19
kernel: snd_hda_codec_realtek hdaudioC0D0:      Internal Mic=0x12
kernel: input: HDA Digital PCBeep as /devices/pci0000:00/0000:00:1f.3/sound/card0/input11
kernel: input: HDA Intel PCH Mic as /devices/pci0000:00/0000:00:1f.3/sound/card0/input12
kernel: input: HDA Intel PCH Dock Mic as /devices/pci0000:00/0000:00:1f.3/sound/card0/input13
kernel: input: HDA Intel PCH Dock Headphone as /devices/pci0000:00/0000:00:1f.3/sound/card0/input14
kernel: input: HDA Intel PCH Headphone as /devices/pci0000:00/0000:00:1f.3/sound/card0/input15
kernel: input: HDA Intel PCH HDMI/DP,pcm=3 as /devices/pci0000:00/0000:00:1f.3/sound/card0/input16
kernel: input: HDA Intel PCH HDMI/DP,pcm=7 as /devices/pci0000:00/0000:00:1f.3/sound/card0/input17
kernel: input: HDA Intel PCH HDMI/DP,pcm=8 as /devices/pci0000:00/0000:00:1f.3/sound/card0/input18
kernel: input: HDA Intel PCH HDMI/DP,pcm=9 as /devices/pci0000:00/0000:00:1f.3/sound/card0/input19
kernel: input: HDA Intel PCH HDMI/DP,pcm=10 as /devices/pci0000:00/0000:00:1f.3/sound/card0/input20

There's no C0D2 and there are multiple HDMI/DP profiles.
Comment 1 Takashi Iwai 2019-10-23 04:42:47 UTC
Do you have HDMI HD-audio codec driver module available on your system?
The log message (showing "Generic") indicate that it's the generic driver being bound, not the HDMI codec driver.
Comment 2 Tomas Janousek 2019-10-23 07:23:52 UTC
Well, of course I do have the module available, what a weird suggestion!
... except you're absolutely right and I'm terribly sorry for the noise.

Turns out there's something wrong with the Debian kernel build and the signature of snd-hda-codec-hdmi is corrupted:

    # modprobe snd-hda-codec-hdmi
    modprobe: ERROR: could not insert 'snd_hda_codec_hdmi': Key was rejected by service

Forcing the module load fixes the problem.

And this also explains why this problem was only experinced by Debian users, which was weird and I should have paid more attention to this fact. Please accept my apology for this invalid bug report, and thank you for your quick and helpful reply.
Comment 3 Paul Menzel 2019-11-05 13:42:57 UTC
This is Debian bug report #942881, and message #20 lists a possible solution [1].

[1]: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=942881#20

Note You need to log in before you can comment on or make changes to this bug.