]> git.karo-electronics.de Git - linux-beck.git/blobdiff - sound/pci/hda/hda_intel.c
[ALSA] hda: enable unsolicited responses
[linux-beck.git] / sound / pci / hda / hda_intel.c
index 5e0cca36ed57d0215e5d407d3ef51f5c4fd610aa..288ab07648305576a4f2b754c6102e55a76502f5 100644 (file)
@@ -178,6 +178,9 @@ enum { SDI0, SDI1, SDI2, SDI3, SDO0, SDO1, SDO2, SDO3 };
 #define ICH6_INT_CTRL_EN       0x40000000      /* controller interrupt enable bit */
 #define ICH6_INT_GLOBAL_EN     0x80000000      /* global interrupt enable bit */
 
+/* GCTL unsolicited response enable bit */
+#define ICH6_GCTL_UREN         (1<<8)
+
 /* GCTL reset bit */
 #define ICH6_GCTL_RESET                (1<<0)
 
@@ -562,6 +565,9 @@ static int azx_reset(azx_t *chip)
                return -EBUSY;
        }
 
+       /* Accept unsolicited responses */
+       azx_writel(chip, GCTL, azx_readl(chip, GCTL) | ICH6_GCTL_UREN);
+
        /* detect codecs */
        if (! chip->codec_mask) {
                chip->codec_mask = azx_readw(chip, STATESTS);