diff options
author | peter <peter@FreeBSD.org> | 1999-09-05 20:17:40 +0000 |
---|---|---|
committer | peter <peter@FreeBSD.org> | 1999-09-05 20:17:40 +0000 |
commit | 3bf1b4473ae66ac0e7a7c053ec9c38057781a5c5 (patch) | |
tree | 78d43c8487461b05617f93fba5beb0cabf1eda75 /sys/i386 | |
parent | 2ba0669ae5964e6211d0282ec2b84f569b9a188c (diff) | |
download | FreeBSD-src-3bf1b4473ae66ac0e7a7c053ec9c38057781a5c5.zip FreeBSD-src-3bf1b4473ae66ac0e7a7c053ec9c38057781a5c5.tar.gz |
Set up FPU state on the AP.
Tested by: phk
Diffstat (limited to 'sys/i386')
-rw-r--r-- | sys/i386/i386/mp_machdep.c | 4 | ||||
-rw-r--r-- | sys/i386/i386/mptable.c | 4 | ||||
-rw-r--r-- | sys/i386/include/mptable.h | 4 |
3 files changed, 12 insertions, 0 deletions
diff --git a/sys/i386/i386/mp_machdep.c b/sys/i386/i386/mp_machdep.c index 283ed17..3711b37 100644 --- a/sys/i386/i386/mp_machdep.c +++ b/sys/i386/i386/mp_machdep.c @@ -72,6 +72,7 @@ #include <machine/tss.h> #include <machine/specialreg.h> #include <machine/cputypes.h> +#include <machine/cputypes.h> #include <machine/globaldata.h> #if defined(APIC_IO) @@ -2189,6 +2190,9 @@ ap_init() /* XXX FIXME: i386 specific, and redundant: Setup the FPU. */ load_cr0((rcr0() & ~CR0_EM) | CR0_MP | CR0_NE | CR0_TS); + /* set up FPU state on the AP */ + npxinit(__INITIAL_NPXCW__); + /* A quick check from sanity claus */ apic_id = (apic_id_to_logical[(lapic.id & 0x0f000000) >> 24]); if (cpuid != apic_id) { diff --git a/sys/i386/i386/mptable.c b/sys/i386/i386/mptable.c index 283ed17..3711b37 100644 --- a/sys/i386/i386/mptable.c +++ b/sys/i386/i386/mptable.c @@ -72,6 +72,7 @@ #include <machine/tss.h> #include <machine/specialreg.h> #include <machine/cputypes.h> +#include <machine/cputypes.h> #include <machine/globaldata.h> #if defined(APIC_IO) @@ -2189,6 +2190,9 @@ ap_init() /* XXX FIXME: i386 specific, and redundant: Setup the FPU. */ load_cr0((rcr0() & ~CR0_EM) | CR0_MP | CR0_NE | CR0_TS); + /* set up FPU state on the AP */ + npxinit(__INITIAL_NPXCW__); + /* A quick check from sanity claus */ apic_id = (apic_id_to_logical[(lapic.id & 0x0f000000) >> 24]); if (cpuid != apic_id) { diff --git a/sys/i386/include/mptable.h b/sys/i386/include/mptable.h index 283ed17..3711b37 100644 --- a/sys/i386/include/mptable.h +++ b/sys/i386/include/mptable.h @@ -72,6 +72,7 @@ #include <machine/tss.h> #include <machine/specialreg.h> #include <machine/cputypes.h> +#include <machine/cputypes.h> #include <machine/globaldata.h> #if defined(APIC_IO) @@ -2189,6 +2190,9 @@ ap_init() /* XXX FIXME: i386 specific, and redundant: Setup the FPU. */ load_cr0((rcr0() & ~CR0_EM) | CR0_MP | CR0_NE | CR0_TS); + /* set up FPU state on the AP */ + npxinit(__INITIAL_NPXCW__); + /* A quick check from sanity claus */ apic_id = (apic_id_to_logical[(lapic.id & 0x0f000000) >> 24]); if (cpuid != apic_id) { |