Ticket #7525: acpi_init_as_ioapic_int.patch

File acpi_init_as_ioapic_int.patch, 1.1 KB (added by tqh, 13 years ago)

A crude patch that sets arch_int_set_interrupt_controller(ioapicController) before acpi is initialised.

  • src/add-ons/kernel/bus_managers/acpi/acpi_busman.c

    diff --git a/src/add-ons/kernel/bus_managers/acpi/acpi_busman.c b/src/add-ons/kernel/bus_managers/acpi/acpi_busman.c
    index 35fafba..54d3e3e 100644
    a b acpi_std_ops(int32 op,...)  
    176176            }
    177177
    178178            arg.Integer.Type = ACPI_TYPE_INTEGER;
    179             arg.Integer.Value = 0;
     179            arg.Integer.Value = 1;
    180180
    181181            parameter.Count = 1;
    182182            parameter.Pointer = &arg;
  • src/system/kernel/arch/x86/ioapic.cpp

    diff --git a/src/system/kernel/arch/x86/ioapic.cpp b/src/system/kernel/arch/x86/ioapic.cpp
    index 6b65b00..cba536e 100644
    a b ioapic_init(kernel_args* args)  
    553553    }
    554554#endif
    555555
     556    arch_int_set_interrupt_controller(ioapicController);
     557
    556558    // load acpi module
    557559    status_t status;
    558560    acpi_module_info* acpiModule;
    ioapic_init(kernel_args* args)  
    636638
    637639    // prefer the ioapic over the normal pic
    638640    dprintf("using io-apics for interrupt routing\n");
    639     arch_int_set_interrupt_controller(ioapicController);
    640641}