aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/iommu/irq_remapping.c
diff options
context:
space:
mode:
authorJoerg Roedel <joro@8bytes.org>2012-09-26 06:44:45 -0400
committerJoerg Roedel <joro@8bytes.org>2013-01-28 06:17:27 -0500
commit9b1b0e42f54bc452817f4bb6a8d939afe4f04303 (patch)
tree9b3edc203e3ac5b23c5202605f5c4a9dbe023c03 /drivers/iommu/irq_remapping.c
parent819508d302e5b6d6dacb5c3d5e4756091e32cc7d (diff)
x86, io-apic: Move CONFIG_IRQ_REMAP code out of x86 core
Move all the code to either to the header file asm/irq_remapping.h or to drivers/iommu/. Signed-off-by: Joerg Roedel <joro@8bytes.org> Acked-by: Sebastian Andrzej Siewior <sebastian@breakpoint.cc> Reviewed-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
Diffstat (limited to 'drivers/iommu/irq_remapping.c')
-rw-r--r--drivers/iommu/irq_remapping.c25
1 files changed, 25 insertions, 0 deletions
diff --git a/drivers/iommu/irq_remapping.c b/drivers/iommu/irq_remapping.c
index ebd02bf98062..75afdf43317c 100644
--- a/drivers/iommu/irq_remapping.c
+++ b/drivers/iommu/irq_remapping.c
@@ -1,3 +1,4 @@
1#include <linux/seq_file.h>
1#include <linux/cpumask.h> 2#include <linux/cpumask.h>
2#include <linux/kernel.h> 3#include <linux/kernel.h>
3#include <linux/string.h> 4#include <linux/string.h>
@@ -327,3 +328,27 @@ void panic_if_irq_remap(const char *msg)
327 if (irq_remapping_enabled) 328 if (irq_remapping_enabled)
328 panic(msg); 329 panic(msg);
329} 330}
331
332static void ir_ack_apic_edge(struct irq_data *data)
333{
334 ack_APIC_irq();
335}
336
337static void ir_ack_apic_level(struct irq_data *data)
338{
339 ack_APIC_irq();
340 eoi_ioapic_irq(data->irq, data->chip_data);
341}
342
343static void ir_print_prefix(struct irq_data *data, struct seq_file *p)
344{
345 seq_printf(p, " IR-%s", data->chip->name);
346}
347
348void irq_remap_modify_chip_defaults(struct irq_chip *chip)
349{
350 chip->irq_print_chip = ir_print_prefix;
351 chip->irq_ack = ir_ack_apic_edge;
352 chip->irq_eoi = ir_ack_apic_level;
353 chip->irq_set_affinity = x86_io_apic_ops.set_affinity;
354}