Commit 5ec58799 authored by Bjorn Helgaas's avatar Bjorn Helgaas

Merge branch 'pci/controller/dra7xx'

- Request IRQF_ONESHOT for 'dra7xx-pcie-main' IRQ since the primary handler
  is NULL (Siddharth Vadapalli)

- Handle IRQ request errors during root port and endpoint probe (Siddharth
  Vadapalli)

* pci/controller/dra7xx:
  PCI: dra7xx: Fix error handling when IRQ request fails in probe
  PCI: dra7xx: Fix threaded IRQ request for "dra7xx-pcie-main" IRQ
parents da71957c 4d60f6d4
...@@ -850,14 +850,21 @@ static int dra7xx_pcie_probe(struct platform_device *pdev) ...@@ -850,14 +850,21 @@ static int dra7xx_pcie_probe(struct platform_device *pdev)
dra7xx->mode = mode; dra7xx->mode = mode;
ret = devm_request_threaded_irq(dev, irq, NULL, dra7xx_pcie_irq_handler, ret = devm_request_threaded_irq(dev, irq, NULL, dra7xx_pcie_irq_handler,
IRQF_SHARED, "dra7xx-pcie-main", dra7xx); IRQF_SHARED | IRQF_ONESHOT,
"dra7xx-pcie-main", dra7xx);
if (ret) { if (ret) {
dev_err(dev, "failed to request irq\n"); dev_err(dev, "failed to request irq\n");
goto err_gpio; goto err_deinit;
} }
return 0; return 0;
err_deinit:
if (dra7xx->mode == DW_PCIE_RC_TYPE)
dw_pcie_host_deinit(&dra7xx->pci->pp);
else
dw_pcie_ep_deinit(&dra7xx->pci->ep);
err_gpio: err_gpio:
err_get_sync: err_get_sync:
pm_runtime_put(dev); pm_runtime_put(dev);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment