2
0
mirror of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git synced 2025-09-04 20:19:47 +08:00
linux/drivers/pci
Nam Cao 5149bbb56b PCI: vmd: Remove MSI-X check on child devices
d7d8ab87e3 ("PCI: vmd: Switch to msi_create_parent_irq_domain()") added a
WARN_ON sanity check that child devices support MSI-X, because VMD document
says [1]:

  Intel VMD only supports MSIx Interrupts from child devices and therefore
  the BIOS must enable PCIe Hot Plug and MSIx interrups [sic].

However, the VMD device can't even tell the difference between a child
device using MSI and one using MSI-X.  Per 185a383ada ("x86/PCI: Add
driver for Intel Volume Management Device (VMD)"), VMD does not support
INTx interrupts, but does support child devices using either MSI or MSI-X.

Remove the sanity check to avoid the WARN_ON and allow child devices to use
MSI, reported by Ammar.

Fixes: d7d8ab87e3 ("PCI: vmd: Switch to msi_create_parent_irq_domain()")
Link: https://cdrdv2-public.intel.com/776857/VMD_White_Paper.pdf [1]
Reported-by: Ammar Faizi <ammarfaizi2@gnuweeb.org>
Closes: https://lore.kernel.org/linux-pci/aJXYhfc%2F6DfcqfqF@linux.gnuweeb.org/
Signed-off-by: Nam Cao <namcao@linutronix.de>
[bhelgaas: commit log]
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Tested-by: Ammar Faizi <ammarfaizi2@gnuweeb.org>
Link: https://patch.msgid.link/20250811053935.4049211-1-namcao@linutronix.de
2025-08-12 13:45:01 -05:00
..
controller PCI: vmd: Remove MSI-X check on child devices 2025-08-12 13:45:01 -05:00
endpoint Merge branch 'pci/endpoint/epf-vntb' 2025-07-31 16:11:46 -05:00
hotplug powerpc fixes for 6.17 #2 2025-08-03 19:15:04 -07:00
msi pci-v6.17-changes 2025-08-01 13:59:07 -07:00
pcie pci-v6.17-changes 2025-08-01 13:59:07 -07:00
pwrctrl PCI/pwrctrl: Add optional slot clock for PCI slots 2025-06-13 16:59:52 -05:00
switch PCI: switchtec: Add Microchip PCI100X device IDs 2025-01-21 10:47:28 -06:00
access.c
ats.c iommufd: Extend IOMMU_GET_HW_INFO to report PASID capability 2025-03-28 10:07:23 -03:00
bus.c PCI: Allow built-in drivers to use async initial probing 2025-07-15 11:23:33 -05:00
devres.c PCI: Remove redundant set of request functions 2025-05-20 07:39:15 +00:00
doe.c PCI/DOE: Expose DOE features via sysfs 2025-03-21 16:36:01 -05:00
ecam.c Revert "PCI: ecam: Allow cfg->priv to be pre-populated from the root port device" 2025-06-30 12:30:03 -05:00
host-bridge.c
iomap.c PCI: Remove hybrid-devres usage warnings from kernel-doc 2025-05-20 07:39:16 +00:00
iov.c PCI/IOV: Allow drivers to control VF BAR size 2025-07-14 15:04:23 -05:00
irq.c
Kconfig PCI: hv: Switch to msi_create_parent_irq_domain() 2025-07-11 12:57:00 +01:00
Makefile Merge branch 'pci/tph' 2024-11-25 13:40:55 -06:00
mmap.c
npem.c PCI/NPEM: Add _DSM PCIe SSD status LED management 2024-09-06 11:37:24 -05:00
of_property.c PCI: of: Create device tree PCI host bridge node 2025-02-28 15:13:51 -06:00
of.c PCI: of: Add of_pci_get_equalization_presets() API 2025-04-19 19:42:33 +05:30
p2pdma.c sysfs: treewide: switch back to attribute_group::bin_attrs 2025-06-17 10:44:15 +02:00
pci-acpi.c pci-v6.17-changes 2025-08-01 13:59:07 -07:00
pci-bridge-emul.c PCI: Rename CRS Completion Status to RRS 2024-09-10 19:52:30 -05:00
pci-bridge-emul.h
pci-driver.c pci-v6.17-changes 2025-08-01 13:59:07 -07:00
pci-label.c
pci-mid.c
pci-pf-stub.c
pci-stub.c
pci-sysfs.c sysfs: treewide: switch back to attribute_group::bin_attrs 2025-06-17 10:44:15 +02:00
pci.c pci-v6.17-changes 2025-08-01 13:59:07 -07:00
pci.h Merge branch 'pci/controller/linkup-fix' 2025-07-31 16:11:47 -05:00
probe.c pci-v6.17-changes 2025-08-01 13:59:07 -07:00
proc.c s390/pci: Introduce pdev->non_mappable_bars and replace VFIO_PCI_MMAP 2025-03-21 14:54:16 -05:00
quirks.c pci-v6.17-changes 2025-08-01 13:59:07 -07:00
remove.c Merge branch 'pci/devtree-create' 2025-03-27 13:14:45 -05:00
rom.c
search.c
setup-bus.c PCI/IOV: Add pci_resource_num_to_vf_bar() to convert VF BAR number to/from IOV resource 2025-07-14 15:03:23 -05:00
setup-res.c PCI/IOV: Allow IOV resources to be resized in pci_resize_resource() 2025-07-14 15:04:18 -05:00
slot.c PCI: hotplug: Inline pci_hp_{create,remove}_module_link() 2025-03-04 17:00:12 -06:00
syscall.c
tph.c PCI/TPH: Expose pcie_tph_get_st_table_size() 2025-07-23 01:27:32 -04:00
vc.c
vgaarb.c
vpd.c sysfs: treewide: switch back to attribute_group::bin_attrs 2025-06-17 10:44:15 +02:00
xen-pcifront.c