Thinkpad speaker turns mute - Linux Codec issue?
- by Curlew
At some point a few days ago the speakers on my Lenovo Thinkpad T410 (Model number: 2537A11) suddenly stopped working randomly. This error happens every time I watch a video or listen to a music file. The sound just abruptly stops. At the moment, I can't produce a single sound no matter what I do. I am using Debian GNU/Linux on this laptop and there doesn't appear to be anything else wrong (the fan is working, no abnormal heat (staying around ~40°C), no other obvious errors or problems).
Here is the output of a nice program someone pointed me to:
martin@martin:~/Downloads$ sudo python run.py --monitor
Using temporary directory: /dev/shm/hda-analyzer
You may remove this directory when finished or if you like to
download the most recent copy of hda-analyzer tool.
Downloading file hda_analyzer.py
Downloading file hda_guilib.py
Downloading file hda_codec.py
Downloading file hda_proc.py
Downloading file hda_graph.py
Downloading file hda_mixer.py
Downloaded all files, executing hda_analyzer.py
Watching 1 cards
======================================
Sound is working normally and then it stops and the following lines appear:
Diff for codec 0/0 (0x14f15069):
---
+++
@@ -164,17 +164,17 @@
Power: setting=D0, actual=D0
Node 0x1f [Pin Complex] wcaps 0x400501: Stereo
Pincap 0x00000010: OUT
Pin Default 0x901701f0: [Fixed] Speaker at Int N/A
Conn = Analog, Color = Unknown
DefAssociation = 0xf, Sequence = 0x0
Misc = NO_PRESENCE
Pin-ctls: 0x40: OUT
- Power: setting=D0, actual=D0
+ Power: setting=D3, actual=D3
Connection: 2
0x10* 0x11
Node 0x20 [Pin Complex] wcaps 0x400781: Stereo Digital
Pincap 0x00000010: OUT
Pin Default 0x40f001f0: [N/A] Other at Ext N/A
Conn = Unknown, Color = Unknown
DefAssociation = 0xf, Sequence = 0x0
Misc = NO_PRESENCE
And now there is also an error in the dmesg output
hda-intel: IRQ timing workaround is activated for card #0. Suggest a bigger bdl_pos_adj.
I changed the bdl_pos_adj to various numbers (-1, 0, 64, 1024) and either there is no change at all or dmesg reports that the adjustment is too big. I wonder if this bdl_pos_adj is the real reason for the error.
Here is my hardware information provided by alsa-info.sh website.
Okay, i did some serious testing and even installed Windows and now i officially conclude that this is a hard-ware related issue with my Laptop speakers.
Reason:
The error occurs in my installed Debian Linux, an Ubuntu Live distribution and Windows XP
No error-message appears in all of the OS. The sound just keeps running and i can't hear a thing.
I tested different setups, including OSS, ALSA and the pulseaudio server on top
If i use my new usb-headphones i can hear sound all the time without any sudden silences. So obviously, although hard to believe, my laptop speakers are not okay (never heard of similar cases).
I'll award the bounty to anyone who can point me to good tutorials or the procedure how to exchange my T410 speakers (i still have warranty. The laptop was bought in Germany, but now i am in Denmark).
Or to someone who can explain me the output from hda-analyzer (big log above).