At Tue, 13 Dec 2011 16:42:12 +0800, Andiry Xu wrote:
This patch adds support for AMD Southern Island HD audio.
Could you give some more background for this patch? That is, it's enabling non-snooping mode for which reason, and why new driver_type is needed, etc.
thanks,
Takashi
Signed-off-by: Andiry Xu andiry.xu@amd.com
sound/pci/hda/hda_intel.c | 14 ++++++++++++++ 1 files changed, 14 insertions(+), 0 deletions(-)
diff --git a/sound/pci/hda/hda_intel.c b/sound/pci/hda/hda_intel.c index d1582dd..ae6b68c 100644 --- a/sound/pci/hda/hda_intel.c +++ b/sound/pci/hda/hda_intel.c @@ -487,6 +487,7 @@ enum { AZX_DRIVER_SCH, AZX_DRIVER_ATI, AZX_DRIVER_ATIHDMI,
- AZX_DRIVER_SI_ATIHDMI, AZX_DRIVER_VIA, AZX_DRIVER_SIS, AZX_DRIVER_ULI,
@@ -533,6 +534,7 @@ static char *driver_short_names[] __devinitdata = { [AZX_DRIVER_SCH] = "HDA Intel MID", [AZX_DRIVER_ATI] = "HDA ATI SB", [AZX_DRIVER_ATIHDMI] = "HDA ATI HDMI",
- [AZX_DRIVER_SI_ATIHDMI] = "HDA ATI SI HDMI", [AZX_DRIVER_VIA] = "HDA VIA VT82xx", [AZX_DRIVER_SIS] = "HDA SIS966", [AZX_DRIVER_ULI] = "HDA ULI M5461",
@@ -2678,6 +2680,9 @@ static int __devinit azx_create(struct snd_card *card, struct pci_dev *pci,
chip->single_cmd = single_cmd; chip->snoop = hda_snoop;
/* Default non-snoop mode for ATI SI HDMI AUDIO */
if (chip->driver_type == AZX_DRIVER_SI_ATIHDMI)
chip->snoop = 0;
if (bdl_pos_adj[dev] < 0) { switch (chip->driver_type) {
@@ -2776,6 +2781,7 @@ static int __devinit azx_create(struct snd_card *card, struct pci_dev *pci, chip->capture_streams = ULI_NUM_CAPTURE; break; case AZX_DRIVER_ATIHDMI:
case AZX_DRIVER_SI_ATIHDMI: chip->playback_streams = ATIHDMI_NUM_PLAYBACK; chip->capture_streams = ATIHDMI_NUM_CAPTURE; break;
@@ -3037,6 +3043,14 @@ static DEFINE_PCI_DEVICE_TABLE(azx_ids) = { .driver_data = AZX_DRIVER_ATIHDMI | AZX_DCAPS_PRESET_ATI_HDMI }, { PCI_DEVICE(0x1002, 0xaa48), .driver_data = AZX_DRIVER_ATIHDMI | AZX_DCAPS_PRESET_ATI_HDMI },
- { PCI_DEVICE(0x1002, 0x9902),
.driver_data = AZX_DRIVER_SI_ATIHDMI | AZX_DCAPS_PRESET_ATI_HDMI },
- { PCI_DEVICE(0x1002, 0xaaa0),
.driver_data = AZX_DRIVER_SI_ATIHDMI | AZX_DCAPS_PRESET_ATI_HDMI },
- { PCI_DEVICE(0x1002, 0xaaa8),
.driver_data = AZX_DRIVER_SI_ATIHDMI | AZX_DCAPS_PRESET_ATI_HDMI },
- { PCI_DEVICE(0x1002, 0xaab0),
/* VIA VT8251/VT8237A */ { PCI_DEVICE(0x1106, 0x3288), .driver_data = AZX_DRIVER_VIA | AZX_DCAPS_POSFIX_VIA },.driver_data = AZX_DRIVER_SI_ATIHDMI | AZX_DCAPS_PRESET_ATI_HDMI },
-- 1.7.4.1