x86: move smp_found_config
This commit is contained in:
committed by
Thomas Gleixner
parent
f391835290
commit
bab4b27c00
@@ -78,6 +78,9 @@ int apic_verbosity;
|
|||||||
|
|
||||||
int pic_mode;
|
int pic_mode;
|
||||||
|
|
||||||
|
/* Have we found an MP table */
|
||||||
|
int smp_found_config;
|
||||||
|
|
||||||
static unsigned int calibration_result;
|
static unsigned int calibration_result;
|
||||||
|
|
||||||
static int lapic_next_event(unsigned long delta,
|
static int lapic_next_event(unsigned long delta,
|
||||||
|
@@ -56,6 +56,9 @@ EXPORT_SYMBOL_GPL(local_apic_timer_c2_ok);
|
|||||||
*/
|
*/
|
||||||
int apic_verbosity;
|
int apic_verbosity;
|
||||||
|
|
||||||
|
/* Have we found an MP table */
|
||||||
|
int smp_found_config;
|
||||||
|
|
||||||
static struct resource lapic_resource = {
|
static struct resource lapic_resource = {
|
||||||
.name = "Local APIC",
|
.name = "Local APIC",
|
||||||
.flags = IORESOURCE_MEM | IORESOURCE_BUSY,
|
.flags = IORESOURCE_MEM | IORESOURCE_BUSY,
|
||||||
|
@@ -32,9 +32,6 @@
|
|||||||
#include <mach_mpparse.h>
|
#include <mach_mpparse.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/* Have we found an MP table */
|
|
||||||
int smp_found_config;
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Various Linux-internal data structures created from the
|
* Various Linux-internal data structures created from the
|
||||||
* MP-table.
|
* MP-table.
|
||||||
@@ -639,7 +636,9 @@ static void __init __get_smp_config(unsigned early)
|
|||||||
* override the defaults.
|
* override the defaults.
|
||||||
*/
|
*/
|
||||||
if (!smp_read_mpc(phys_to_virt(mpf->mpf_physptr), early)) {
|
if (!smp_read_mpc(phys_to_virt(mpf->mpf_physptr), early)) {
|
||||||
|
#ifdef CONFIG_X86_LOCAL_APIC
|
||||||
smp_found_config = 0;
|
smp_found_config = 0;
|
||||||
|
#endif
|
||||||
printk(KERN_ERR
|
printk(KERN_ERR
|
||||||
"BIOS bug, MP table errors detected!...\n");
|
"BIOS bug, MP table errors detected!...\n");
|
||||||
printk(KERN_ERR "... disabling SMP support. "
|
printk(KERN_ERR "... disabling SMP support. "
|
||||||
@@ -706,8 +705,9 @@ static int __init smp_scan_config(unsigned long base, unsigned long length,
|
|||||||
!mpf_checksum((unsigned char *)bp, 16) &&
|
!mpf_checksum((unsigned char *)bp, 16) &&
|
||||||
((mpf->mpf_specification == 1)
|
((mpf->mpf_specification == 1)
|
||||||
|| (mpf->mpf_specification == 4))) {
|
|| (mpf->mpf_specification == 4))) {
|
||||||
|
#ifdef CONFIG_X86_LOCAL_APIC
|
||||||
smp_found_config = 1;
|
smp_found_config = 1;
|
||||||
|
#endif
|
||||||
mpf_found = mpf;
|
mpf_found = mpf;
|
||||||
#ifdef CONFIG_X86_32
|
#ifdef CONFIG_X86_32
|
||||||
printk(KERN_INFO "found SMP MP-table at [%p] %08lx\n",
|
printk(KERN_INFO "found SMP MP-table at [%p] %08lx\n",
|
||||||
|
@@ -8,9 +8,6 @@
|
|||||||
#include "cobalt.h"
|
#include "cobalt.h"
|
||||||
#include "mach_apic.h"
|
#include "mach_apic.h"
|
||||||
|
|
||||||
/* Have we found an MP table */
|
|
||||||
int smp_found_config;
|
|
||||||
|
|
||||||
extern unsigned int __cpuinitdata maxcpus;
|
extern unsigned int __cpuinitdata maxcpus;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@@ -74,7 +71,9 @@ void __init find_smp_config(void)
|
|||||||
if (ncpus > maxcpus)
|
if (ncpus > maxcpus)
|
||||||
ncpus = maxcpus;
|
ncpus = maxcpus;
|
||||||
|
|
||||||
|
#ifdef CONFIG_X86_LOCAL_APIC
|
||||||
smp_found_config = 1;
|
smp_found_config = 1;
|
||||||
|
#endif
|
||||||
while (ncpus--)
|
while (ncpus--)
|
||||||
MP_processor_info(mp++);
|
MP_processor_info(mp++);
|
||||||
|
|
||||||
|
@@ -59,11 +59,6 @@ __u32 voyager_quad_processors = 0;
|
|||||||
* activity count. Finally exported by i386_ksyms.c */
|
* activity count. Finally exported by i386_ksyms.c */
|
||||||
static int voyager_extended_cpus = 1;
|
static int voyager_extended_cpus = 1;
|
||||||
|
|
||||||
/* Have we found an SMP box - used by time.c to do the profiling
|
|
||||||
interrupt for timeslicing; do not set to 1 until the per CPU timer
|
|
||||||
interrupt is active */
|
|
||||||
int smp_found_config = 0;
|
|
||||||
|
|
||||||
/* Used for the invalidate map that's also checked in the spinlock */
|
/* Used for the invalidate map that's also checked in the spinlock */
|
||||||
static volatile unsigned long smp_invalidate_needed;
|
static volatile unsigned long smp_invalidate_needed;
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user