From: Honghui Zhang <honghui.zh...@mediatek.com>

Need to save the PCIe's GIC IRQ for dispose_irq, this is a prepare
patch for add mediatek PCIe module support to tear down the IRQ, no
functional changed.

Signed-off-by: Honghui Zhang <honghui.zh...@mediatek.com>
---
 drivers/pci/controller/pcie-mediatek.c | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

diff --git a/drivers/pci/controller/pcie-mediatek.c 
b/drivers/pci/controller/pcie-mediatek.c
index bd1bde3..d35890c 100644
--- a/drivers/pci/controller/pcie-mediatek.c
+++ b/drivers/pci/controller/pcie-mediatek.c
@@ -162,6 +162,7 @@ struct mtk_pcie_soc {
  * @phy: pointer to PHY control block
  * @lane: lane count
  * @slot: port slot
+ * @irq: GIC irq
  * @irq_domain: legacy INTx IRQ domain
  * @inner_domain: inner IRQ domain
  * @msi_domain: MSI IRQ domain
@@ -182,6 +183,7 @@ struct mtk_pcie_port {
        struct phy *phy;
        u32 lane;
        u32 slot;
+       int irq;
        struct irq_domain *irq_domain;
        struct irq_domain *inner_domain;
        struct irq_domain *msi_domain;
@@ -624,7 +626,7 @@ static int mtk_pcie_setup_irq(struct mtk_pcie_port *port,
        struct mtk_pcie *pcie = port->pcie;
        struct device *dev = pcie->dev;
        struct platform_device *pdev = to_platform_device(dev);
-       int err, irq;
+       int err;
 
        err = mtk_pcie_init_irq_domain(port, node);
        if (err) {
@@ -632,8 +634,9 @@ static int mtk_pcie_setup_irq(struct mtk_pcie_port *port,
                return err;
        }
 
-       irq = platform_get_irq(pdev, port->slot);
-       irq_set_chained_handler_and_data(irq, mtk_pcie_intr_handler, port);
+       port->irq = platform_get_irq(pdev, port->slot);
+       irq_set_chained_handler_and_data(port->irq,
+                                        mtk_pcie_intr_handler, port);
 
        return 0;
 }
-- 
2.6.4

Reply via email to