At Tue, 3 Aug 2010 01:00:54 -0300, Leandro Lucarella wrote:
Hi. I've upgraded from kernel 2.6.34 to 2.6.35 and the beep through the sound card stopped working. I found a very similar problem[1] (commit[2]).
[1] http://lkml.org/lkml/2010/7/28/228 [2] http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commitdif...
I've tried to manually enabling the beep with the steps in the e-mail thread I found:
# echo -n 1 > /sys/class/sound/hwC0D2/subsystem_id # echo -n 1 > /sys/class/sound/hwC0D2/reconfig
But it didn't work (the beep still goes through the pcspkr).
So, you want to hook the beep over codec but it doesn't work, right. Do you get "Beep" mixer elements and the dedicated input device? Please give alsa-info.sh output.
I've tried to naively (I'm not a kernel hacker, so I was just guessing) add a new entry with the quirks beep_white_list by copying the entry for ASUS like this:
diff --git a/sound/pci/hda/patch_realtek.c b/sound/pci/hda/patch_realtek.c index 596ea2f..ca3ed12 100644 --- a/sound/pci/hda/patch_realtek.c +++ b/sound/pci/hda/patch_realtek.c @@ -5183,6 +5183,7 @@ static void fillup_priv_adc_nids(struct hda_codec *codec, hda_nid_t *nid
static struct snd_pci_quirk beep_white_list[] = { SND_PCI_QUIRK(0x1043, 0x829f, "ASUS", 1),
SND_PCI_QUIRK(0x8086, 0xd613, "INTEL", 1), {}
};
But it didn't work either.
Hm, this should work. At least, you should have beep mixer & co with this.
Then I noticed, if I'm understanding the source code (sound/pci/hda/patch_realtek.c) and documentation (Documentation/sound/alsa/HD-Audio-Models.txt) right, that my card is not present in the models listing, but it worked fine in 2.6.34 (and previous) kernel(s).
This is no problem. The model entry is only for special cases. For normal machines, no quirks are needed.
Takashi