summaryrefslogtreecommitdiff
path: root/sound/hda/hdac_i915.c
diff options
context:
space:
mode:
authorVille Syrjälä <ville.syrjala@linux.intel.com>2024-10-15 17:58:58 +0300
committerVille Syrjälä <ville.syrjala@linux.intel.com>2024-10-15 17:58:58 +0300
commit6e20c253608b0ba2876c1aabe95f885d7000e9b4 (patch)
tree3f6b20b14c4a3f8351ccccf03cd5106f46415f61 /sound/hda/hdac_i915.c
parent442f10325b03f41029170b8150eb8714a96b4291 (diff)
parent20ef35f70a8e49809b248df3f8e05fdd53753534 (diff)
Merge remote-tracking branch 'drm_intel_push/topic/core-for-CI' into drm-tip
Diffstat (limited to 'sound/hda/hdac_i915.c')
-rw-r--r--sound/hda/hdac_i915.c23
1 files changed, 23 insertions, 0 deletions
diff --git a/sound/hda/hdac_i915.c b/sound/hda/hdac_i915.c
index e9425213320e..a214636ed975 100644
--- a/sound/hda/hdac_i915.c
+++ b/sound/hda/hdac_i915.c
@@ -170,6 +170,26 @@ static int i915_gfx_present(struct pci_dev *hdac_pci)
return false;
}
+static bool dg1_gfx_present(void)
+{
+ static const struct pci_device_id ids[] = {
+ { PCI_DEVICE(PCI_VENDOR_ID_INTEL, 0x4905),
+ .class = PCI_BASE_CLASS_DISPLAY << 16,
+ .class_mask = 0xff << 16 },
+ { PCI_DEVICE(PCI_VENDOR_ID_INTEL, 0x4906),
+ .class = PCI_BASE_CLASS_DISPLAY << 16,
+ .class_mask = 0xff << 16 },
+ { PCI_DEVICE(PCI_VENDOR_ID_INTEL, 0x4907),
+ .class = PCI_BASE_CLASS_DISPLAY << 16,
+ .class_mask = 0xff << 16 },
+ { PCI_DEVICE(PCI_VENDOR_ID_INTEL, 0x4908),
+ .class = PCI_BASE_CLASS_DISPLAY << 16,
+ .class_mask = 0xff << 16 },
+ {}
+ };
+ return pci_dev_present(ids);
+}
+
/**
* snd_hdac_i915_init - Initialize i915 audio component
* @bus: HDA core bus
@@ -190,6 +210,9 @@ int snd_hdac_i915_init(struct hdac_bus *bus)
if (!i915_gfx_present(to_pci_dev(bus->dev)))
return -ENODEV;
+ if (dg1_gfx_present())
+ return -ENODEV;
+
err = snd_hdac_acomp_init(bus, NULL,
i915_component_master_match,
sizeof(struct i915_audio_component) - sizeof(*acomp));