summaryrefslogtreecommitdiff
path: root/arch
diff options
context:
space:
mode:
authorMursalin Akon <makon@nvidia.com>2011-12-16 11:52:29 -0800
committerVarun Wadekar <vwadekar@nvidia.com>2011-12-22 11:30:21 +0530
commitcf33748d9075f382bde54f691fa90ae6f876f7e5 (patch)
tree74e2a3eacf1d7efdd5ecbb7879c9454de5fdd6c4 /arch
parent343897259b1554f781d048ebd868a478b2de4c52 (diff)
ARM: tegra3: restate msi irq desc
Restate MSI irq desc in architecture specific functions. This way, PCI device drivers can later on hook those irqs. Plus, a minor fix. Change-Id: I3d9ba84c071309343b58c6200a9f53708e4043f4 Signed-off-by: Mursalin Akon <makon@nvidia.com> Reviewed-on: http://git-master/r/70631 Reviewed-by: Automatic_Commit_Validation_User Tested-by: Gerrit_Virtual_Submit Reviewed-by: Krishna Thota <kthota@nvidia.com> Reviewed-by: Allen Martin <amartin@nvidia.com>
Diffstat (limited to 'arch')
-rw-r--r--arch/arm/mach-tegra/pcie.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/arch/arm/mach-tegra/pcie.c b/arch/arm/mach-tegra/pcie.c
index 86c357369d98..a4df649d5d25 100644
--- a/arch/arm/mach-tegra/pcie.c
+++ b/arch/arm/mach-tegra/pcie.c
@@ -311,7 +311,7 @@ struct tegra_pcie_port {
};
struct tegra_pcie_info {
- struct tegra_pcie_port port[2];
+ struct tegra_pcie_port port[MAX_PCIE_SUPPORTED_PORTS];
int num_ports;
void __iomem *reg_clk_base;
@@ -1423,13 +1423,13 @@ int arch_setup_msi_irq(struct pci_dev *pdev, struct msi_desc *desc)
if (map_entry == NULL)
goto exit;
-
- dynamic_irq_init(map_entry->irq);
- irq_set_chip_and_handler_name(map_entry->irq,
+ irq_alloc_desc(map_entry->irq);
+ irq_set_chip_and_handler(map_entry->irq,
&tegra_irq_chip_msi_pcie,
- handle_simple_irq, "PCIe-MSI");
+ handle_simple_irq);
irq_set_msi_desc(map_entry->irq, desc);
+ set_irq_flags(map_entry->irq, IRQF_VALID);
msg.address_lo = afi_readl(AFI_MSI_AXI_BAR_ST_0);
/* 32 bit address only */
@@ -1453,7 +1453,7 @@ void arch_teardown_msi_irq(unsigned int irq)
int i;
for (i = 0; i < MSI_MAP_SIZE; i++) {
if ((msi_map[i].used) && (msi_map[i].irq == irq)) {
- dynamic_irq_cleanup(msi_map[i].irq);
+ irq_free_desc(msi_map[i].irq);
msi_map_release(msi_map + i);
break;
}