Comment 49 for bug 996245

Revision history for this message
Tomi Orava (tomi-orava) wrote :

I've got a copy of modified alsa-driver-1.0.25-5.17rc9-1.tar.bz2 that is supposed to get this audio working.
However, I was unable to get any real results after my tests even after I patched the patch_realtek.c.

I took take Z77X-UD5H specific patch and applied to change into 3.8.6 kernel:

--- linux-3.8.6/sound/pci/hda/patch_realtek.c 2013-04-05 19:49:06.000000000 +0300
+++ linux-3.8.6.gigabyte/sound/pci/hda/patch_realtek.c 2013-04-30 15:48:44.440199936 +0300
@@ -5037,6 +5037,7 @@
        ALC889_FIXUP_IMAC91_VREF,
        ALC882_FIXUP_INV_DMIC,
        ALC882_FIXUP_NO_PRIMARY_HP,
+ ALC898_FIXUP_GIGABYTE_Z77X_UD5H_GPIO,
 };

 static void alc889_fixup_coef(struct hda_codec *codec,
@@ -5359,6 +5360,20 @@
                .type = ALC_FIXUP_FUNC,
                .v.func = alc882_fixup_no_primary_hp,
        },
+ [ALC898_FIXUP_GIGABYTE_Z77X_UD5H_GPIO] = {
+ .type = ALC_FIXUP_VERBS,
+ .v.verbs = (const struct hda_verb[]) {
+ /* DMIC/GPIO Control */
+ { 0x20, AC_VERB_SET_COEF_INDEX, 0x11 },
+ { 0x20, AC_VERB_SET_PROC_COEF, 0x0801 },
+ /* GPIO 1 & 2 = 1 */
+ {0x01, AC_VERB_SET_GPIO_MASK, 0x03},
+ {0x01, AC_VERB_SET_GPIO_DIRECTION, 0x03},
+ {0x01, AC_VERB_SET_GPIO_DATA, 0x03},
+ { }
+ }
+ },
+
 };

 static const struct snd_pci_quirk alc882_fixup_tbl[] = {
@@ -5429,6 +5444,7 @@
        SND_PCI_QUIRK(0x161f, 0x2054, "Medion laptop", ALC883_FIXUP_EAPD),
        SND_PCI_QUIRK(0x17aa, 0x3a0d, "Lenovo Y530", ALC882_FIXUP_LENOVO_Y530),
        SND_PCI_QUIRK(0x8086, 0x0022, "DX58SO", ALC889_FIXUP_COEF),
+ SND_PCI_QUIRK(0x1458, 0xa072, "GA-Z77X-UD5H", ALC898_FIXUP_GIGABYTE_Z77X_UD5H_GPIO),
        {}
 };

Perhaps some alsa guys have some ideas what to try in order to get this to actually to work.
I can of course also deliver the full alsa-drivers package to somebody for more detailed verification.