Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
[FIXED][SOLVED]Problem with intel hda codecs: no sound.
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Kernel & Hardware
View previous topic :: View next topic  
Author Message
prolog-in
n00b
n00b


Joined: 21 Dec 2017
Posts: 18

PostPosted: Fri Dec 22, 2017 8:51 am    Post subject: [FIXED][SOLVED]Problem with intel hda codecs: no sound. Reply with quote

Hello.
I have no volume control whatsoever, the problem started after I've modified my kernel to support USB tethering (I didn't mess anything with audio options).
Now, I'm using the same kernel config that worked before, and still no audio.
I suspect the problem is in /lib/modules, because when I've modified the kernel it took no restart for it to stop working.
I'm using an Dell laptop.

This is the dmesg error:
Code:
[  305.327731] snd_hda_intel 0000:00:1f.3: bound 0000:00:02.0 (ops vgt_balloon_space [i915])
[  308.364446] snd_hda_intel 0000:00:1f.3: azx_get_response timeout, switching to polling mode: last cmd=0x000f0000
[  309.371223] snd_hda_intel 0000:00:1f.3: No response from codec, disabling MSI: last cmd=0x000f0000
[  310.377852] snd_hda_intel 0000:00:1f.3: Codec #0 probe error; disabling it...


Here's the full dmesg, the kernel config and the output of lspci -k


Last edited by prolog-in on Sun Dec 24, 2017 2:01 pm; edited 3 times in total
Back to top
View user's profile Send private message
theotherjoe
Guru
Guru


Joined: 22 Nov 2003
Posts: 368

PostPosted: Fri Dec 22, 2017 11:36 am    Post subject: Reply with quote

Kernel config seems to be OK.
Had a look for problems with Intel Device 9d71 via Mr google,
looks as if there were problems in the 4.12 series with that codec.
Give different Kernel series a try, for instance the latest
4.9 may have a fix for that particular codec.
Back to top
View user's profile Send private message
krinn
Watchman
Watchman


Joined: 02 May 2003
Posts: 7071

PostPosted: Fri Dec 22, 2017 12:31 pm    Post subject: Reply with quote

Code:
[  235.689712] pulseaudio[6666]: segfault at 2 ip 00007f9841202740 sp 00007fff1e820f30 error 4 in libasound.so.2.0.0[7f98411b9000+fb000]

You should better look at fixing that pulseaudio error, if pulseaudio handle alsa, make sure pulseaudio is working with alsa.
Back to top
View user's profile Send private message
prolog-in
n00b
n00b


Joined: 21 Dec 2017
Posts: 18

PostPosted: Fri Dec 22, 2017 12:43 pm    Post subject: Reply with quote

krinn wrote:
Code:
[  235.689712] pulseaudio[6666]: segfault at 2 ip 00007f9841202740 sp 00007fff1e820f30 error 4 in libasound.so.2.0.0[7f98411b9000+fb000]

You should better look at fixing that pulseaudio error, if pulseaudio handle alsa, make sure pulseaudio is working with alsa.

This problem was caused by me reloading the kernel modules.
Back to top
View user's profile Send private message
krinn
Watchman
Watchman


Joined: 02 May 2003
Posts: 7071

PostPosted: Fri Dec 22, 2017 1:22 pm    Post subject: Re: Problem with intel hda codecs: no sound. Reply with quote

prolog-in wrote:
I suspect the problem is in /lib/modules, because when I've modified the kernel it took no restart for it to stop working.

So it could be your problem because:
Code:
[    0.000000] Linux version 4.12.12-gentoo-15-oct-2017 (root@delo) (gcc version 6.4.0 (Gentoo Hardened 6.4.0 p1.1) ) #1 SMP PREEMPT Tue Dec 19 09:34:47 -02 2017

The #1 means your running kernel has been built only 1 time, which is not a problem if you have alter your kernel to only add modules, and a problem if you have alter your kernel and your changes has enable a build-in feature require by a module.
Back to top
View user's profile Send private message
prolog-in
n00b
n00b


Joined: 21 Dec 2017
Posts: 18

PostPosted: Fri Dec 22, 2017 1:27 pm    Post subject: Reply with quote

theotherjoe wrote:
Kernel config seems to be OK.
Had a look for problems with Intel Device 9d71 via Mr google,
looks as if there were problems in the 4.12 series with that codec.
Give different Kernel series a try, for instance the latest
4.9 may have a fix for that particular codec.


OK gonna try it.
Back to top
View user's profile Send private message
prolog-in
n00b
n00b


Joined: 21 Dec 2017
Posts: 18

