From mboxrd@z Thu Jan 1 00:00:00 1970 From: Alexey Kardashevskiy Subject: [PATCH kernel v4 3/6] PCI: Set PCI_BUS_FLAGS_MSI_REMAP if IOMMU have capability of IRQ remapping Date: Fri, 30 Jun 2017 15:24:33 +1000 Message-ID: <20170630052436.15212-4-aik@ozlabs.ru> References: <20170630052436.15212-1-aik@ozlabs.ru> Cc: Alexey Kardashevskiy , David Gibson , Alex Williamson , Bjorn Helgaas , Yongji Xie , Eric Auger , Yongji Xie To: kvm@vger.kernel.org Return-path: Received: from ozlabs.ru ([107.173.13.209]:38974 "EHLO ozlabs.ru" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751787AbdF3FYq (ORCPT ); Fri, 30 Jun 2017 01:24:46 -0400 In-Reply-To: <20170630052436.15212-1-aik@ozlabs.ru> Sender: kvm-owner@vger.kernel.org List-ID: From: Yongji Xie The capability of IRQ remapping is abstracted on IOMMU side on some archs. There is a existing flag IOMMU_CAP_INTR_REMAP for this. To have a universal flag to test this capability for different archs on PCI side, we set PCI_BUS_FLAGS_MSI_REMAP for PCI buses when IOMMU_CAP_INTR_REMAP is set. Signed-off-by: Yongji Xie Signed-off-by: Alexey Kardashevskiy --- drivers/pci/probe.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/drivers/pci/probe.c b/drivers/pci/probe.c index 3529ae17b70e..f2393b7d7ebf 100644 --- a/drivers/pci/probe.c +++ b/drivers/pci/probe.c @@ -775,6 +775,9 @@ int pci_register_host_bridge(struct pci_host_bridge *bridge) pci_set_bus_of_node(bus); pci_set_bus_msi_domain(bus); + if (iommu_capable(&pci_bus_type, IOMMU_CAP_INTR_REMAP)) + b->bus_flags |= PCI_BUS_FLAGS_MSI_REMAP; + if (!parent) set_dev_node(bus->bridge, pcibus_to_node(bus)); -- 2.11.0