Merge branch 'kvm-arm/vgic-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git...
[firefly-linux-kernel-4.4.55.git] / drivers / pci / pcie / aspm.c
index 8474b6a4fc9bb714e7ab85cf539353fd151b8125..d320df6375a2c807f8a45a8badc247bf16a956bf 100644 (file)
@@ -556,6 +556,9 @@ void pcie_aspm_init_link_state(struct pci_dev *pdev)
        struct pcie_link_state *link;
        int blacklist = !!pcie_aspm_sanity_check(pdev);
 
+       if (!aspm_support_enabled)
+               return;
+
        if (!pci_is_pcie(pdev) || pdev->link_state)
                return;
        if (pci_pcie_type(pdev) != PCI_EXP_TYPE_ROOT_PORT &&
@@ -634,10 +637,7 @@ void pcie_aspm_exit_link_state(struct pci_dev *pdev)
        struct pci_dev *parent = pdev->bus->self;
        struct pcie_link_state *link, *root, *parent_link;
 
-       if (!pci_is_pcie(pdev) || !parent || !parent->link_state)
-               return;
-       if ((pci_pcie_type(parent) != PCI_EXP_TYPE_ROOT_PORT) &&
-           (pci_pcie_type(parent) != PCI_EXP_TYPE_DOWNSTREAM))
+       if (!parent || !parent->link_state)
                return;
 
        down_read(&pci_bus_sem);