From: Mario Limonciello <[email protected]> This series started out as changes to VGA arbiter to try to handle a case of a system with 2 GPUs that are not VGA devices [1]. This was discussed but decided not to overload the VGA arbiter for non VGA devices.
Instead move the x86 specific detection of framebuffer resources into x86 specific code that the fbcon can use to properly identify the primary device. This code is still called from the VGA arbiter, and the logic does not change there. To avoid regression to fbcon, fall back to VGA arbiter. In order for userspace to also be able to discover which device was the primary framebuffer create a link to that device from fbcon. v2->v3: * Pick up tags * Drop old patch 6 * Add 2 new patches for fbcon Link: https://lore.kernel.org/linux-pci/[email protected]/ [1] Mario Limonciello (7): PCI: Add helper for checking if a PCI device is a display controller vfio/pci: Use pci_is_display() vga_switcheroo: Use pci_is_display() iommu/vt-d: Use pci_is_display() ALSA: hda: Use pci_is_display() PCI/VGA: Move check for firmware default out of VGA arbiter fbcon: Make a symlink to the device selected as primary arch/x86/video/video-common.c | 28 +++++++++++++++++++++++++ drivers/gpu/vga/vga_switcheroo.c | 2 +- drivers/iommu/intel/iommu.c | 2 +- drivers/pci/vgaarb.c | 36 ++------------------------------ drivers/vfio/pci/vfio_pci_igd.c | 3 +-- drivers/video/fbdev/core/fbcon.c | 10 ++++++++- include/linux/pci.h | 15 +++++++++++++ sound/hda/hdac_i915.c | 2 +- sound/pci/hda/hda_intel.c | 4 ++-- 9 files changed, 60 insertions(+), 42 deletions(-) -- 2.43.0
