[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20221121083210.309161925@linutronix.de>
Date: Mon, 21 Nov 2022 15:36:18 +0100 (CET)
From: Thomas Gleixner <tglx@...utronix.de>
To: LKML <linux-kernel@...r.kernel.org>
Cc: x86@...nel.org, Joerg Roedel <joro@...tes.org>,
Will Deacon <will@...nel.org>, linux-pci@...r.kernel.org,
Bjorn Helgaas <bhelgaas@...gle.com>,
Lorenzo Pieralisi <lorenzo.pieralisi@....com>,
Marc Zyngier <maz@...nel.org>,
Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
Jason Gunthorpe <jgg@...lanox.com>,
Dave Jiang <dave.jiang@...el.com>,
Alex Williamson <alex.williamson@...hat.com>,
Kevin Tian <kevin.tian@...el.com>,
Dan Williams <dan.j.williams@...el.com>,
Logan Gunthorpe <logang@...tatee.com>,
Ashok Raj <ashok.raj@...el.com>, Jon Mason <jdmason@...zu.us>,
Allen Hubbe <allenbh@...il.com>
Subject: [patch V2 00/21] genirq, PCI/MSI: Support for per device MSI and
PCI/IMS - Part 2 API rework
This is V2 of the second part of effort to provide support for per device
MSI interrupt domains.
Version 1 of this second part can be found here:
https://lore.kernel.org/all/20221111132706.104870257@linutronix.de
The first part is available here:
https://lore.kernel.org/all/20221111120501.026511281@linutronix.de
and has been merged into:
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git irq/core
This part on top of the tip irq/core branch is also available here:
git://git.kernel.org/pub/scm/linux/kernel/git/tglx/devel.git devmsi-v2-part2
This part is the main preparation step for per device MSI domains:
1) Introduce irqdomain pointer storage space in device::msi::data
and related helpers.
2) Convert interfaces to handle multiple per device MSI domains
based on a domain ID
3) Provide new interfaces for allocation/free which are domain ID
based and provide range allocation/free which is a prerequisite
for post MSI-X enable alloc/free.
4) Switch all existing call sites of msi allocation/free interfaces
over to the new interfaces
5) Remove the old interfaces
Changes vs. V1:
- Split the kernel doc changes from the rename (Jason)
- Rename msi_ctrl_valid() to msi_ctrl_range_valid() (Kevin)
- Fix the off by one vs. MSI_MAX_INDEX (Kevin)
- Update changelogs and comments (Bjorn, Jason, Kevin)
- Fix the kernel robot fallout from randconfig builds
- Picked up Reviewed/Acked-by tags where appropriate
Thanks,
tglx
---
arch/x86/kernel/apic/msi.c | 5
drivers/base/platform-msi.c | 4
drivers/bus/fsl-mc/fsl-mc-msi.c | 25 -
drivers/irqchip/irq-gic.c | 4
drivers/pci/msi/irqdomain.c | 4
drivers/pci/msi/msi.c | 4
drivers/soc/ti/ti_sci_inta_msi.c | 12
include/linux/irqdomain.h | 112 ++++----
include/linux/msi.h | 125 +++++++--
include/linux/msi_api.h | 35 ++
kernel/irq/chip.c | 8
kernel/irq/msi.c | 541 +++++++++++++++++++++++++++++----------
12 files changed, 631 insertions(+), 248 deletions(-)
Powered by blists - more mailing lists