Re: [PATCH v2 06/10] ARM: tegra: pcie: Add MSI support |
|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
- Subject: Re: [PATCH v2 06/10] ARM: tegra: pcie: Add MSI support
- From: Stephen Warren <swarren@xxxxxxxxxxxxx>
- Date: Mon, 11 Jun 2012 15:19:53 -0600
- Cc: linux-tegra@xxxxxxxxxxxxxxx, Jesse Barnes <jbarnes@xxxxxxxxxxxxxxxx>, linux-pci@xxxxxxxxxxxxxxx, Grant Likely <grant.likely@xxxxxxxxxxxx>, Rob Herring <rob.herring@xxxxxxxxxxx>, devicetree-discuss@xxxxxxxxxxxxxxxx, Russell King <linux@xxxxxxxxxxxxxxxx>, linux-arm-kernel@xxxxxxxxxxxxxxxxxxx, Colin Cross <ccross@xxxxxxxxxxx>, Olof Johansson <olof@xxxxxxxxx>
- In-reply-to: <1339427118-32263-7-git-send-email-thierry.reding@avionic-design.de>
- User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:12.0) Gecko/20120430 Thunderbird/12.0.1
On 06/11/2012 09:05 AM, Thierry Reding wrote:
> This commit adds support for message signaled interrupts to the Tegra
> PCIe controller. Based on code by Krishna Kishore <kthota@xxxxxxxxxx>.
> diff --git a/arch/arm/mach-tegra/pcie.c b/arch/arm/mach-tegra/pcie.c
> +static irqreturn_t tegra_pcie_msi_irq(int irq, void *data)
...
> + irq = irq_find_mapping(pcie->msi->domain, index);
> + if (irq) {
> + if (test_bit(index, pcie->msi->used))
> + generic_handle_irq(irq);
This invokes the handler first ...
...
> + /* clear the interrupt */
> + afi_writel(pcie, 1 << offset, AFI_MSI_VEC0 + i * 4);
> + /* see if there's any more pending in this vector */
> + reg = afi_readl(pcie, AFI_MSI_VEC0 + i * 4);
... then clears the interrupt status in the PCIe controller. Won't that
lose interrupts if one is raised between when the handler clears the
root-cause, and when this code clears the received interrupt status?
> +static int tegra_pcie_disable_msi(struct platform_device *pdev)
Should this free pcie->msi->pages?
Why allocate pcie->msi separately; why not include the fields directly
into struct tegra_pcie_info *pcie?
--
To unsubscribe from this list: send the line "unsubscribe linux-tegra" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
[ARM Kernel]
[Linux USB Devel]
[Video for Linux]
[Linux Audio Users]
[Photo]
[Yosemite News]
[Yosemite Photos]
[Free Online Dating]
[Linux Kernel]
[Linux SCSI]
[XFree86]