diff options
author | Bjorn Helgaas <bhelgaas@google.com> | 2021-07-06 10:56:27 -0500 |
---|---|---|
committer | Bjorn Helgaas <bhelgaas@google.com> | 2021-07-06 10:56:27 -0500 |
commit | d2918cb784977bb550b936cfcbfe16bcba014628 (patch) | |
tree | e97519339aecb4435d9c7221cd6c98509b0faa24 /drivers/pci | |
parent | 364a716bd73e9846d3118a43f600f8f517658b38 (diff) | |
parent | 3cf5f7ab230e2b886e493c7a8449ed50e29d2b98 (diff) | |
download | linux-d2918cb784977bb550b936cfcbfe16bcba014628.tar.gz linux-d2918cb784977bb550b936cfcbfe16bcba014628.tar.bz2 linux-d2918cb784977bb550b936cfcbfe16bcba014628.zip |
Merge branch 'pci/host/rockchip'
- Register IRQ handlers after device and data are ready (Javier Martinez
Canillas)
* pci/host/rockchip:
PCI: rockchip: Register IRQ handlers after device and data are ready
Diffstat (limited to 'drivers/pci')
-rw-r--r-- | drivers/pci/controller/pcie-rockchip-host.c | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/drivers/pci/controller/pcie-rockchip-host.c b/drivers/pci/controller/pcie-rockchip-host.c index f1d08a1b1591..78d04ac29cd5 100644 --- a/drivers/pci/controller/pcie-rockchip-host.c +++ b/drivers/pci/controller/pcie-rockchip-host.c @@ -592,10 +592,6 @@ static int rockchip_pcie_parse_host_dt(struct rockchip_pcie *rockchip) if (err) return err; - err = rockchip_pcie_setup_irq(rockchip); - if (err) - return err; - rockchip->vpcie12v = devm_regulator_get_optional(dev, "vpcie12v"); if (IS_ERR(rockchip->vpcie12v)) { if (PTR_ERR(rockchip->vpcie12v) != -ENODEV) @@ -973,8 +969,6 @@ static int rockchip_pcie_probe(struct platform_device *pdev) if (err) goto err_vpcie; - rockchip_pcie_enable_interrupts(rockchip); - err = rockchip_pcie_init_irq_domain(rockchip); if (err < 0) goto err_deinit_port; @@ -992,6 +986,12 @@ static int rockchip_pcie_probe(struct platform_device *pdev) bridge->sysdata = rockchip; bridge->ops = &rockchip_pcie_ops; + err = rockchip_pcie_setup_irq(rockchip); + if (err) + goto err_remove_irq_domain; + + rockchip_pcie_enable_interrupts(rockchip); + err = pci_host_probe(bridge); if (err < 0) goto err_remove_irq_domain; |