Bug 12159

Summary: 2.6.28-rc6-git1 -- No sound produced from Intel HDA ALSA driver
Product: Drivers Reporter: Rafael J. Wysocki (rjw)
Component: Sound(ALSA)Assignee: Takashi Iwai (tiwai)
Status: CLOSED CODE_FIX    
Severity: normal CC: kevin01123, miles.lane
Priority: P1    
Hardware: All   
OS: Linux   
Kernel Version: 2.6.28-rc6-git1 Subsystem:
Regression: Yes Bisected commit-id:
Bug Depends on:    
Bug Blocks: 11808    
Attachments: The .config that produced kernel with working sound.
ignore
2.6.28 alsa-info output on impacted system (Thinkpad x61s with Santa Rosa chipset)
My monolithic kernel config which gives working sound with 2.6.29-rc2-git3
"cat /proc/asound/Intel/*" output

Description Rafael J. Wysocki 2008-12-03 14:51:00 UTC
Subject    : 2.6.28-rc6-git1 -- No sound produced from Intel HDA ALSA driver
Submitter  : "Miles Lane" <miles.lane@gmail.com>
Date       : 2008-11-27 20:33
References : http://marc.info/?l=linux-kernel&m=122781805620212&w=4
Handled-By : "Takashi Iwai" <tiwai@suse.de>

This entry is being used for tracking a regression from 2.6.27.  Please don't
close it until the problem is fixed in the mainline.
Comment 1 Takashi Iwai 2008-12-03 22:57:47 UTC
Confirmed that it's working with the latest sound-unstable git tree.

Miles, please check whether sound.git tree (not unstable) works, and check for-linus branch as well.
Comment 2 Miles Lane 2008-12-08 09:57:59 UTC
I tested 2.6.28-rc7-git6 and 
git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6.git

Sound didn't work with either one.  How do I get the for-linus tree?
Comment 3 Miles Lane 2008-12-08 13:12:22 UTC
I used:
"git clone git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6.git"
to get the source tree.  Let me know if this is what you wanted me to test.
Anyhow, I built this kernel and found that the sound is also not produced for this one.
Comment 4 Miles Lane 2008-12-08 13:19:05 UTC
Whoops.  Somehow, the command I used to get the "for-linus" tree wasn't saved in my history and I accidentally pasted in the wrong command line in my previous comment.  Here is my .git/config info.  Hopefully it will show that I built the correct tree.

/usr/src/for-linus# more .git/config 
[core]
	repositoryformatversion = 0
	filemode = true
	bare = false
	logallrefupdates = true
