drm/amd/display: Disconnect non-DP with no EDID
[linux-2.6-microblaze.git] / drivers / pci / probe.c
index be51670..3a62d09 100644 (file)
@@ -895,7 +895,6 @@ static int pci_register_host_bridge(struct pci_host_bridge *bridge)
        /* Temporarily move resources off the list */
        list_splice_init(&bridge->windows, &resources);
        bus->sysdata = bridge->sysdata;
-       bus->msi = bridge->msi;
        bus->ops = bridge->ops;
        bus->number = bus->busn_res.start = bridge->busnr;
 #ifdef CONFIG_PCI_DOMAINS_GENERIC
@@ -926,6 +925,8 @@ static int pci_register_host_bridge(struct pci_host_bridge *bridge)
        device_enable_async_suspend(bus->bridge);
        pci_set_bus_of_node(bus);
        pci_set_bus_msi_domain(bus);
+       if (bridge->msi_domain && !dev_get_msi_domain(&bus->dev))
+               bus->bus_flags |= PCI_BUS_FLAGS_NO_MSI;
 
        if (!parent)
                set_dev_node(bus->bridge, pcibus_to_node(bus));
@@ -1053,7 +1054,6 @@ static struct pci_bus *pci_alloc_child_bus(struct pci_bus *parent,
                return NULL;
 
        child->parent = parent;
-       child->msi = parent->msi;
        child->sysdata = parent->sysdata;
        child->bus_flags = parent->bus_flags;