W dniu 30.06.2011 08:54, Takashi Iwai pisze:
At Thu, 30 Jun 2011 08:30:10 +0200, Julian Sikorski wrote:
W dniu 30.06.2011 07:26, Takashi Iwai pisze:
At Wed, 29 Jun 2011 21:29:38 +0200, Julian Sikorski wrote:
I also tried merging sound-2.6/master with Linus's tree, but this also did not help.
It's really strange. Are you sure that this is the kernel you modified properly? Before further debugging, check two things:
Run "git log sound/pci/hda/patch_realtek.c" and the first few entries, whether they come from sound git tree. For example, check the commit below is contained:
commit 7ec9c6ccc6007b14a916021d4ba7ffbcc7822ae3 Author: Takashi Iwai tiwai@suse.de Date: Mon Jun 27 15:53:38 2011 +0200
ALSA: hda - Fix volume-init for ALC259 with invalid widget caps
commit 0b0c8490670a77b937f502491ae9d5236aa4054a Author: Takashi Iwai tiwai@suse.de Date: Tue Jun 28 12:45:47 2011 +0200
ALSA: hda - Create snd_hda_get_conn_index() helper function Create snd_hda_get_conn_index() helper function for obtaining the connection index of the widget. Replaced the similar codes used in several codec-drivers with this common helper. Signed-off-by: Takashi Iwai <tiwai@suse.de>
commit 4f574b7b1a1cc8aac617e938459e8f03a641e678 Author: Takashi Iwai tiwai@suse.de Date: Mon Jun 27 16:17:07 2011 +0200
ALSA: hda - More volume-init fixes for ALC267 codec More similar fixes like previous commits: handle the exceptional case like ALC267 where no volume amp is found in ADC widget but in the capsrc widget instead. Also minor checks for avoiding possible erros: no connection-select when the pin has a single selection, and add beep verbs only when the 0x1d is used for beep. Signed-off-by: Takashi Iwai <tiwai@suse.de>
To be even more sure, I re-synced your branch again and built a new kernel. I am attaching patch_realtek.c file being built. Fresh alsa-info.sh is here: http://www.alsa-project.org/db/?f=5051b2cb788b1db4273e06e98a78783dd0ec679f
OK, then it's correct.
- Confirm the running kernel is what you really built and installed. You can modify the suffix via $CONFIG_LOCALVERSION in .config file. Name it uniquely, rebuild, re-install and reboot. The new suffix should appear in the output of "uname -r".
belegdol4 is the suffix I added: $ uname -r 3.0-0.rc5.git0.1.belegdol4.fc15.x86_64
- Once when these are correct, check /proc/asound/card0/codec#0: the widget NID 0x02 should contain "Speaker Playback Volume" instead of "Headphone Playback Volume" with the latest driver.
Node 0x02 [Audio Output] wcaps 0x41d: Stereo Amp-Out Control: name="Headphone Playback Volume", index=0, device=0
Perhaps I need to specify a correct model to enable this code?
No, you shouldn't pass any model option.
Could you apply the patch below to add some debug prints, and give the relevant kernel messages you get? Just grep lines with 'XXX'.
Takashi
Here you go:
$ dmesg | grep XXX [ 12.789557] XXX alc662_auto_fill_dac_nids called [ 12.789716] XXX filled dacs: 2/0/0/0/0, hp 0, ext 0/0/0 [ 12.789718] XXX swap primary out to HP [ 12.789719] XXX alc662_auto_fill_dac_nids called [ 12.789845] XXX filled dacs: 2/0/0/0/0, hp 0, ext 0/0/0 [ 12.790094] XXX added multi-io pin 1a, dac 3 [ 12.790343] XXX added multi-io pin 18, dac 4 [ 12.790347] XXX create mixer ch 0 pin 1b dac 2 mix c [ 12.790351] XXX create mixer ch 1 pin 1a dac 3 mix d [ 12.790354] XXX create mixer ch 2 pin 18 dac 4 mix e
Julian