From: "Richter, Robert" <Robert.Richter@cavium.com>
To: Marc Zyngier <marc.zyngier@arm.com>,
Thomas Gleixner <tglx@linutronix.de>,
Jason Cooper <jason@lakedaemon.net>
Cc: Lorenzo Pieralisi <Lorenzo.Pieralisi@arm.com>,
Stuart Yoder <stuyoder@gmail.com>,
Julien Thierry <julien.thierry@arm.com>,
Will Deacon <will.deacon@arm.com>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
Matthias Brugger <matthias.bgg@gmail.com>,
"linux-arm-kernel@lists.infradead.org"
<linux-arm-kernel@lists.infradead.org>,
Laurentiu Tudor <laurentiu.tudor@nxp.com>
Subject: Re: [PATCH v2 00/10] irqdomain, gic-v3-its: Implement late irq domain initialization
Date: Wed, 5 Dec 2018 12:50:14 +0000 [thread overview]
Message-ID: <20181205125006.GV4262@rric.localdomain> (raw)
In-Reply-To: <20181128144240.28727-1-rrichter@cavium.com>
Marc,
do you have any comments on this series? Please take a look at it.
There is also this one on top:
https://patchwork.kernel.org/cover/10685025/
Both series fix ITS table allocation for 4k page size and make the
upstream kernel working without the need of additional patches.
Thanks,
-Robert
On 28.11.18 15:43:02, Richter, Robert wrote:
> This patch series is a rework of the gic-v3-its initialization. It is
> in preparation of a further series that uses CMA memory allocation for
> ITS tables. For this the CMA framework must be available and thus ITS
> needs to be initialized after the arch_initcalls. This requires two
> major reworks.
>
> First we must remove all irq domain init order dependencies (patches
> #1-#5), second the ITS initialization must be split into an early
> probe and a later init part (patches #6-#10).
>
> Patch #1 introduces a new interface to request an irq domain, see the
> patch description for details. In patches #2-#5 all ITS related irq
> domains are converted to use the new interface. There are no order
> dependencies for parent and client irq domain initialization anymore
> which allows us to initialize all ITS irq domains in the same initcall
> (moving to the later subsys_initcall). Note that I do not have fsl
> hardware available, the code should work, but is only carefully
> reviewed and compile tested, please test on that hardware.
>
> The remaining patches #6-#10 are an incremental rework of the ITS
> initialization, basically splitting probe and init (patch #7) and
> separating it from gic-v3 code (patch #8). Patches #9 and #10 change
> initcall levels for various drivers.
>
> Patches have been tested with Cavium ThunderX and ThunderX2. I have an
> implementation of CMA ITS table allocation on top of this series
> available, I will send out patches for this in a couple of days.
>
> v2:
> * fix check for domain match in irq_domain_handle_requests()
> * add comment that describes this check in irq_domain_handle_
> requests()
>
> Robert Richter (10):
> irqdomain: Add interface to request an irq domain
> irqchip/gic-v3-its-platform-msi: Remove domain init order dependencies
> irqchip/irq-gic-v3-its-pci-msi: Remove domain init order dependencies
> irqchip/irq-gic-v3-its-fsl-mc-msi: Remove domain init order
> dependencies
> fsl-mc/dprc-driver: Remove domain init order dependencies
> irqchip/gic-v3-its: Initialize its nodes in probe order
> irqchip/gic-v3-its: Split probing from its node initialization
> irqchip/gic-v3-its: Decouple its initialization from gic
> irqchip/gic-v3-its: Initialize its nodes later
> irqchip/gic-v3-its: Initialize MSIs with subsys_initcalls
>
> drivers/bus/fsl-mc/dprc-driver.c | 41 +++++++
> drivers/bus/fsl-mc/fsl-mc-msi.c | 6 +-
> drivers/irqchip/irq-gic-v3-its-fsl-mc-msi.c | 49 +++++---
> drivers/irqchip/irq-gic-v3-its-pci-msi.c | 68 ++++++-----
> drivers/irqchip/irq-gic-v3-its-platform-msi.c | 56 +++++++--
> drivers/irqchip/irq-gic-v3-its.c | 160 ++++++++++++++++---------
> drivers/irqchip/irq-gic-v3.c | 12 +-
> include/linux/cpuhotplug.h | 1 +
> include/linux/irqchip/arm-gic-v3.h | 5 +-
> include/linux/irqdomain.h | 15 +++
> kernel/irq/irqdomain.c | 163 ++++++++++++++++++++++++++
> 11 files changed, 446 insertions(+), 130 deletions(-)
>
> --
> 2.11.0
>
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
next prev parent reply other threads:[~2018-12-05 12:50 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-11-28 14:43 [PATCH v2 00/10] irqdomain, gic-v3-its: Implement late irq domain initialization Robert Richter
2018-11-28 14:43 ` [PATCH v2 01/10] irqdomain: Add interface to request an irq domain Robert Richter
2018-12-13 14:22 ` Marc Zyngier
2018-11-28 14:43 ` [PATCH v2 02/10] irqchip/gic-v3-its-platform-msi: Remove domain init order dependencies Robert Richter
2018-11-28 14:43 ` [PATCH v2 03/10] irqchip/irq-gic-v3-its-pci-msi: " Robert Richter
2018-11-28 14:43 ` [PATCH v2 04/10] irqchip/irq-gic-v3-its-fsl-mc-msi: " Robert Richter
2018-11-28 14:43 ` [PATCH v2 05/10] fsl-mc/dprc-driver: " Robert Richter
2018-11-28 14:43 ` [PATCH v2 06/10] irqchip/gic-v3-its: Initialize its nodes in probe order Robert Richter
2018-11-28 14:43 ` [PATCH v2 07/10] irqchip/gic-v3-its: Split probing from its node initialization Robert Richter
2018-11-28 14:43 ` [PATCH v2 08/10] irqchip/gic-v3-its: Decouple its initialization from gic Robert Richter
2018-11-28 14:43 ` [PATCH v2 09/10] irqchip/gic-v3-its: Initialize its nodes later Robert Richter
2018-11-28 14:43 ` [PATCH v2 10/10] irqchip/gic-v3-its: Initialize MSIs with subsys_initcalls Robert Richter
2018-12-05 12:50 ` Richter, Robert [this message]
2018-12-05 13:27 ` [PATCH v2 00/10] irqdomain, gic-v3-its: Implement late irq domain initialization Marc Zyngier
2019-02-27 16:24 ` Matthias Brugger
2019-02-27 16:56 ` Marc Zyngier
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=20181205125006.GV4262@rric.localdomain \
--to=robert.richter@cavium.com \
--cc=Lorenzo.Pieralisi@arm.com \
--cc=jason@lakedaemon.net \
--cc=julien.thierry@arm.com \
--cc=laurentiu.tudor@nxp.com \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=marc.zyngier@arm.com \
--cc=matthias.bgg@gmail.com \
--cc=stuyoder@gmail.com \
--cc=tglx@linutronix.de \
--cc=will.deacon@arm.com \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox