Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1366309

Re: [PATCH] i.MX6 PCIe: Fix imx6_pcie_deassert_core_reset() polarity

From Arnd Bergmann <arnd@arndb.de>
Newsgroups linux.kernel
Subject Re: [PATCH] i.MX6 PCIe: Fix imx6_pcie_deassert_core_reset() polarity
Date 2016-03-29 16:00 +0200
Message-ID <ri2lB-72M-31@gated-at.bofh.it> (permalink)
References <rgA82-2iN-7@gated-at.bofh.it> <rhZxo-4TD-17@gated-at.bofh.it> <ri22g-6TC-25@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


On Tuesday 29 March 2016 06:32:29 Tim Harvey wrote:
> >
> > There is no upstream driver for this chip, so I don't know where to look
> > to find out if the driver tries to enable MSI.
> >
> > Is what you are saying that if you enable MSI support in the kernel, it
> > breaks legacy IRQs?
> 
> Yes - any driver that does not support MSI will use legacy IRQ's and
> they never fire.
> 
> The Ventana GW53xx and GW54xx boards have a Marvell PCIe GigE
> supported by the sky2 driver as eth1 which does support MSI and I
> verified it gets an MSI interrupt and does work (along ath9k devices
> with legacy interrupts that fail to work).
> 
> root@ventana:~# cat /proc/interrupts | grep MSI
> 299:          0          0   PCI-MSI   0 Edge      PCIe PME, aerdrv
> 308:       8726          0   PCI-MSI   9 Edge      eth1
> 
> So it appears that MSI works for those drivers that use it, but does
> somehow cause legacy IRQ's to break.
> 
> I sent you a GW5400 dev kit over a while back to use for through
> bridge testing on IMX6 that you should be able to repeat this with
> assuming you have a PCIe card with a driver that doesn't support MSI
> (or that you can tweak its driver to not support MSI).
> 
> I think 31e98e0d24cd2537a63e06e235e050a06b175df7 "ARM:
> imx_v6_v7_defconfig: enable PCI_MSI" should be reverted as well until
> we figure this out.

That doesn't sound like a helpful solution, multi_v7_defconfig for
instance will still be broken because it enables PCI_MSI, and so
will be all major distros.

What happens if we patch the pci-imx6 driver to not make use of
its MSI support even when that is enabled in the kernel? Does that
get both devices in your GW5xxx to work with legacy interrupts or
is one or both of them still broken?

	Arnd

diff --git a/drivers/pci/host/pci-imx6.c b/drivers/pci/host/pci-imx6.c
index eb5a2755a164..d7607b2695c6 100644
--- a/drivers/pci/host/pci-imx6.c
+++ b/drivers/pci/host/pci-imx6.c
@@ -470,7 +470,7 @@ static void imx6_pcie_host_init(struct pcie_port *pp)
 
 	imx6_pcie_establish_link(pp);
 
-	if (IS_ENABLED(CONFIG_PCI_MSI))
+	if (0 && IS_ENABLED(CONFIG_PCI_MSI))
 		dw_pcie_msi_init(pp);
 }
 
@@ -490,7 +490,7 @@ static int __init imx6_add_pcie_port(struct pcie_port *pp,
 {
 	int ret;
 
-	if (IS_ENABLED(CONFIG_PCI_MSI)) {
+	if (0 && IS_ENABLED(CONFIG_PCI_MSI)) {
 		pp->msi_irq = platform_get_irq_byname(pdev, "msi");
 		if (pp->msi_irq <= 0) {
 			dev_err(&pdev->dev, "failed to get MSI irq\n");

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

[PATCH] i.MX6 PCIe: Fix imx6_pcie_deassert_core_reset() polarity khalasa@piap.pl (Krzysztof Hałasa) - 2016-03-25 14:40 +0100
  Re: [PATCH] i.MX6 PCIe: Fix imx6_pcie_deassert_core_reset() polarity Fabio Estevam <festevam@gmail.com> - 2016-03-27 16:50 +0200
    Re: [PATCH] i.MX6 PCIe: Fix imx6_pcie_deassert_core_reset() polarity Fabio Estevam <festevam@gmail.com> - 2016-03-28 02:30 +0200
      Re: [PATCH] i.MX6 PCIe: Fix imx6_pcie_deassert_core_reset() polarity Tim Harvey <tharvey@gateworks.com> - 2016-03-28 22:00 +0200
        Re: [PATCH] i.MX6 PCIe: Fix imx6_pcie_deassert_core_reset() polarity Fabio Estevam <festevam@gmail.com> - 2016-03-28 22:20 +0200
          Re: [PATCH] i.MX6 PCIe: Fix imx6_pcie_deassert_core_reset() polarity Tim Harvey <tharvey@gateworks.com> - 2016-03-28 22:50 +0200
            Re: [PATCH] i.MX6 PCIe: Fix imx6_pcie_deassert_core_reset() polarity Fabio Estevam <festevam@gmail.com> - 2016-03-28 23:40 +0200
              Re: [PATCH] i.MX6 PCIe: Fix imx6_pcie_deassert_core_reset() polarity Tim Harvey <tharvey@gateworks.com> - 2016-03-29 00:10 +0200
                Re: [PATCH] i.MX6 PCIe: Fix imx6_pcie_deassert_core_reset() polarity Fabio Estevam <festevam@gmail.com> - 2016-03-29 00:20 +0200
                Re: [PATCH] i.MX6 PCIe: Fix imx6_pcie_deassert_core_reset() polarity khalasa@piap.pl (Krzysztof Hałasa) - 2016-03-29 07:50 +0200
                Re: [PATCH] i.MX6 PCIe: Fix imx6_pcie_deassert_core_reset() polarity khalasa@piap.pl (Krzysztof Hałasa) - 2016-03-29 07:50 +0200
                Re: [PATCH] i.MX6 PCIe: Fix imx6_pcie_deassert_core_reset() polarity khalasa@piap.pl (Krzysztof Hałasa) - 2016-03-29 07:30 +0200
                Re: [PATCH] i.MX6 PCIe: Fix imx6_pcie_deassert_core_reset() polarity Lucas Stach <l.stach@pengutronix.de> - 2016-03-29 11:00 +0200
                Re: [PATCH] i.MX6 PCIe: Fix imx6_pcie_deassert_core_reset() polarity khalasa@piap.pl (Krzysztof Hałasa) - 2016-03-29 12:40 +0200
                Re: [PATCH] i.MX6 PCIe: Fix imx6_pcie_deassert_core_reset() polarity Lucas Stach <l.stach@pengutronix.de> - 2016-03-29 13:00 +0200
                Re: [PATCH] i.MX6 PCIe: Fix imx6_pcie_deassert_core_reset() polarity Arnd Bergmann <arnd@arndb.de> - 2016-03-29 15:20 +0200
                Re: [PATCH] i.MX6 PCIe: Fix imx6_pcie_deassert_core_reset() polarity Tim Harvey <tharvey@gateworks.com> - 2016-03-29 15:40 +0200
                Re: [PATCH] i.MX6 PCIe: Fix imx6_pcie_deassert_core_reset() polarity Arnd Bergmann <arnd@arndb.de> - 2016-03-29 16:00 +0200
                Re: [PATCH] i.MX6 PCIe: Fix imx6_pcie_deassert_core_reset() polarity Tim Harvey <tharvey@gateworks.com> - 2016-03-29 16:30 +0200
                Re: [PATCH] i.MX6 PCIe: Fix imx6_pcie_deassert_core_reset() polarity Arnd Bergmann <arnd@arndb.de> - 2016-03-29 17:00 +0200
                Re: [PATCH] i.MX6 PCIe: Fix imx6_pcie_deassert_core_reset() polarity Tim Harvey <tharvey@gateworks.com> - 2016-03-29 17:20 +0200
                Re: [PATCH] i.MX6 PCIe: Fix imx6_pcie_deassert_core_reset() polarity Arnd Bergmann <arnd@arndb.de> - 2016-03-29 17:30 +0200
                Re: [PATCH] i.MX6 PCIe: Fix imx6_pcie_deassert_core_reset() polarity Tim Harvey <tharvey@gateworks.com> - 2016-03-29 19:50 +0200
                Re: [PATCH] i.MX6 PCIe: Fix imx6_pcie_deassert_core_reset() polarity Arnd Bergmann <arnd@arndb.de> - 2016-03-29 21:50 +0200
                Re: [PATCH] i.MX6 PCIe: Fix imx6_pcie_deassert_core_reset() polarity Marc Zyngier <marc.zyngier@arm.com> - 2016-03-29 20:00 +0200
                Re: [PATCH] i.MX6 PCIe: Fix imx6_pcie_deassert_core_reset() polarity Roberto Fichera <kernel@tekno-soft.it> - 2016-03-29 18:30 +0200
                Re: [PATCH] i.MX6 PCIe: Fix imx6_pcie_deassert_core_reset() polarity Roberto Fichera <kernel@tekno-soft.it> - 2016-03-29 18:50 +0200
                Re: [PATCH] i.MX6 PCIe: Fix imx6_pcie_deassert_core_reset() polarity Tim Harvey <tharvey@gateworks.com> - 2016-03-29 19:40 +0200
                Re: [PATCH] i.MX6 PCIe: Fix imx6_pcie_deassert_core_reset() polarity Roberto Fichera <kernel@tekno-soft.it> - 2016-03-30 10:10 +0200
                Re: [PATCH] i.MX6 PCIe: Fix imx6_pcie_deassert_core_reset() polarity Arnd Bergmann <arnd@arndb.de> - 2016-03-30 12:20 +0200
                Re: [PATCH] i.MX6 PCIe: Fix imx6_pcie_deassert_core_reset() polarity Roberto Fichera <kernel@tekno-soft.it> - 2016-03-30 15:00 +0200
                Re: [PATCH] i.MX6 PCIe: Fix imx6_pcie_deassert_core_reset() polarity Tim Harvey <tharvey@gateworks.com> - 2016-03-30 15:40 +0200
                Re: [PATCH] i.MX6 PCIe: Fix imx6_pcie_deassert_core_reset() polarity Roberto Fichera <kernel@tekno-soft.it> - 2016-03-30 17:30 +0200
                Re: [PATCH] i.MX6 PCIe: Fix imx6_pcie_deassert_core_reset() polarity Tim Harvey <tharvey@gateworks.com> - 2016-03-29 18:50 +0200
                Re: [PATCH] i.MX6 PCIe: Fix imx6_pcie_deassert_core_reset() polarity khalasa@piap.pl (Krzysztof Hałasa) - 2016-03-30 10:20 +0200
                Re: [PATCH] i.MX6 PCIe: Fix imx6_pcie_deassert_core_reset() polarity Tim Harvey <tharvey@gateworks.com> - 2016-03-31 18:20 +0200
                Re: [PATCH] i.MX6 PCIe: Fix imx6_pcie_deassert_core_reset() polarity Fabio Estevam <festevam@gmail.com> - 2016-03-29 16:20 +0200
            Re: [PATCH] i.MX6 PCIe: Fix imx6_pcie_deassert_core_reset() polarity khalasa@piap.pl (Krzysztof Hałasa) - 2016-03-29 07:30 +0200
  Re: [PATCH] i.MX6 PCIe: Fix imx6_pcie_deassert_core_reset()  polarity Petr Štetiar <ynezz@true.cz> - 2016-03-30 14:20 +0200
    Re: [PATCH] i.MX6 PCIe: Fix imx6_pcie_deassert_core_reset() polarity Fabio Estevam <festevam@gmail.com> - 2016-03-30 14:50 +0200
    Re: [PATCH] i.MX6 PCIe: Fix imx6_pcie_deassert_core_reset() polarity Marcel Ziswiler <marcel.ziswiler@toradex.com> - 2016-03-30 18:20 +0200

csiph-web