From: Marc Zyngier <marc.zyngier@arm.com>
To: Arnd Bergmann <arnd@arndb.de>, Tim Harvey <tharvey@gateworks.com>
Cc: "linux-pci@vger.kernel.org" <linux-pci@vger.kernel.org>,
"Richard Zhu" <Richard.Zhu@freescale.com>,
linux-kernel <linux-kernel@vger.kernel.org>,
"Krzysztof Hałasa" <khalasa@piap.pl>,
"Bjorn Helgaas" <bhelgaas@google.com>,
"Petr Štetiar" <ynezz@true.cz>,
"Fabio Estevam" <festevam@gmail.com>,
"linux-arm-kernel@lists.infradead.org"
<linux-arm-kernel@lists.infradead.org>,
"Lucas Stach" <l.stach@pengutronix.de>
Subject: Re: [PATCH] i.MX6 PCIe: Fix imx6_pcie_deassert_core_reset() polarity
Date: Tue, 29 Mar 2016 18:56:41 +0100 [thread overview]
Message-ID: <56FAC1D9.40404@arm.com> (raw)
In-Reply-To: <3827347.i8fIQs6jUv@wuerfel>
On 29/03/16 16:24, Arnd Bergmann wrote:
> On Tuesday 29 March 2016 08:10:08 Tim Harvey wrote:
>> Arnd,
>>
>> Right, on the IMX the MSI interrupt is GIC-120 which is also the
>> legacy INTD and I do see that if I happen to put a radio in a slot
>> where due to swizzling its pin1 becomes INTD (GIC-120) the interrupt
>> does fire and the device works. Any other slot using GIC-123 (INTA),
>> GIC-122 (INTB), or GIC-121 (INTC) never fires so its very possible
>> that something in the designware core is masking out the legacy irqs.
>
> Interesting. I was actually expecting the opposite here, having the
> IRQs only work if they are not IntD.
>
>
>> I typically advise our users to 'not' enable MSI because
>> architecturally you can spread 4 distinct legacy irq's across CPU's
>> better than a single shared irq.
>
> That is a very good point, I never understood why we want to enable
> MSI support on any PCI host bridge that just forwards all MSIs
> to a single IRQ line. Originally MSI was meant as a performance
> feature, but there is nothing in this setup that makes things go
> faster, and several things that make it go slower.
Feature-ticking exercise.
"We support MSI", never mind if that negating the benefits of the
mechanism and ending up with disastrous impacts on interrupt affinity,
and a set of open questions regarding the effect of the MSI as a DMA fence.
/me stops ranting for the day...
M.
--
Jazz is not dead. It just smells funny...
WARNING: multiple messages have this Message-ID (diff)
From: marc.zyngier@arm.com (Marc Zyngier)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH] i.MX6 PCIe: Fix imx6_pcie_deassert_core_reset() polarity
Date: Tue, 29 Mar 2016 18:56:41 +0100 [thread overview]
Message-ID: <56FAC1D9.40404@arm.com> (raw)
In-Reply-To: <3827347.i8fIQs6jUv@wuerfel>
On 29/03/16 16:24, Arnd Bergmann wrote:
> On Tuesday 29 March 2016 08:10:08 Tim Harvey wrote:
>> Arnd,
>>
>> Right, on the IMX the MSI interrupt is GIC-120 which is also the
>> legacy INTD and I do see that if I happen to put a radio in a slot
>> where due to swizzling its pin1 becomes INTD (GIC-120) the interrupt
>> does fire and the device works. Any other slot using GIC-123 (INTA),
>> GIC-122 (INTB), or GIC-121 (INTC) never fires so its very possible
>> that something in the designware core is masking out the legacy irqs.
>
> Interesting. I was actually expecting the opposite here, having the
> IRQs only work if they are not IntD.
>
>
>> I typically advise our users to 'not' enable MSI because
>> architecturally you can spread 4 distinct legacy irq's across CPU's
>> better than a single shared irq.
>
> That is a very good point, I never understood why we want to enable
> MSI support on any PCI host bridge that just forwards all MSIs
> to a single IRQ line. Originally MSI was meant as a performance
> feature, but there is nothing in this setup that makes things go
> faster, and several things that make it go slower.
Feature-ticking exercise.
"We support MSI", never mind if that negating the benefits of the
mechanism and ending up with disastrous impacts on interrupt affinity,
and a set of open questions regarding the effect of the MSI as a DMA fence.
/me stops ranting for the day...
M.
--
Jazz is not dead. It just smells funny...
next prev parent reply other threads:[~2016-03-29 17:56 UTC|newest]
Thread overview: 85+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-03-25 13:32 [PATCH] i.MX6 PCIe: Fix imx6_pcie_deassert_core_reset() polarity Krzysztof Hałasa
2016-03-25 13:32 ` Krzysztof Hałasa
2016-03-27 14:44 ` Fabio Estevam
2016-03-27 14:44 ` Fabio Estevam
2016-03-28 0:26 ` Fabio Estevam
2016-03-28 0:26 ` Fabio Estevam
2016-03-28 19:59 ` Tim Harvey
2016-03-28 19:59 ` Tim Harvey
2016-03-28 20:13 ` Fabio Estevam
2016-03-28 20:13 ` Fabio Estevam
2016-03-28 20:42 ` Tim Harvey
2016-03-28 20:42 ` Tim Harvey
2016-03-28 21:30 ` Fabio Estevam
2016-03-28 21:30 ` Fabio Estevam
2016-03-28 22:06 ` Tim Harvey
2016-03-28 22:06 ` Tim Harvey
2016-03-28 22:13 ` Fabio Estevam
2016-03-28 22:13 ` Fabio Estevam
2016-03-29 5:40 ` Krzysztof Hałasa
2016-03-29 5:40 ` Krzysztof Hałasa
2016-03-29 5:43 ` Krzysztof Hałasa
2016-03-29 5:43 ` Krzysztof Hałasa
2016-03-29 5:29 ` Krzysztof Hałasa
2016-03-29 5:29 ` Krzysztof Hałasa
2016-03-29 8:55 ` Lucas Stach
2016-03-29 8:55 ` Lucas Stach
2016-03-29 10:39 ` Krzysztof Hałasa
2016-03-29 10:39 ` Krzysztof Hałasa
2016-03-29 10:55 ` Lucas Stach
2016-03-29 10:55 ` Lucas Stach
2016-03-29 13:12 ` Arnd Bergmann
2016-03-29 13:12 ` Arnd Bergmann
2016-03-29 13:32 ` Tim Harvey
2016-03-29 13:32 ` Tim Harvey
2016-03-29 13:52 ` Arnd Bergmann
2016-03-29 13:52 ` Arnd Bergmann
2016-03-29 14:29 ` Tim Harvey
2016-03-29 14:29 ` Tim Harvey
2016-03-29 14:50 ` Arnd Bergmann
2016-03-29 14:50 ` Arnd Bergmann
2016-03-29 15:10 ` Tim Harvey
2016-03-29 15:10 ` Tim Harvey
2016-03-29 15:24 ` Arnd Bergmann
2016-03-29 15:24 ` Arnd Bergmann
2016-03-29 17:38 ` Tim Harvey
2016-03-29 17:38 ` Tim Harvey
2016-03-29 19:39 ` Arnd Bergmann
2016-03-29 19:39 ` Arnd Bergmann
2016-03-29 17:56 ` Marc Zyngier [this message]
2016-03-29 17:56 ` Marc Zyngier
2016-03-29 16:13 ` Roberto Fichera
2016-03-29 16:13 ` Roberto Fichera
2016-03-29 16:40 ` Tim Harvey
2016-03-29 16:40 ` Tim Harvey
2016-03-29 16:44 ` Roberto Fichera
2016-03-29 16:44 ` Roberto Fichera
2016-03-29 17:31 ` Tim Harvey
2016-03-29 17:31 ` Tim Harvey
2016-03-30 8:00 ` Roberto Fichera
2016-03-30 8:00 ` Roberto Fichera
2016-03-30 10:10 ` Arnd Bergmann
2016-03-30 10:10 ` Arnd Bergmann
2016-03-30 12:50 ` Roberto Fichera
2016-03-30 12:50 ` Roberto Fichera
2016-03-30 13:38 ` Tim Harvey
2016-03-30 13:38 ` Tim Harvey
2016-03-30 15:20 ` Roberto Fichera
2016-03-30 15:20 ` Roberto Fichera
2016-03-30 8:10 ` Krzysztof Hałasa
2016-03-30 8:10 ` Krzysztof Hałasa
2016-03-31 16:19 ` Tim Harvey
2016-03-31 16:19 ` Tim Harvey
2016-04-04 10:37 ` Krzysztof Hałasa
2016-04-04 10:37 ` Krzysztof Hałasa
2016-03-29 14:14 ` Fabio Estevam
2016-03-29 14:14 ` Fabio Estevam
2016-03-29 5:21 ` Krzysztof Hałasa
2016-03-29 5:21 ` Krzysztof Hałasa
2016-03-30 12:06 ` Petr Štetiar
2016-03-30 12:06 ` Petr Štetiar
2016-03-30 12:45 ` Fabio Estevam
2016-03-30 12:45 ` Fabio Estevam
2016-03-30 14:38 ` Marcel Ziswiler
2016-03-30 14:38 ` Marcel Ziswiler
2016-03-30 14:38 ` Marcel Ziswiler
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=56FAC1D9.40404@arm.com \
--to=marc.zyngier@arm.com \
--cc=Richard.Zhu@freescale.com \
--cc=arnd@arndb.de \
--cc=bhelgaas@google.com \
--cc=festevam@gmail.com \
--cc=khalasa@piap.pl \
--cc=l.stach@pengutronix.de \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pci@vger.kernel.org \
--cc=tharvey@gateworks.com \
--cc=ynezz@true.cz \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.