PostPosted: Fri Dec 22, 2017 1:29 pm    Post subject: Re: Problem with intel hda codecs: no sound. Reply with quote

krinn wrote:
prolog-in wrote:
I suspect the problem is in /lib/modules, because when I've modified the kernel it took no restart for it to stop working.

So it could be your problem because:
Code:
[    0.000000] Linux version 4.12.12-gentoo-15-oct-2017 (root@delo) (gcc version 6.4.0 (Gentoo Hardened 6.4.0 p1.1) ) #1 SMP PREEMPT Tue Dec 19 09:34:47 -02 2017

The #1 means your running kernel has been built only 1 time, which is not a problem if you have alter your kernel to only add modules, and a problem if you have alter your kernel and your changes has enable a build-in feature require by a module.


I kinda didn't undertand completely. Could you explain a bit more, please?
Back to top
View user's profile Send private message
prolog-in
n00b
n00b


Joined: 21 Dec 2017
Posts: 18

PostPosted: Fri Dec 22, 2017 1:59 pm    Post subject: Reply with quote

theotherjoe wrote:
Kernel config seems to be OK.
Had a look for problems with Intel Device 9d71 via Mr google,
looks as if there were problems in the 4.12 series with that codec.
Give different Kernel series a try, for instance the latest
4.9 may have a fix for that particular codec.

I've tried 4.9 and had the same error. Here's dmesg:
I'm trying 4.4.
Back to top
View user's profile Send private message
theotherjoe
Guru
Guru


Joined: 22 Nov 2003
Posts: 368

PostPosted: Fri Dec 22, 2017 2:49 pm    Post subject: Reply with quote

prolog-in,
checked the sound options in your .config again and
can't see anything obviously wrong in there.
here is a story about that device found via google:
https://www.linuxquestions.org/questions/linux-hardware-18/no-sound-hardware-in-linux-mint-18-1-a-4175605741/
sorry, cant be of any real help there.
Back to top
View user's profile Send private message
prolog-in
n00b
n00b


Joined: 21 Dec 2017
Posts: 18

PostPosted: Fri Dec 22, 2017 4:25 pm    Post subject: Reply with quote

theotherjoe wrote:
prolog-in,
checked the sound options in your .config again and
can't see anything obviously wrong in there.
here is a story about that device found via google:
https://www.linuxquestions.org/questions/linux-hardware-18/no-sound-hardware-in-linux-mint-18-1-a-4175605741/
sorry, cant be of any real help there.

Thanks for trying
Back to top
View user's profile Send private message
theotherjoe
Guru
Guru


Joined: 22 Nov 2003
Posts: 368

PostPosted: Fri Dec 22, 2017 5:20 pm    Post subject: Reply with quote

from your last dmesg: wonder what these are about
Code:
...
[    0.030535] mce: CPU supports 8 MCE banks
[    0.030548] mce: [Hardware Error]: Machine check events logged
...
[   10.275156] snd_hda_intel 0000:00:1f.3: bound 0000:00:02.0 (ops i915_audio_component_bind_ops [i915])
....

machine check events should never happen. maybe you can find out more
about those?

looks like the audio output part of the i915 driver (hdmi output?) tries to hook up to the
sound system. wonder what would happen if you remove snd_hda_intel module
and reload it?
Back to top
View user's profile Send private message
prolog-in
n00b
n00b


Joined: 21 Dec 2017
Posts: 18

PostPosted: Fri Dec 22, 2017 7:02 pm    Post subject: Reply with quote

theotherjoe wrote:
from your last dmesg: wonder what these are about
Code:
...
[    0.030535] mce: CPU supports 8 MCE banks
[    0.030548] mce: [Hardware Error]: Machine check events logged
...
[   10.275156] snd_hda_intel 0000:00:1f.3: bound 0000:00:02.0 (ops i915_audio_component_bind_ops [i915])
....

machine check events should never happen. maybe you can find out more
about those?

looks like the audio output part of the i915 driver (hdmi output?) tries to hook up to the
sound system. wonder what would happen if you remove snd_hda_intel module
and reload it?


If I do that I get the same error. My thought is that the kernel doesn't know which codec to load...
Back to top
View user's profile Send private message
theotherjoe
Guru
Guru


Joined: 22 Nov 2003
Posts: 368

PostPosted: Fri Dec 22, 2017 7:13 pm    Post subject: Reply with quote

how about compiling all the sound/alsa stuff into the kernel?
I mean moving away from modules and see if that makes
any difference during runtime.
Back to top
View user's profile Send private message
krinn
Watchman
Watchman


Joined: 02 May 2003
Posts: 7071

