All of lore.kernel.org
 help / color / mirror / Atom feed
From: Thomas Gleixner <tglx@linutronix.de>
To: LKML <linux-kernel@vger.kernel.org>
Cc: x86@kernel.org, Joerg Roedel <joro@8bytes.org>,
	Will Deacon <will@kernel.org>,
	linux-pci@vger.kernel.org, Bjorn Helgaas <bhelgaas@google.com>,
	Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>,
	Marc Zyngier <maz@kernel.org>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	Jason Gunthorpe <jgg@mellanox.com>,
	Dave Jiang <dave.jiang@intel.com>,
	Alex Williamson <alex.williamson@redhat.com>,
	Kevin Tian <kevin.tian@intel.com>,
	Dan Williams <dan.j.williams@intel.com>,
	Logan Gunthorpe <logang@deltatee.com>,
	Ashok Raj <ashok.raj@intel.com>, Jon Mason <jdmason@kudzu.us>,
	Allen Hubbe <allenbh@gmail.com>,
	"Ahmed S. Darwish" <darwi@linutronix.de>,
	Reinette Chatre <reinette.chatre@intel.com>
Subject: [patch 03/20] genirq/msi: Create msi_api.h
Date: Fri, 11 Nov 2022 14:56:42 +0100 (CET)	[thread overview]
Message-ID: <20221111132706.220687198@linutronix.de> (raw)
In-Reply-To: 20221111131813.914374272@linutronix.de

Create a API header for MSI specific functions which are relevant to device
drivers.

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
---
 include/linux/msi.h     |    6 ++++--
 include/linux/msi_api.h |   15 +++++++++++++++
 2 files changed, 19 insertions(+), 2 deletions(-)

--- a/include/linux/msi.h
+++ b/include/linux/msi.h
@@ -13,11 +13,14 @@
  *
  * Regular device drivers have no business with any of these functions and
  * especially storing MSI descriptor pointers in random code is considered
- * abuse. The only function which is relevant for drivers is msi_get_virq().
+ * abuse.
+ *
+ * Device driver relevant functions are available in <linux/msi_api.h>
  */
 
 #include <linux/irqdomain_defs.h>
 #include <linux/cpumask.h>
+#include <linux/msi_api.h>
 #include <linux/xarray.h>
 #include <linux/mutex.h>
 #include <linux/list.h>
