Messages in this thread Patch in this message | | | Date | Sun, 26 Oct 2003 00:31:51 +0200 (CEST) | From | Bernhard Rosenkraenzer <> | Subject | 2.4.23-pre8 ACPI breaks x86_64 |
| |
SSIA - drivers/acpi/bus.c started using acpi_pic_set_level_irq unconditionally, and the function doesn't exist on x86_64.
The attached patch _might_ fix it (I don't have the x86_64 manuals and can't reboot my x86_64 test box to test myself ATM -- too many people working on it ;) )
LLaP bero
-- Ark Linux - Linux for the masses http://www.arklinux.org/
Redistribution and processing of this message is subject to http://www.arklinux.org/terms.php--- linux-2.4.22/arch/x86_64/kernel/acpi.c.ark 2003-10-26 07:25:10.000000000 +0100 +++ linux-2.4.22/arch/x86_64/kernel/acpi.c 2003-10-26 07:30:07.000000000 +0100 @@ -565,4 +565,17 @@ #endif /*CONFIG_ACPI_SLEEP*/ +#ifdef CONFIG_ACPI_BUS +void acpi_pic_set_level_irq(unsigned int irq) +{ + unsigned char mask = 1 << (irq & 7); + unsigned int port = 0x4d0 + (irq >> 3); + unsigned char val = inb(port); + if (!(val & mask)) { + printk(KERN_WARNING PREFIX "IRQ %d was Edge Triggered, " + "setting to Level Triggered\n", irq); + outb(val | mask, port); + } +} +#endif /* CONFIG_ACPI_BUS */ | |