diff options
Diffstat (limited to 'drivers/pci/host/pci-imx6.c')
-rw-r--r-- | drivers/pci/host/pci-imx6.c | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/drivers/pci/host/pci-imx6.c b/drivers/pci/host/pci-imx6.c index a9e0a32054b5..1fb3ec9ecf71 100644 --- a/drivers/pci/host/pci-imx6.c +++ b/drivers/pci/host/pci-imx6.c @@ -1302,11 +1302,16 @@ static int imx6_pcie_probe(struct platform_device *pdev) return PTR_ERR(imx6_pcie->pcie_inbound_axi); } } - - imx6_pcie->pcie_bus_regulator = devm_regulator_get(pp->dev, - "pcie-bus"); - if (IS_ERR(imx6_pcie->pcie_bus_regulator)) + if (imx6_pcie->variant == IMX6QP) { + imx6_pcie->pcie_bus_regulator = devm_regulator_get(pp->dev, + "pcie-bus"); + if (PTR_ERR(imx6_pcie->pcie_bus_regulator) == -EPROBE_DEFER) + return -EPROBE_DEFER; + if (IS_ERR(imx6_pcie->pcie_bus_regulator)) + imx6_pcie->pcie_bus_regulator = NULL; + } else { imx6_pcie->pcie_bus_regulator = NULL; + } /* Grab GPR config register range */ if (imx6_pcie->variant == IMX7D) { |