x86_64: Move mp_set_cpuids() from mp_machdep.c to lapic.c
authorSepherosa Ziehau <sephe@dragonflybsd.org>
Sat, 14 May 2011 14:37:59 +0000 (22:37 +0800)
committerSepherosa Ziehau <sephe@dragonflybsd.org>
Sat, 14 May 2011 15:37:16 +0000 (23:37 +0800)
sys/platform/pc64/acpica5/acpi_madt.c
sys/platform/pc64/apic/lapic.c
sys/platform/pc64/apic/lapic.h
sys/platform/pc64/include/smp.h
sys/platform/pc64/x86_64/mp_machdep.c
sys/platform/pc64/x86_64/mptable.c

index ed323ad..864f534 100644 (file)
@@ -339,10 +339,10 @@ madt_lapic_pass2_callback(void *xarg, const struct acpi_madt_ent *ent)
                MADT_VPRINTF("cpu id %d, apic id %d\n",
                             lapic_ent->ml_cpu_id, lapic_ent->ml_apic_id);
                if (lapic_ent->ml_apic_id == arg->bsp_apic_id) {
-                       mp_set_cpuids(0, lapic_ent->ml_apic_id);
+                       lapic_set_cpuid(0, lapic_ent->ml_apic_id);
                        arg->bsp_found = 1;
                } else {
-                       mp_set_cpuids(arg->cpu, lapic_ent->ml_apic_id);
+                       lapic_set_cpuid(arg->cpu, lapic_ent->ml_apic_id);
                        arg->cpu++;
                }
        }
index 6fc1e25..76e803f 100644 (file)
@@ -747,3 +747,10 @@ lapic_enumerator_register(struct lapic_enumerator *ne)
        }
        TAILQ_INSERT_TAIL(&lapic_enumerators, ne, lapic_link);
 }
+
+void
+lapic_set_cpuid(int cpu_id, int apic_id)
+{
+       CPU_TO_ID(cpu_id) = apic_id;
+       ID_TO_CPU(apic_id) = cpu_id;
+}
index ac2494a..df64109 100644 (file)
@@ -64,6 +64,7 @@ int   apic_ipi(int, int, int);
 void   selected_apic_ipi(cpumask_t, int, int);
 void   single_apic_ipi(int, int, int);
 int    single_apic_ipi_passive(int, int, int);
+void   lapic_set_cpuid(int, int);
 void   lapic_config(void);
 void   lapic_enumerator_register(struct lapic_enumerator *);
 void   set_apic_timer(int);
index f7464e8..8afc0d9 100644 (file)
@@ -97,7 +97,6 @@ extern struct pcb             stoppcbs[];
 u_int  mp_bootaddress          (u_int);
 void   mp_start                (void);
 void   mp_announce             (void);
-void   mp_set_cpuids           (int, int);
 void   init_secondary          (void);
 int    stop_cpus               (cpumask_t);
 void   ap_init                 (void);
index a1e6884..5a56337 100644 (file)
@@ -358,14 +358,6 @@ mp_enable(u_int boot_addr)
        MachIntrABI.finalize();
 }
 
-
-void
-mp_set_cpuids(int cpu_id, int apic_id)
-{
-       CPU_TO_ID(cpu_id) = apic_id;
-       ID_TO_CPU(apic_id) = cpu_id;
-}
-
 /*
  * start each AP in our list
  */
index d178bd5..a70de73 100644 (file)
@@ -560,13 +560,13 @@ processor_entry(const struct PROCENTRY *entry, int cpu)
 
        /* check for BSP flag */
        if (entry->cpu_flags & PROCENTRY_FLAG_BP) {
-               mp_set_cpuids(0, entry->apic_id);
+               lapic_set_cpuid(0, entry->apic_id);
                return 0;       /* its already been counted */
        }
 
        /* add another AP to list, if less than max number of CPUs */
        else if (cpu < MAXCPU) {
-               mp_set_cpuids(cpu, entry->apic_id);
+               lapic_set_cpuid(cpu, entry->apic_id);
                return 1;
        }
 
@@ -722,9 +722,9 @@ mptable_lapic_default(void)
        ap_apicid = (bsp_apicid == 0) ? 1 : 0;
 
        /* BSP */
-       mp_set_cpuids(0, bsp_apicid);
+       lapic_set_cpuid(0, bsp_apicid);
        /* one and only AP */
-       mp_set_cpuids(1, ap_apicid);
+       lapic_set_cpuid(1, ap_apicid);
 }
 
 /*