View | Details | Raw Unified | Return to bug 270707
Collapse All | Expand All

(-)b/sys/dev/acpica/acpi_resource.c (-5 / +8 lines)
Lines 36-41 Link Here
36
36
37
#if defined(__i386__) || defined(__amd64__)
37
#if defined(__i386__) || defined(__amd64__)
38
#include <machine/pci_cfgreg.h>
38
#include <machine/pci_cfgreg.h>
39
#include <x86/cputypes.h>
40
#include <x86/x86_var.h>
39
#endif
41
#endif
40
#include <machine/bus.h>
42
#include <machine/bus.h>
41
#include <machine/resource.h>
43
#include <machine/resource.h>
Lines 160-171 acpi_config_intr(device_t dev, ACPI_RESOURCE *res) Link Here
160
162
161
#if defined(__amd64__) || defined(__i386__)
163
#if defined(__amd64__) || defined(__i386__)
162
    /*
164
    /*
163
     * XXX: Certain BIOSes have buggy AML that specify an IRQ that is
165
     * XXX: Certain Intel BIOSes have buggy AML that specify an IRQ
164
     * edge-sensitive and active-lo.  However, edge-sensitive IRQs
166
     * that is edge-sensitive and active-lo.  However, edge-sensitive
165
     * should be active-hi.  Force IRQs with an ISA IRQ value to be
167
     * IRQs should be active-hi.  Force IRQs with an ISA IRQ value to
166
     * active-hi instead.
168
     * be active-hi instead.
167
     */
169
     */
168
    if (irq < 16 && trig == ACPI_EDGE_SENSITIVE && pol == ACPI_ACTIVE_LOW)
170
    if (irq < 16 && trig == ACPI_EDGE_SENSITIVE && pol == ACPI_ACTIVE_LOW &&
171
	cpu_vendor_id == CPU_VENDOR_INTEL)
169
	pol = ACPI_ACTIVE_HIGH;
172
	pol = ACPI_ACTIVE_HIGH;
170
#endif
173
#endif
171
    BUS_CONFIG_INTR(dev, irq, (trig == ACPI_EDGE_SENSITIVE) ?
174
    BUS_CONFIG_INTR(dev, irq, (trig == ACPI_EDGE_SENSITIVE) ?

Return to bug 270707