[remote "origin"]
	url = git://git.alsa-project.org/alsa-kernel.git
	fetch = +refs/heads/*:refs/remotes/origin/*
[branch "master"]
	remote = origin
	merge = refs/heads/master
Comment 5 Miles Lane 2008-12-08 17:01:53 UTC
Created attachment 19220 [details]
The .config that produced kernel with working sound.
Comment 6 Miles Lane 2008-12-08 17:06:01 UTC
I think I got the "for-linus" right now and it produced a kernel with working sound:

/usr/src/alsa-kernel# git pull
Already up-to-date.
/usr/src/alsa-kernel# more .git/config 
[core]
	repositoryformatversion = 0
	filemode = true
	bare = false
	logallrefupdates = true
[remote "origin"]
	url = git://git.alsa-project.org/alsa-kernel.git
	fetch = +refs/heads/*:refs/remotes/origin/*
[branch "master"]
	remote = origin
	merge = refs/heads/master
[branch "for-linus"]
	remote = origin
	merge = refs/heads/for-linus
Comment 7 Takashi Iwai 2008-12-09 01:14:34 UTC
Hmm, the latest Linus tree must be as same as for-linus branch of sound.git tree regarding the sound.

When you build the kernel from git, better to pull over Linus tree, e.g.
   % git clone git://git.kernel.org/.../linux-2.6.git
   % git pull git://git.kernel.org/.../sound-2.6.git master

If you want to try another branch (e.g. for-linus), pull with that branch name instead,
   % git clone git://git.kernel.org/.../linux-2.6.git
   % git pull git://git.kernel.org/.../sound-2.6.git for-linus

(BTW, the first clone can be from the repository on local disk, of course.  That is, clone from the remote linux-2.6.git first, then clone from this directory to another for tests.  You can use --reference option to reduce unneeded copy, too.)

Anyway, could you try the latest Linus tree again with the working kernel config?  I suspect it's rather a mixer issue, though.  For example, "Analog Loopback" was turned on in previous setup, or so...
Comment 8 Miles Lane 2008-12-09 06:31:11 UTC
If I understand your instructions correctly, this is what you mean:

git clone git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git 

git clone linux-2.6 sound-2.6
Initialized empty Git repository in /usr/src/sound-2.6/.git/
Checking out files: 100% (25254/25254), done.

cd sound-2.6

git pull git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6.git for-linus
From git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6
 * branch            for-linus  -> FETCH_HEAD
Already up-to-date.

NOTE:  I am puzzled by this.  As far as I can tell, no file changes were pulled.  Is this the expected outcome?  

I will build a kernel from this and test it now.
Comment 9 Takashi Iwai 2008-12-09 06:44:16 UTC
That's correct and expected behavior.  The all patches on for-linus branch were already merged to Linus tree, so there is no change indeed.

That's why I'm wondering why Linus tree doesn't work although for-linus is OK.
Comment 10 Miles Lane 2008-12-09 06:51:46 UTC
Okay.  In that case, I will try a build of Linus' tree using the .config that I attached to this bug report.

Thanks!
Comment 11 Miles Lane 2008-12-30 06:28:16 UTC
Sorry for the delay in testing.  I have been traveling and also very busy with work.  I have at least another two very busy days ahead.  I just wanted to let you know that the final release of 2.6.28 does not produce sound from the speakers of my machine.  

I will get back to testing asap.  It might be worth asking if anyone on LKML has a similar Gateway laptop (MT6821).
Comment 12 Miles Lane 2009-01-11 06:26:16 UTC
I tested 2.6.28 and the problem is still active.
Comment 13 George Masgras 2009-01-11 23:17:24 UTC
Miles, I have a Gateway MT6821 too. I have the same problem with 2.6.28 
Comment 14 Takashi Iwai 2009-01-13 03:55:30 UTC
Could you guys attach alsa-info output on 2.6.28 kernel again?
I need to double-check your setups.

Also, it's interesting to check 2.6.29-rc1 whether any fix gets in there.

Last but not least, please don't forget to reset NEEDINFO flag after providing the information.... Thanks.
Comment 15 Stephen Gutknecht 2009-01-18 09:01:56 UTC
Created attachment 19878 [details]
ignore
Comment 16 Stephen Gutknecht 2009-01-18 09:04:43 UTC
I'm not trying to emphasise the distro-specific issue here, but I want to point out that I downloaded Ubuntu Jaunty alpha3 livecd released 2009-01-16 which is based on 2.6.28 kernel. I encountered this problem.  If I boot up Ubuntu 8.10 livecd which is based on 2.6.27 kernel - works perfectly.

I'm on a Lenovo Thinkpad x61s (Santa Rosa chipset).  I've tried every variation of module option =lenovo and =thinkpad I can find, no luck.  The livecd tests prove to me it isn't a simple mixer setting issue but a more fundamental driver issue.

I got the latest alsa git tree and compiled it. (Last commit Wed Jan 7 12:04:57 2009 +0100)  I've attached the alsa-info from that.
Comment 17 Stephen Gutknecht 2009-01-18 09:06:52 UTC
Created attachment 19879 [details]
2.6.28 alsa-info output on impacted system (Thinkpad x61s with Santa Rosa chipset)

Attached file, not just URL
Comment 18 Stephen Gutknecht 2009-01-24 11:25:24 UTC
UPDATE: I managed to get sound out of headphone jack on 2.6.28 with Thinkpad x61s by using advice given on ArchWiki:  http://wiki.archlinux.org/index.php/PulseAudio#module-hal-detect

No sound after install
If you experience no audio output via any means while using ALSA as your default device, you may have to unmute your sound card. To do this, you will want to launch alsamixer and make sure each column has a green 00 under it (this can be toggled by pressing 'm')
$ alsamixer -c 0

However, main speakers still do not work.
Comment 19 Miles Lane 2009-01-27 11:38:24 UTC
I have a build of 2.6.29-rc2-git3 with working sound.  I am running Ubuntu under WUBI (FUSE-mounted root filesystem in a file on a Windows NTFS partition).  I have been having difficulty finding a configuration of driver modules that would successfully boot, so I finally built a monolithic kernel (all drivers are built-in).  This is what I am currently running with working sound.  I will attach my .config file for your inspection.  I will also attach alsa-info output and the significant portions of dmesg.

Thanks.
Comment 20 Miles Lane 2009-01-27 11:44:54 UTC
Created attachment 20015 [details]
My monolithic kernel config which gives working sound with 2.6.29-rc2-git3
Comment 21 Miles Lane 2009-01-27 11:50:20 UTC
I get an error running "sh alsa-info.sh --no-upload"
Is the script unable to handle a monolithic kernel?

ALSA Information Script v 0.4.53
--------------------------------
Do you want to run this script? [y/n] : read: 285: Illegal option -e
Comment 22 Miles Lane 2009-01-27 12:09:47 UTC
Advanced Linux Sound Architecture Driver Version 1.0.18a.
HDA Intel 0000:00:1b.0: PCI INT A -> GSI 22 (level, low) -> IRQ 22
HDA Intel 0000:00:1b.0: setting latency timer to 64
ALSA sound/pci/hda/hda_intel.c:2212: chipset global capabilities = 0x4401
ALSA sound/pci/hda/hda_intel.c:785: codec_mask = 0x3
ALSA sound/pci/hda/hda_intel.c:1213: hda_intel: codec #0 probed OK
ALSA sound/pci/hda/hda_intel.c:1213: hda_intel: codec #1 probed OK
ALSA sound/pci/hda/patch_sigmatel.c:2332: hda_codec: pin nid 07 pin config 40c003f4
ALSA sound/pci/hda/patch_sigmatel.c:2332: hda_codec: pin nid 08 pin config 424503f2
ALSA sound/pci/hda/patch_sigmatel.c:2332: hda_codec: pin nid 0a pin config 400000f3
ALSA sound/pci/hda/patch_sigmatel.c:2332: hda_codec: pin nid 0b pin config 02a19020
ALSA sound/pci/hda/patch_sigmatel.c:2332: hda_codec: pin nid 0c pin config 40a000f0
ALSA sound/pci/hda/patch_sigmatel.c:2332: hda_codec: pin nid 0d pin config 90100210
ALSA sound/pci/hda/patch_sigmatel.c:2332: hda_codec: pin nid 10 pin config 400003f1
ALSA sound/pci/hda/patch_sigmatel.c:2332: hda_codec: pin nid 11 pin config 9033032e
ALSA sound/pci/hda/hda_codec.c:3492: autoconfig: line_outs=1 (0xd/0x0/0x0/0x0/0x0)
ALSA sound/pci/hda/hda_codec.c:3496:    speaker_outs=0 (0x0/0x0/0x0/0x0/0x0)
ALSA sound/pci/hda/hda_codec.c:3500:    hp_outs=0 (0x0/0x0/0x0/0x0/0x0)
ALSA sound/pci/hda/hda_codec.c:3501:    mono: mono_out=0x0
ALSA sound/pci/hda/hda_codec.c:3509:    inputs: mic=0xb, fmic=0x0, line=0x0, fline=0x0, cd=0x11, aux=0x0
input: HDA Intel at 0xd8240000 irq 22 Mic at Ext Front Jack as /devices/pci0000:00/0000:00:1b.0/input/input5
ALSA device list:
#0: HDA Intel at 0xd8240000 irq 22
ALSA sound/pci/hda/hda_intel.c:1473: azx_pcm_prepare: bufsize=0x10000, format=0x31
ALSA sound/pci/hda/hda_codec.c:881: hda_codec_setup_stream: NID=0x2, stream=0x5, channel=0, format=0x31
ALSA sound/pci/hda/hda_codec.c:894: hda_codec_cleanup_stream: NID=0x2
ALSA sound/pci/hda/hda_intel.c:1473: azx_pcm_prepare: bufsize=0x10000, format=0x4011
ALSA sound/pci/hda/hda_codec.c:881: hda_codec_setup_stream: NID=0x2, stream=0x5, channel=0, format=0x4011
ALSA sound/pci/hda/hda_intel.c:1473: azx_pcm_prepare: bufsize=0x10000, format=0x4011
ALSA sound/pci/hda/hda_codec.c:881: hda_codec_setup_stream: NID=0x2, stream=0x5, channel=0, format=0x4011
ALSA sound/pci/hda/hda_intel.c:1473: azx_pcm_prepare: bufsize=0x10000, format=0x4011
ALSA sound/pci/hda/hda_codec.c:881: hda_codec_setup_stream: NID=0x3, stream=0x1, channel=0, format=0x4011
ALSA sound/pci/hda/hda_intel.c:1473: azx_pcm_prepare: bufsize=0x10000, format=0x4011
ALSA sound/pci/hda/hda_codec.c:881: hda_codec_setup_stream: NID=0x3, stream=0x1, channel=0, format=0x4011
ALSA sound/pci/hda/hda_codec.c:894: hda_codec_cleanup_stream: NID=0x2
ALSA sound/pci/hda/hda_codec.c:894: hda_codec_cleanup_stream: NID=0x2
ALSA sound/pci/hda/hda_codec.c:894: hda_codec_cleanup_stream: NID=0x3
ALSA sound/pci/hda/hda_codec.c:894: hda_codec_cleanup_stream: NID=0x3
ALSA sound/pci/hda/hda_intel.c:1473: azx_pcm_prepare: bufsize=0x10000, format=0x4011
ALSA sound/pci/hda/hda_codec.c:881: hda_codec_setup_stream: NID=0x2, stream=0x5, channel=0, format=0x4011
ALSA sound/pci/hda/hda_intel.c:1473: azx_pcm_prepare: bufsize=0x10000, format=0x4011
ALSA sound/pci/hda/hda_codec.c:881: hda_codec_setup_stream: NID=0x2, stream=0x5, channel=0, format=0x4011
Comment 23 Miles Lane 2009-01-27 12:20:47 UTC
Created attachment 20017 [details]
"cat /proc/asound/Intel/*" output
Comment 24 Miles Lane 2009-01-28 13:26:40 UTC
I believe this bug is fixed.  I finally figured out what config options I needed to change to get a working module-enabled 2.6.29-rc2-git4 kernel.  The sound is working great.

Thanks!
Comment 25 Stephen Gutknecht 2009-02-02 18:13:42 UTC
this bug seems fixed for me in the latest Ubuntu 9.04 alpha updates in past 36 hours.  I'm on kernel 2.6.28-6-generic.
Comment 26 Takashi Iwai 2009-02-04 05:37:34 UTC
(In reply to comment #21)
> I get an error running "sh alsa-info.sh --no-upload"
> Is the script unable to handle a monolithic kernel?
> 
> ALSA Information Script v 0.4.53
> --------------------------------
> Do you want to run this script? [y/n] : read: 285: Illegal option -e
> 

I guess it's rather a problem bash.  Which bash version?
Comment 27 Takashi Iwai 2009-02-04 05:39:28 UTC
Anyway, let's resolve the bug.
Comment 28 john 2009-02-15 04:05:32 UTC
same identical problem for me, with either kernels 2.6.28 or 2.6.29 no sound is produced from the hda intel soundcard
Comment 29 Kevin 2009-04-06 01:21:10 UTC
Experiencing sound issues with my Intel sound card as well. Doesn't work with kernel versions .28 or .29. Tested on both Arch and Debian.