At Thu, 20 Jan 2011 10:07:55 +0100, David Henningsson wrote:
On 2011-01-19 18:24, Anisse Astier wrote:
Hi,
I have this computer, with an integrated speaker. It's using an ALC662, see attached alsa-info output.
By default, speaker doesn't work. Now, after playing a bit with hda-analyzer, I figured that output PIN 0x14 has EAPD enabled, which is the default way of doing things in auto configure mode. But disabling EAPD on this PIN makes speaker work. See second alsa-info attached.
Is it necessary to write a full blown quirk just to modify this parameter?
From what I've seen in patch_realtek, it seems we need to write the whole config for the device when adding a quirk: we can't rely on auto configuration and then put a small quirk on top of that. Am I right ?
Perhaps this commit can give you some inspiration?
http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=...
...although Takashi just rewrote the quirking system a bit, so you'll have to adjust to that when you add your (similar) quirk.
Yes, it looks now like:
static const struct alc_fixup alc269_fixups[] = { ... [ALC269_FIXUP_LENOVO_EAPD] = { .type = ALC_FIXUP_VERBS, .v.verbs = (const struct hda_verb[]) { {0x14, AC_VERB_SET_EAPD_BTLENABLE, 0}, {} } }, ...
Takashi