ALSA: hda - Enable beep on Realtek codecs with PCI SSID override

When the PCI SSID gives an overriding SKU assno, PC-beep bit isn't
detected (since it's located over 16bit), resulting in no PC beep.
Also, many devices seem ignoring the requirement by Realtek's spec
for SSID numbers, and it also confuses the PC beep detection.

This patch assumes the PC beep is available on every machine with
PCI SSID override.  It's a regression fix from 2.6.34.

Reference: Kernel bug 16251
	http://bugzilla.kernel.org/show_bug.cgi?id=16251

Signed-off-by: Takashi Iwai <tiwai@suse.de>
This commit is contained in:
Takashi Iwai 2010-07-05 17:28:17 +02:00
parent 3bfea98ff7
commit f189efcd1c

View File

@ -1268,8 +1268,10 @@ static int alc_auto_parse_customize_define(struct hda_codec *codec)
struct alc_spec *spec = codec->spec;
ass = codec->subsystem_id & 0xffff;
if (ass != codec->bus->pci->subsystem_device && (ass & 1))
if (ass != codec->bus->pci->subsystem_device && (ass & 1)) {
spec->cdefine.enable_pcbeep = 1; /* assume always enabled */
goto do_sku;
}
nid = 0x1d;
if (codec->vendor_id == 0x10ec0260)