Commit 3f8c530f authored by Kai Vehmanen's avatar Kai Vehmanen Committed by Takashi Iwai
Browse files

ALSA: hda/i915: extend connectivity check to cover Intel ARL



Expand the HDA/I915 connectivity check to correctly handle
the PCI topology used in some Intel Arrow Lake products.

Reviewed-by: default avatarBard Liao <yung-chuan.liao@linux.intel.com>
Tested-by: default avatar"T, Arun" <arun.t@intel.com>
Signed-off-by: default avatarKai Vehmanen <kai.vehmanen@linux.intel.com>
Signed-off-by: default avatarPierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Link: https://lore.kernel.org/r/20230802150105.24604-6-pierre-louis.bossart@linux.intel.com


Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
parent d2852b8c
Loading
Loading
Loading
Loading
+10 −4
Original line number Diff line number Diff line
@@ -75,14 +75,20 @@ static bool connectivity_check(struct pci_dev *i915, struct pci_dev *hdac)
	if (bus_a == bus_b)
		return true;

	/*
	 * on i915 discrete GPUs with embedded HDA audio, the two
	 * devices are connected via 2nd level PCI bridge
	 */
	bus_a = bus_a->parent;
	bus_b = bus_b->parent;

	/* connected via parent bus (may be NULL!) */
	if (bus_a == bus_b)
		return true;

	if (!bus_a || !bus_b)
		return false;

	/*
	 * on i915 discrete GPUs with embedded HDA audio, the two
	 * devices are connected via 2nd level PCI bridge
	 */
	bus_a = bus_a->parent;
	bus_b = bus_b->parent;
	if (bus_a && bus_a == bus_b)