@@ -184,7 +187,6 @@ struct msi_device_data {
 
 int msi_setup_device_data(struct device *dev);
 
-unsigned int msi_get_virq(struct device *dev, unsigned int index);
 void msi_lock_descs(struct device *dev);
 void msi_unlock_descs(struct device *dev);
 
--- /dev/null
+++ b/include/linux/msi_api.h
@@ -0,0 +1,15 @@
+/* SPDX-License-Identifier: GPL-2.0 */
+#ifndef LINUX_MSI_API_H
+#define LINUX_MSI_API_H
+
+/*
+ * APIs which are relevant for device driver code for allocating and
+ * freeing MSI interrupts and querying the associations between
+ * hardware/software MSI indices and the Linux interrupt number.
+ */
+
+struct device;
+
+unsigned int msi_get_virq(struct device *dev, unsigned int index);
+
+#endif


  parent reply	other threads:[~2022-11-11 14:01 UTC|newest]

Thread overview: 50+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <20221111131813.914374272@linutronix.de>
2022-11-11 13:56 ` [patch 01/20] genirq/msi: Move IRQ_DOMAIN_MSI_NOMASK_QUIRK to MSI flags Thomas Gleixner
2022-11-16 18:14   ` Jason Gunthorpe
2022-11-11 13:56 ` [patch 02/20] genirq/irqdomain: Rename irq_domain::dev to irq_domain::pm_dev Thomas Gleixner
2022-11-16 18:22   ` Jason Gunthorpe
2022-11-17 15:56     ` Thomas Gleixner
2022-11-11 13:56 ` Thomas Gleixner [this message]
2022-11-16 18:23   ` [patch 03/20] genirq/msi: Create msi_api.h Jason Gunthorpe
2022-11-11 13:56 ` [patch 04/20] genirq/irqdomain: Provide IRQ_DOMAIN_FLAG_MSI_PARENT Thomas Gleixner
2022-11-18  7:44   ` Tian, Kevin
2022-11-11 13:56 ` [patch 05/20] genirq/irqdomain: Provide IRQ_DOMAIN_FLAG_MSI_DEVICE Thomas Gleixner
2022-11-11 13:56 ` [patch 06/20] genirq/msi: Check for invalid MSI parent domain usage Thomas Gleixner
2022-11-18  7:50   ` Tian, Kevin
2022-11-18 12:15     ` Thomas Gleixner
2022-11-11 13:56 ` [patch 07/20] genirq/msi: Add pointers for per device irq domains Thomas Gleixner
2022-11-11 13:56 ` [patch 08/20] genirq/msi: Make MSI descriptor iterators device domain aware Thomas Gleixner
2022-11-16 18:36   ` Jason Gunthorpe
2022-11-16 22:32     ` Thomas Gleixner
2022-11-17  0:37       ` Jason Gunthorpe
2022-11-17  8:45         ` Thomas Gleixner
2022-11-18  7:57   ` Tian, Kevin
2022-11-18 12:17     ` Thomas Gleixner
2022-11-11 13:56 ` [patch 09/20] genirq/msi: Make msi_get_virq() " Thomas Gleixner
2022-11-13 10:37   ` [patch V1A " Thomas Gleixner
2022-11-11 13:56 ` [patch 10/20] genirq/msi: Rename msi_add_msi_desc() to msi_insert_msi_desc() Thomas Gleixner
2022-11-16 18:36   ` Jason Gunthorpe
2022-11-11 13:56 ` [patch 11/20] genirq/msi: Make descriptor allocation device domain aware Thomas Gleixner
2022-11-18  8:10   ` Tian, Kevin
2022-11-18 12:19     ` Thomas Gleixner
2022-11-11 13:56 ` [patch 12/20] genirq/msi: Make descriptor freeing " Thomas Gleixner
2022-11-18  8:17   ` Tian, Kevin
2022-11-18 12:22     ` Thomas Gleixner
2022-11-18 13:10       ` Thomas Gleixner
2022-11-11 13:56 ` [patch 13/20] genirq/msi: Make msi_add_simple_msi_descs() device " Thomas Gleixner
2022-11-18  8:20   ` Tian, Kevin
2022-11-11 13:56 ` [patch 14/20] genirq/msi: Provide new domain id based interfaces for freeing interrupts Thomas Gleixner
2022-11-18  8:30   ` Tian, Kevin
2022-11-11 13:57 ` [patch 15/20] genirq/msi: Provide new domain id allocation functions Thomas Gleixner
2022-11-18  8:43   ` Tian, Kevin
2022-11-18 12:26     ` Thomas Gleixner
2022-11-21  3:26       ` Tian, Kevin
2022-11-11 13:57 ` [patch 16/20] PCI/MSI: Use msi_domain_alloc/free_irqs_all_locked() Thomas Gleixner
2022-11-14 17:13   ` Bjorn Helgaas
2022-11-11 13:57 ` [patch 17/20] platform-msi: Switch to the domain id aware MSI interfaces Thomas Gleixner
2022-11-18  8:53   ` Tian, Kevin
2022-11-18 12:26     ` Thomas Gleixner
2022-11-21  3:42       ` Tian, Kevin
2022-11-21 10:34         ` Thomas Gleixner
2022-11-11 13:57 ` [patch 18/20] bus: fsl-mc-msi: Switch to domain id aware interfaces Thomas Gleixner
2022-11-11 13:57 ` [patch 19/20] oc: ti: ti_sci_inta_msi: Switch to domain id aware MSI functions Thomas Gleixner
2022-11-11 13:57 ` [patch 20/20] genirq/msi: Remove unused alloc/free interfaces Thomas Gleixner

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=20221111132706.220687198@linutronix.de \
    --to=tglx@linutronix.de \
    --cc=alex.williamson@redhat.com \
    --cc=allenbh@gmail.com \
    --cc=ashok.raj@intel.com \
    --cc=bhelgaas@google.com \
    --cc=dan.j.williams@intel.com \
    --cc=darwi@linutronix.de \
    --cc=dave.jiang@intel.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=jdmason@kudzu.us \
    --cc=jgg@mellanox.com \
    --cc=joro@8bytes.org \
    --cc=kevin.tian@intel.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pci@vger.kernel.org \
    --cc=logang@deltatee.com \
    --cc=lorenzo.pieralisi@arm.com \
    --cc=maz@kernel.org \
    --cc=reinette.chatre@intel.com \
    --cc=will@kernel.org \
    --cc=x86@kernel.org \
    /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.