|| On Wed, 11 Feb 2004 11:04:55 +0800
|| "Yu, Luming" [off-list ref] wrote:
yl> To issue of booting hang with APIC &ACPI, please verify
yl> http://bugzilla.kernel.org/attachment.cgi?id=1257&action=view can
yl> help. Maybe we need to figure out what's wrong with the SMM &
yl> APIC timer.
|| On Wed, 11 Feb 2004 13:10:24 +0100
|| "Georg C. F. Greve" [off-list ref] wrote:
gg> Just checked this, compiled a 2.6.2 with ACPI 20040116 + the
gg> patch above. That patch rejects on arch/i386/kernel/apic.c
gg> because the ACPI patch (I believe) contains a half-fix for the
gg> issue, so the setup routine looks like
gg> ver = GET_APIC_VERSION(apic_read(APIC_LVR));
gg> lvtt_value = APIC_LVT_TIMER_PERIODIC | LOCAL_TIMER_VECTOR;
gg> if (!APIC_INTEGRATED(ver))
gg> lvtt_value |= SET_APIC_TIMER_BASE(APIC_TIMER_BASE_DIV);
gg> apic_write_around(APIC_LVTT, lvtt_value);
gg> the patch applies fine to drivers/acpi/bus.c, which is apparently
gg> missing in the ACPI 20040116 patch.
Interesting side-effect: the kernel doesn't compile with ACPI but no
APIC enabled.
Apparently, the patch for drivers/apci/bus.c should have some "ifdefs"
added to make sure these calls only get included when LAPIC is
enabled:
drivers/built-in.o(.init.text+0xf12): In function `acpi_bus_init':
: undefined reference to `disable_APIC_timer'
drivers/built-in.o(.init.text+0xf9c): In function `acpi_bus_init':
: undefined reference to `enable_APIC_timer'
drivers/built-in.o(.init.text+0xff5): In function `acpi_bus_init':
: undefined reference to `enable_APIC_timer'
make: *** [.tmp_vmlinux1] Error 1
Regards,
Georg
--
Georg C. F. Greve [off-list ref]
Free Software Foundation Europe (http://fsfeurope.org)
Brave GNU World (http://brave-gnu-world.org)