]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/blob - releases/2.6.32.12/alsa-hda-enable-snoop-for-intel-cougar-point.patch
Fixes for 5.10
[thirdparty/kernel/stable-queue.git] / releases / 2.6.32.12 / alsa-hda-enable-snoop-for-intel-cougar-point.patch
1 From 32679f95cac3b1bdf27dce8b5273e06af186fd91 Mon Sep 17 00:00:00 2001
2 From: Seth Heasley <seth.heasley@intel.com>
3 Date: Mon, 22 Feb 2010 17:31:09 -0800
4 Subject: ALSA: hda - enable snoop for Intel Cougar Point
5
6 From: Seth Heasley <seth.heasley@intel.com>
7
8 commit 32679f95cac3b1bdf27dce8b5273e06af186fd91 upstream.
9
10 This patch enables snoop, eliminating static during playback.
11 This patch supersedes the previous Cougar Point audio patch.
12
13 Signed-off-by: Seth Heasley <seth.heasley@intel.com>
14 Signed-off-by: Takashi Iwai <tiwai@suse.de>
15 Cc: maximilian attems <max@stro.at>
16 Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
17
18 ---
19 sound/pci/hda/hda_intel.c | 6 +++++-
20 1 file changed, 5 insertions(+), 1 deletion(-)
21
22 --- a/sound/pci/hda/hda_intel.c
23 +++ b/sound/pci/hda/hda_intel.c
24 @@ -438,6 +438,7 @@ struct azx {
25 /* driver types */
26 enum {
27 AZX_DRIVER_ICH,
28 + AZX_DRIVER_PCH,
29 AZX_DRIVER_SCH,
30 AZX_DRIVER_ATI,
31 AZX_DRIVER_ATIHDMI,
32 @@ -452,6 +453,7 @@ enum {
33
34 static char *driver_short_names[] __devinitdata = {
35 [AZX_DRIVER_ICH] = "HDA Intel",
36 + [AZX_DRIVER_PCH] = "HDA Intel PCH",
37 [AZX_DRIVER_SCH] = "HDA Intel MID",
38 [AZX_DRIVER_ATI] = "HDA ATI SB",
39 [AZX_DRIVER_ATIHDMI] = "HDA ATI HDMI",
40 @@ -1040,6 +1042,7 @@ static void azx_init_pci(struct azx *chi
41 0x01, NVIDIA_HDA_ENABLE_COHBIT);
42 break;
43 case AZX_DRIVER_SCH:
44 + case AZX_DRIVER_PCH:
45 pci_read_config_word(chip->pci, INTEL_SCH_HDA_DEVC, &snoop);
46 if (snoop & INTEL_SCH_HDA_DEVC_NOSNOOP) {
47 pci_write_config_word(chip->pci, INTEL_SCH_HDA_DEVC,
48 @@ -2393,6 +2396,7 @@ static int __devinit azx_create(struct s
49 if (bdl_pos_adj[dev] < 0) {
50 switch (chip->driver_type) {
51 case AZX_DRIVER_ICH:
52 + case AZX_DRIVER_PCH:
53 bdl_pos_adj[dev] = 1;
54 break;
55 default:
56 @@ -2668,7 +2672,7 @@ static struct pci_device_id azx_ids[] =
57 /* PCH */
58 { PCI_DEVICE(0x8086, 0x3b56), .driver_data = AZX_DRIVER_ICH },
59 /* CPT */
60 - { PCI_DEVICE(0x8086, 0x1c20), .driver_data = AZX_DRIVER_ICH },
61 + { PCI_DEVICE(0x8086, 0x1c20), .driver_data = AZX_DRIVER_PCH },
62 /* SCH */
63 { PCI_DEVICE(0x8086, 0x811b), .driver_data = AZX_DRIVER_SCH },
64 /* ATI SB 450/600 */