aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFeng Wu <[email protected]>2015-06-09 13:20:28 +0800
committerThomas Gleixner <[email protected]>2015-06-12 11:33:51 +0200
commit6f281923949a4944a7d5625e4f900ec02fefee59 (patch)
treeeadb6e87fbf05717f61882210ba57af7fbc5595d
parent501b32653ebf49114cccb9afbf9150cf18fd8700 (diff)
iommu: Add new member capability to struct irq_remap_ops
Add a new member 'capability' to struct irq_remap_ops for storing information about available capabilities such as VT-d Posted-Interrupts. Signed-off-by: Feng Wu <[email protected]> Reviewed-by: Jiang Liu <[email protected]> Reviewed-by: Thomas Gleixner <[email protected]> Acked-by: Joerg Roedel <[email protected]> Cc: [email protected] Cc: [email protected] Link: http://lkml.kernel.org/r/[email protected] Signed-off-by: Thomas Gleixner <[email protected]>
-rw-r--r--arch/x86/include/asm/irq_remapping.h4
-rw-r--r--drivers/iommu/irq_remapping.h3
2 files changed, 7 insertions, 0 deletions
diff --git a/arch/x86/include/asm/irq_remapping.h b/arch/x86/include/asm/irq_remapping.h
index 78974fbc33b4..8b432dd8f170 100644
--- a/arch/x86/include/asm/irq_remapping.h
+++ b/arch/x86/include/asm/irq_remapping.h
@@ -29,6 +29,10 @@
struct msi_msg;
struct irq_alloc_info;
+enum irq_remap_cap {
+ IRQ_POSTING_CAP = 0,
+};
+
#ifdef CONFIG_IRQ_REMAP
extern void set_irq_remapping_broken(void);
diff --git a/drivers/iommu/irq_remapping.h b/drivers/iommu/irq_remapping.h
index 91d5a119956a..b6ca30d31986 100644
--- a/drivers/iommu/irq_remapping.h
+++ b/drivers/iommu/irq_remapping.h
@@ -35,6 +35,9 @@ extern int no_x2apic_optout;
extern int irq_remapping_enabled;
struct irq_remap_ops {
+ /* The supported capabilities */
+ int capability;
+
/* Initializes hardware and makes it ready for remapping interrupts */
int (*prepare)(void);