Skip to contentSkip to conversation

random ia64 acpi fixes

PATCH Matthew Wilcox 1 participant 1 message Jun 12, 2002

lore
Share & tools
lore
#0 lore raw

Alex pointed out I hadn't actually included the GSI infrastructure in my last patch, so here it is. It's all his work, I'm just posting it.

arch/ia64/kernel/ia64_ksyms.c +1 -0
diff -urNX ../dontdiff linux-ia64/arch/ia64/kernel/ia64_ksyms.c linux-generic/arch/ia64/kernel/ia64_ksyms.c
@@ -28,6 +28,7 @@
 
 #include <linux/irq.h>
 EXPORT_SYMBOL(isa_irq_to_vector_map);
+EXPORT_SYMBOL(gsi_to_vector_map);
 EXPORT_SYMBOL(enable_irq);
 EXPORT_SYMBOL(disable_irq);
 EXPORT_SYMBOL(disable_irq_nosync);
arch/ia64/kernel/iosapic.c +1 -0
diff -urNX ../dontdiff linux-ia64/arch/ia64/kernel/iosapic.c linux-generic/arch/ia64/kernel/iosapic.c
@@ -421,6 +421,7 @@
 	irq_desc_t *idesc;
 	struct hw_interrupt_type *irq_type;
 
+	gsi_to_vector(global_vector) = vector;
 	iosapic_irq[vector].pin	= pin;
 	iosapic_irq[vector].polarity = polarity ? IOSAPIC_POL_HIGH : IOSAPIC_POL_LOW;
 	iosapic_irq[vector].dmode    = delivery;
arch/ia64/kernel/irq_ia64.c +5 -0
diff -urNX ../dontdiff linux-ia64/arch/ia64/kernel/irq_ia64.c linux-generic/arch/ia64/kernel/irq_ia64.c
@@ -50,6 +50,11 @@
 	0x28, 0x27, 0x26, 0x25, 0x24, 0x23, 0x22, 0x21
 };
 
+/*
+ * GSI to IA-64 vector translation table.
+ */
+__u8 gsi_to_vector_map[255] = { [0 ... 254] = {0x0}};
+
 int
 ia64_alloc_irq (void)
 {
include/asm-ia64/hw_irq.h +2 -0
diff -urNX ../dontdiff linux-ia64/include/asm-ia64/hw_irq.h linux-generic/include/asm-ia64/hw_irq.h
@@ -67,6 +67,8 @@
 
 extern __u8 isa_irq_to_vector_map[16];
 #define isa_irq_to_vector(x)	isa_irq_to_vector_map[(x)]
+extern __u8 gsi_to_vector_map[255];
+#define gsi_to_vector(x)	gsi_to_vector_map[(x)]
 
 extern unsigned long ipi_base_addr;
 
Signature · 2 lines
It's always legal to use Linux (TM) systems
http://www.gnu.org/philosophy/why-free.html