PostPosted: Fri Dec 22, 2017 9:51 pm    Post subject: Reply with quote

prolog-in wrote:
My thought is that the kernel doesn't know which codec to load...

It doesn't, it's your device manager that autoload the right codec by checking your hardware, for most gentoo users, a task done by eudev.
And you can seek yourself what codecs your system need with
Code:
cat /proc/asound/card*/codec* | grep Codec


and you should care about the mce (look at app-admin/mcelog)
Back to top
View user's profile Send private message
prolog-in
n00b
n00b


Joined: 21 Dec 2017
Posts: 18

PostPosted: Fri Dec 22, 2017 10:48 pm    Post subject: Reply with quote

[quote="krinn"]
prolog-in wrote:
My thought is that the kernel doesn't know which codec to load...

It doesn't, it's your device manager that autoload the right codec by checking your hardware, for most gentoo users, a task done by eudev.
And you can seek yourself what codecs your system need with
Code:
cat /proc/asound/card*/codec* | grep Codec


and you should care about the mce (look at app-admin/mcelog)[/quote

So the problem is in eudev? because I have all the modules compiled and available? what is happening:
Back to top
View user's profile Send private message
krinn
Watchman
Watchman


Joined: 02 May 2003
Posts: 7071

PostPosted: Sat Dec 23, 2017 12:09 am    Post subject: Reply with quote

prolog-in wrote:
So the problem is in eudev? because I have all the modules compiled and available? what is happening:

No sorry, my mistake, codecs are load/use by alsa, udev is there to load the module for the card.

your dmesg show eudev is doing the work, it try to load the module for your card, however, the module is failing, either because it need a specific option for your card model (you said, i have a dell, and many dell have options for intel-hd-audio, look at /usr/src/linux/Documentation/sound/alsa)
i think those specials models may alter probing mask.

you could see that from Audio-HD.txt

Quote:
Codec-Probing Problem
~~~~~~~~~~~~~~~~~~~~~
A less often but a more severe problem is the codec probing. When
BIOS reports the available codec slots wrongly, the driver gets
confused and tries to access the non-existing codec slot. This often
results in the total screw-up, and destructs the further communication
with the codec chips. The symptom appears usually as error messages
like:
------------------------------------------------------------------------
hda_intel: azx_get_response timeout, switching to polling mode:
last cmd=0x12345678
hda_intel: azx_get_response timeout, switching to single_cmd mode:
last cmd=0x12345678
------------------------------------------------------------------------

The first line is a warning, and this is usually relatively harmless.
It means that the codec response isn't notified via an IRQ. The
driver uses explicit polling method to read the response. It gives
very slight CPU overhead, but you'd unlikely notice it.

The second line is, however, a fatal error. If this happens, usually
it means that something is really wrong. Most likely you are
accessing a non-existing codec slot.

Thus, if the second error message appears, try to narrow the probed
codec slots via `probe_mask` option. It's a bitmask, and each bit
corresponds to the codec slot. For example, to probe only the first
slot, pass `probe_mask=1`. For the first and the third slots, pass
`probe_mask=5` (where 5 = 1 | 4), and so on.

Since 2.6.29 kernel, the driver has a more robust probing method, so
this error might happen rarely, though.

On a machine with a broken BIOS, sometimes you need to force the
driver to probe the codec slots the hardware doesn't report for use.
In such a case, turn the bit 8 (0x100) of `probe_mask` option on.
Then the rest 8 bits are passed as the codec slots to probe
unconditionally. For example, `probe_mask=0x103` will force to probe
the codec slots 0 and 1 no matter what the hardware reports.

You don't need for now to tweak that, but what you need to do is checking what codec your card use, and reading in HD-Audio-Models.txt if your dell card is support and then you need to feed alsa with the proper switch, so that when loading the intel-hda the proper option is given (which may already fix the probing trouble)

don't worry about howto do that if you are lost, you will have someone that will tells you later, for now, seek the info
Back to top
View user's profile Send private message
prolog-in
n00b
n00b


Joined: 21 Dec 2017
Posts: 18

PostPosted: Sat Dec 23, 2017 8:52 pm    Post subject: Reply with quote

krinn wrote:
prolog-in wrote:
So the problem is in eudev? because I have all the modules compiled and available? what is happening:

No sorry, my mistake, codecs are load/use by alsa, udev is there to load the module for the card.

your dmesg show eudev is doing the work, it try to load the module for your card, however, the module is failing, either because it need a specific option for your card model (you said, i have a dell, and many dell have options for intel-hd-audio, look at /usr/src/linux/Documentation/sound/alsa)
i think those specials models may alter probing mask.

you could see that from Audio-HD.txt

Quote:
Codec-Probing Problem
~~~~~~~~~~~~~~~~~~~~~
A less often but a more severe problem is the codec probing. When
BIOS reports the available codec slots wrongly, the driver gets
confused and tries to access the non-existing codec slot. This often
results in the total screw-up, and destructs the further communication
with the codec chips. The symptom appears usually as error messages
like:
------------------------------------------------------------------------
hda_intel: azx_get_response timeout, switching to polling mode:
last cmd=0x12345678
hda_intel: azx_get_response timeout, switching to single_cmd mode:
last cmd=0x12345678
------------------------------------------------------------------------

The first line is a warning, and this is usually relatively harmless.
It means that the codec response isn't notified via an IRQ. The
driver uses explicit polling method to read the response. It gives
very slight CPU overhead, but you'd unlikely notice it.

The second line is, however, a fatal error. If this happens, usually
it means that something is really wrong. Most likely you are
accessing a non-existing codec slot.

Thus, if the second error message appears, try to narrow the probed
codec slots via `probe_mask` option. It's a bitmask, and each bit
corresponds to the codec slot. For example, to probe only the first
slot, pass `probe_mask=1`. For the first and the third slots, pass
`probe_mask=5` (where 5 = 1 | 4), and so on.

Since 2.6.29 kernel, the driver has a more robust probing method, so
this error might happen rarely, though.

On a machine with a broken BIOS, sometimes you need to force the
driver to probe the codec slots the hardware doesn't report for use.
In such a case, turn the bit 8 (0x100) of `probe_mask` option on.
Then the rest 8 bits are passed as the codec slots to probe
unconditionally. For example, `probe_mask=0x103` will force to probe
the codec slots 0 and 1 no matter what the hardware reports.

You don't need for now to tweak that, but what you need to do is checking what codec your card use, and reading in HD-Audio-Models.txt if your dell card is support and then you need to feed alsa with the proper switch, so that when loading the intel-hda the proper option is given (which may already fix the probing trouble)

don't worry about howto do that if you are lost, you will have someone that will tells you later, for now, seek the info


I got this from a working setup, maybe it will help clean things out?
Code:
[   10.702005] snd_hda_codec_realtek hdaudioC0D0: autoconfig for ALC3246: line_outs=1 (0x14/0x0/0x0/0x0/0x0) type:speaker
[   10.702011] snd_hda_codec_realtek hdaudioC0D0:    speaker_outs=0 (0x0/0x0/0x0/0x0/0x0)
[   10.702017] snd_hda_codec_realtek hdaudioC0D0:    hp_outs=1 (0x21/0x0/0x0/0x0/0x0)
[   10.702020] snd_hda_codec_realtek hdaudioC0D0:    mono: mono_out=0x0
[   10.702023] snd_hda_codec_realtek hdaudioC0D0:    inputs:
[   10.896020] input: HDA Digital PCBeep as /devices/pci0000:00/0000:00:1f.3/sound/card0/input9
[   10.897265] input: HDA Intel PCH Front Headphone as /devices/pci0000:00/0000:00:1f.3/sound/card0/input10
[   10.897417] input: HDA Intel PCH HDMI/DP,pcm=3 as /devices/pci0000:00/0000:00:1f.3/sound/card0/input11
[   10.897570] input: HDA Intel PCH HDMI/DP,pcm=7 as /devices/pci0000:00/0000:00:1f.3/sound/card0/input12
[   10.897706] input: HDA Intel PCH HDMI/DP,pcm=8 as /devices/pci0000:00/0000:00:1f.3/sound/card0/input13
[   10.897866] input: HDA Intel PCH HDMI/DP,pcm=9 as /devices/pci0000:00/0000:00:1f.3/sound/card0/input14


Thank you soo much. You couldn't believe if I told you how happy I am.
Thanks to you all.
My fix was adding
options snd-hda-intel model=dell-headset-dock
to /etc/modprobe.d/alsa.conf
dell-headset-dock was in that doc you described.
thanks so much!
Back to top
View user's profile Send private message
prolog-in
n00b
n00b


Joined: 21 Dec 2017
Posts: 18

PostPosted: Sun Dec 24, 2017 1:15 pm    Post subject: Reply with quote

I'm sad to say that it happened again after I've rebooted.
It's a BIOS problem (it didn't work on the Dell diagnostics). I've reset it to factory settings, maybe is something related to enabling/disabling bluetooth.
And I also removed the battery and hold the power button for more than 30 seconds.
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Kernel & Hardware All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum