From 8d7966617abd22427119ebcb54d6f8b4cf31a086 Mon Sep 17 00:00:00 2001 From: Travis Geiselbrecht Date: Thu, 1 Mar 2007 07:49:43 +0000 Subject: [PATCH] the last smp change wasn't quite it. This time, make sure it maps the right physical page. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20268 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- src/system/kernel/arch/x86/arch_smp.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/system/kernel/arch/x86/arch_smp.c b/src/system/kernel/arch/x86/arch_smp.c index 116fee811a..1bf8d56eaa 100644 --- a/src/system/kernel/arch/x86/arch_smp.c +++ b/src/system/kernel/arch/x86/arch_smp.c @@ -110,6 +110,7 @@ setup_apic(kernel_args *args, int32 cpu) uint32 config; TRACE(("setting up the APIC for CPU %ld...\n", cpu)); + TRACE((" apic id %d, version %d\n", apic_read(APIC_ID), apic_read(APIC_VERSION))); /* set spurious interrupt vector to 0xff */ config = apic_read(APIC_SPURIOUS_INTR_VECTOR) & 0xffffff00; @@ -187,9 +188,9 @@ arch_smp_init(kernel_args *args) apic_timer_tics_per_sec = args->arch_args.apic_time_cv_factor; // setup regions that represent the apic & ioapic - map_physical_memory("local apic", (void *)args->arch_args.apic, B_PAGE_SIZE, + map_physical_memory("local apic", (void *)args->arch_args.apic_phys, B_PAGE_SIZE, B_EXACT_ADDRESS, B_KERNEL_READ_AREA | B_KERNEL_WRITE_AREA, &apic); - map_physical_memory("ioapic", (void *)args->arch_args.ioapic, B_PAGE_SIZE, + map_physical_memory("ioapic", (void *)args->arch_args.ioapic_phys, B_PAGE_SIZE, B_EXACT_ADDRESS, B_KERNEL_READ_AREA | B_KERNEL_WRITE_AREA, &ioapic); // set up the local apic on the boot cpu