[PATCH] PCI: rockchip: Correct the register value for clearing client interrupts
Bjorn Helgaas
helgaas at kernel.org
Mon Aug 29 16:57:42 PDT 2016
On Mon, Aug 29, 2016 at 02:14:11PM -0700, Brian Norris wrote:
> I'm pretty sure the bitwise 'or' was meant for the value parameter, not
> the register parameter.
>
> This resolves an interrupt storm, where if we receive any client IRQs
> (e.g., correctable errors), we fail to ever clear them properly, so they
> reoccur indefinitely.
>
> Fixes: 199410f6270e ("PCI: rockchip: Add Rockchip PCIe controller support")
> Signed-off-by: Brian Norris <briannorris at chromium.org>
> Cc: Shawn Lin <shawn.lin at rock-chips.com>
Shawn, please confirm. If this patch is correct, I'll fold it into
the initial commit that adds the driver.
> ---
> Patched against git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci.git pci/host-rockchip
>
> drivers/pci/host/pcie-rockchip.c | 7 ++++---
> 1 file changed, 4 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/pci/host/pcie-rockchip.c b/drivers/pci/host/pcie-rockchip.c
> index 8fb47ee9eaee..e77aec3cc869 100644
> --- a/drivers/pci/host/pcie-rockchip.c
> +++ b/drivers/pci/host/pcie-rockchip.c
> @@ -689,9 +689,10 @@ static irqreturn_t rockchip_pcie_client_irq_handler(int irq, void *arg)
> PCIE_CLIENT_INT_MSG | PCIE_CLIENT_INT_HOT_RST |
> PCIE_CLIENT_INT_DPA | PCIE_CLIENT_INT_FATAL_ERR |
> PCIE_CLIENT_INT_NFATAL_ERR |
> - PCIE_CLIENT_INT_CORR_ERR),
> - PCIE_CLIENT_INT_STATUS |
> - PCIE_CLIENT_INT_PHY);
> + PCIE_CLIENT_INT_CORR_ERR |
> + PCIE_CLIENT_INT_PHY),
> + PCIE_CLIENT_INT_STATUS);
> +
> return IRQ_HANDLED;
> }
>
> --
> 2.8.0.rc3.226.g39d4020
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-pci" in
> the body of a message to majordomo at vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
More information about the Linux-rockchip
mailing list