]> git.karo-electronics.de Git - mv-sheeva.git/commitdiff
x86, apic: Unify identical register_lapic_address() functions
authorYinghai Lu <yinghai@kernel.org>
Tue, 7 Dec 2010 08:55:17 +0000 (00:55 -0800)
committerThomas Gleixner <tglx@linutronix.de>
Thu, 9 Dec 2010 20:52:04 +0000 (21:52 +0100)
They are the same, move the common function to apic.c to allow
further cleanups.

Signed-off-by: Yinghai Lu <yinghai@kernel.org>
Cc: Suresh Siddha <suresh.b.siddha@intel.com>
Cc: "Eric W. Biederman" <ebiederm@xmission.com>
Cc: Len Brown <lenb@kernel.org>
LKML-Reference: <4CFDF675.4060305@kernel.org>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
arch/x86/include/asm/apic.h
arch/x86/kernel/acpi/boot.c
arch/x86/kernel/apic/apic.c
arch/x86/kernel/mpparse.c

index cf12007796db95f1a48635a55016ff01a0f811c2..1cc42cfa137204fc65efc5c0b448ab840d0b76d3 100644 (file)
@@ -234,6 +234,7 @@ extern void init_bsp_APIC(void);
 extern void setup_local_APIC(void);
 extern void end_local_APIC_setup(void);
 extern void init_apic_mappings(void);
+void register_lapic_address(unsigned long address);
 extern void setup_boot_APIC_clock(void);
 extern void setup_secondary_APIC_clock(void);
 extern int APIC_init_uniprocessor(void);
index 71232b941b6c9c6409fd14e9479f3d1625eeaeb0..b3cf01ab0630602bd48f59666922c0a49d53de00 100644 (file)
@@ -847,18 +847,6 @@ static int __init acpi_parse_fadt(struct acpi_table_header *table)
  * returns 0 on success, < 0 on error
  */
 
-static void __init acpi_register_lapic_address(unsigned long address)
-{
-       mp_lapic_addr = address;
-
-       set_fixmap_nocache(FIX_APIC_BASE, address);
-       if (boot_cpu_physical_apicid == -1U) {
-               boot_cpu_physical_apicid  = read_apic_id();
-               apic_version[boot_cpu_physical_apicid] =
-                        GET_APIC_VERSION(apic_read(APIC_LVR));
-       }
-}
-
 static int __init early_acpi_parse_madt_lapic_addr_ovr(void)
 {
        int count;
@@ -880,7 +868,7 @@ static int __init early_acpi_parse_madt_lapic_addr_ovr(void)
                return count;
        }
 
-       acpi_register_lapic_address(acpi_lapic_addr);
+       register_lapic_address(acpi_lapic_addr);
 
        return count;
 }
@@ -907,7 +895,7 @@ static int __init acpi_parse_madt_lapic_entries(void)
                return count;
        }
 
-       acpi_register_lapic_address(acpi_lapic_addr);
+       register_lapic_address(acpi_lapic_addr);
 
        count = acpi_table_parse_madt(ACPI_MADT_TYPE_LOCAL_SAPIC,
                                      acpi_parse_sapic, MAX_APICS);
index c48a645108447612611c602b45eeb629ef8dc1b9..c02bf135de9d4b13ae2db0257e1e36490b1a231a 100644 (file)
@@ -1702,6 +1702,18 @@ void __init init_apic_mappings(void)
        }
 }
 
+void __init register_lapic_address(unsigned long address)
+{
+       mp_lapic_addr = address;
+
+       set_fixmap_nocache(FIX_APIC_BASE, address);
+       if (boot_cpu_physical_apicid == -1U) {
+               boot_cpu_physical_apicid  = read_apic_id();
+               apic_version[boot_cpu_physical_apicid] =
+                        GET_APIC_VERSION(apic_read(APIC_LVR));
+       }
+}
+
 /*
  * This initializes the IO-APIC and APIC hardware if this is
  * a UP kernel.
index 9af64d9c4b6770c4fea928f6b2a9533c1f4620e8..db0b70317949ef8f0a4f16d04ec897c8ed5adf04 100644 (file)
@@ -275,18 +275,6 @@ static void __init smp_dump_mptable(struct mpc_table *mpc, unsigned char *mpt)
 
 void __init default_smp_read_mpc_oem(struct mpc_table *mpc) { }
 
-static void __init smp_register_lapic_address(unsigned long address)
-{
-       mp_lapic_addr = address;
-
-       set_fixmap_nocache(FIX_APIC_BASE, address);
-       if (boot_cpu_physical_apicid == -1U) {
-               boot_cpu_physical_apicid  = read_apic_id();
-               apic_version[boot_cpu_physical_apicid] =
-                        GET_APIC_VERSION(apic_read(APIC_LVR));
-       }
-}
-
 static int __init smp_read_mpc(struct mpc_table *mpc, unsigned early)
 {
        char str[16];
@@ -310,7 +298,7 @@ static int __init smp_read_mpc(struct mpc_table *mpc, unsigned early)
 
        /* Initialize the lapic mapping */
        if (!acpi_lapic)
-               smp_register_lapic_address(mpc->lapic);
+               register_lapic_address(mpc->lapic);
 
        if (mpc->oemptr)
                x86_init.mpparse.smp_read_mpc_oem(mpc);