ALSA: hda - Terradici HDA controllers does not support 64-bit mode
[firefly-linux-kernel-4.4.55.git] / sound / pci / hda / hda_intel.c
index d822bfc6cad619ae0dc7e5484b271a0b7ffb56f0..efcc4f7c57f20f7a85f159588b83daa784451a08 100644 (file)
@@ -2450,6 +2450,11 @@ static int __devinit azx_create(struct snd_card *card, struct pci_dev *pci,
                }
        }
 
+       /* disable 64bit DMA address for Teradici */
+       /* it does not work with device 6549:1200 subsys e4a2:040b */
+       if (chip->driver_type == AZX_DRIVER_TERA)
+               gcap &= ~ICH6_GCAP_64OK;
+
        /* allow 64bit DMA address if supported by H/W */
        if ((gcap & ICH6_GCAP_64OK) && !pci_set_dma_mask(pci, DMA_BIT_MASK(64)))
                pci_set_consistent_dma_mask(pci, DMA_BIT_MASK(64));