Commit Graph

168 Commits

Author SHA1 Message Date
KATO Takenori
11e2bfb4b6 Sync with sys/i386/i386/machdep.c revision 1.339.
New function getmemsize_pc98 is added in this commit, since PC98 is
quite different in obtaining memory size from IBM-PC.  Many lines of
this function is shareable with IBM-PC's getmemsize function, but
sharing needs many #ifdef PC98 statements.  Therefore, I gave up
sharing code with IBM-PC's and just added new function.
1999-06-03 13:49:52 +00:00
Luoqi Chen
0f0fe5a4c5 Unbreak VESA on SMP. 1999-05-12 21:39:07 +00:00
Luoqi Chen
c300b7b6c1 Initialize dblfault_tss.tss_fs to the per-cpu private data segment selector. 1999-05-06 00:54:54 +00:00
Luoqi Chen
68db6cea99 Do not set curproc until proc0 is fully initialized (in proc0_init()). 1999-05-06 00:39:00 +00:00
KATO Takenori
8aef41e249 Sync with sys/i386/i386/machdep.c revision 1.332. 1999-04-28 08:03:54 +00:00
KATO Takenori
32c9ff911e Sync with sys/i386/i386/machdep.c revision 1.330. 1999-04-20 09:08:51 +00:00
KATO Takenori
c55a92c639 Sync with follwing files:
Path				Revision
i386/conf/GENERIC		1.162
i386/conf/Makefile.i386		1.146
i386/conf/files.i386		1.236
i386/conf/options.i386		1.111
i386/i386/machdep.c		1.329
i386/i386/userconfig.c		1.134
i386/isa/fd.c			1.135
i386/isa/if_ed.c		1.151
i386/isa/isa_dam.c		1.1
i386/isa/npx.c			1.67
isa/sio.c			1.224
dev/syscons/syscons.c		1.300
i386/isa/wd.c			1.194
isa/vga_isa.c           1.5
isa/atkbd_isa.c         1.3
isa/syscons_isa.c       1.2

Submitted by:	Takahashi Yoshihiro <nyan@wyvern.cc.kogakuin.ac.jp>
1999-04-18 14:42:20 +00:00
John Polstra
4fe88fe637 Restore support for executing BSD/OS binaries on the i386 by passing
the address of the ps_strings structure to the process via %ebx.
For other kinds of binaries, %ebx is still zeroed as before.

Submitted by:	Thomas Stephens <tas@stephens.org>
Reviewed by:	jdp
1999-04-03 22:20:03 +00:00
KATO Takenori
b052f82154 Sync with sys/i386/i386/machdpe.c revision 1.327. 1999-03-06 09:43:01 +00:00
KATO Takenori
7c9eb5b166 Sync with sys/i386/i386/machdep.c revision 1.326. 1999-02-16 11:07:06 +00:00
KATO Takenori
28791bce44 Sync with sys/i386/i386/machdep.c revision 1.325. 1999-02-12 09:15:33 +00:00
KATO Takenori
270b84ae95 Sync with sys/i386/i386/machdep.c revision 1.324. 1999-02-04 09:55:42 +00:00
KATO Takenori
fe5871fb09 Sync with sys/i386/i386/machdep.c revision 1.323. 1999-01-29 10:43:09 +00:00
KATO Takenori
eb5417aa3a Sync with sys/i386/i386/machdep.c revision up to 1.322. 1999-01-16 11:38:03 +00:00
KATO Takenori
b4d4a2e5d4 Sync with sys/i386/i386/machdep.c revision 1.320. 1999-01-08 16:04:20 +00:00
Bruce Evans
4c56fcdead Removed the cast to a pointer in the definition of PS_STRINGS and
adjusted related casts to match (only in the kernel in this commit).
The pointer was only wanted in one place in kern_exec.c.  Applications
should use the kern.ps_strings sysctl instead of PS_STRINGS, so they
shouldn't notice this change.
1998-12-16 16:28:58 +00:00
KATO Takenori
e4a8d41703 Sync with sys/i386/i386/machdep.c revision 1.317. 1998-12-11 08:04:33 +00:00
KATO Takenori
9ad861edee - For some old Cyrix CPUs, %cr2 is clobbered by interrupts. This
problem is worked around by using an interrupt gate for the page
   fault handler.  This code was originally made for NetBSD/pc98 by
   Naofumi Honda <honda@kururu.math.sci.hokudai.ac.jp> and has already
   been in PC98 tree.  Because of this bug, trap_fatal cannot show
   correct page fault address if %cr2 is obtained in this function.
   Therefore, trap_fatal uses the value from trap() function.
-  The trap handler always enables interruption when buggy application
   or kernel code has disabled interrupts and then trapped.  This code
   was prepared by Bruce Evans <bde@FreeBSD.org>.

Submitted by:	Bruce Evans <bde@FreeBSD.org>
		Naofumi Honda <honda@kururu.math.sci.hokudai.ac.jp>
1998-12-02 08:15:17 +00:00
KATO Takenori
c70606fd9f Sync with sys/i386/i386/machdep.c revision up to 1.315. 1998-11-06 08:07:32 +00:00
KATO Takenori
45b48978af Sync with sys/i386/i386/machdep.c revision 1.313. 1998-10-11 15:04:38 +00:00
KATO Takenori
60f27d13a7 Sync with sys/i386/i386/machdep.c revision 1.312. 1998-10-09 12:36:25 +00:00
KATO Takenori
b3c2b0173a Sync with sys/i386/i386/machdep.c revision 1.311. 1998-09-30 13:21:44 +00:00
KATO Takenori
6a75025663 Sync with sys/i386/i386/machdep.c revision 1.310. 1998-09-28 08:25:29 +00:00
KATO Takenori
76c468f222 Sync with sys/i386/i386/machdep.c revision up to 1.309. 1998-09-15 03:50:08 +00:00
KATO Takenori
794cfbb48e Sync with sys/i386/i386/machdep.c revision 1.306. 1998-09-01 07:17:36 +00:00
KATO Takenori
aa53a702c9 - Fix style bug.
- hw.ispc98 -> machdep.ispc98.

Submitted by:	Garrett Wollman (hw -> machdep)
1998-09-01 02:04:17 +00:00
KATO Takenori
582e52862a - hw.machine_arch returns cpu architecture type.
- moved definition of MACHINE_ARCH from cpu.h to parm.h as alpha.
- Added definitions of _MACHINE and _MACHINE_ARCH.
- Added hw.ispc98. The hw.ispc98 is 1 in PC98 kernel and is 0 in
  IBM-PC kernel.

Discussed with:	John Birrell <jb@FreeBSD.ORG>
1998-08-31 08:41:58 +00:00
KATO Takenori
41bf2268ba Sync with sys/i386/i386/machdep.c revision 1.304. 1998-08-19 09:32:15 +00:00
KATO Takenori
e1c32d9d2d Sync with sys/i386/i386/machdep.c revision 1.303. 1998-07-11 17:00:33 +00:00
KATO Takenori
a723d97973 Sync with sys/i386/i386/machdep.c revision 1.302. 1998-07-02 12:39:32 +00:00
KATO Takenori
b0eb6f6a10 Sync with sys/i386/i386/machdep.c revision 1.301. 1998-06-22 08:05:12 +00:00
KATO Takenori
d5f1066e45 Sync with sys/i386/i386/machdep.c revision 1.300. 1998-06-17 16:30:16 +00:00
KATO Takenori
c7e9ceee59 Merge 64bit portability fixes from sys/i386 stuff. 1998-06-08 08:55:47 +00:00
KATO Takenori
57e8fac883 Sync with sys/i386/i386/machdep.c revision 1.298. 1998-06-03 08:48:00 +00:00
KATO Takenori
6113cb00d6 Sync with sys/i386/i386/machdep.c revision 1.297. 1998-05-28 13:50:13 +00:00
KATO Takenori
fa7cfb3b65 Sync with sys/i386/i386/machdep.c revision 1.296. 1998-05-19 12:58:05 +00:00
KATO Takenori
130eeca5d6 Sync with sys/i386/i386/machdep.c revision 1.294. 1998-04-07 09:07:53 +00:00
KATO Takenori
c85e487d23 Sync with sys/i386/i386/machdep.c and trap.c revisions 1.293 and
1.123, respectively.
1998-03-24 08:27:21 +00:00
KATO Takenori
d01df9f46d Sync with sys/i386/i386/machdep.c revision 1.292. 1998-03-08 03:55:35 +00:00
KATO Takenori
917d483199 Sync with sys/i386/i386/machdep.c revision 1.291. 1998-03-07 15:42:54 +00:00
KATO Takenori
a9c784f064 Sync with sys/i386/i386/machdep.c revision 1.290. 1998-03-02 10:02:01 +00:00
KATO Takenori
db33b1d449 Sync with sys/i386/i386/machdep.c revision 1.289. 1998-02-09 15:04:39 +00:00
Eivind Eklund
0b08f5f737 Back out DIAGNOSTIC changes. 1998-02-06 12:14:30 +00:00
KATO Takenori
3efe1bb939 Sync with sys/i386/i386/machdep.c and trap.c reivsions 1.287 and
1.121, respectively.
1998-02-05 10:05:47 +00:00
KATO Takenori
99b1ec9000 Sync with sys/i386/i386/machdep.c revision 1.286. 1998-02-04 10:19:33 +00:00
KATO Takenori
81b0d36c87 Sync with sys/i386/i386/machdep.c revision 1.285. 1998-01-30 12:03:13 +00:00
KATO Takenori
88a92ff10e Even though BIOS writer's guide recommends cpuid instruction of Cyrix
6x86MX CPU is enabled (BIOS should not disable it), some BIOS disables
it via CCR4.  In this case, cpu variable becomes CPU_486 and
identblue() is called.  Because Cyrix 6x86MX has MSR and doesn't have
MSR1002, wrmsr instruction generates general protection fault.

Tested by:	Simon Coggins <chaos@ultra.net.au>
1998-01-25 12:01:38 +00:00
KATO Takenori
19eba5818f Sync with sys/i386/i386/machdep.c revision 1.283. 1998-01-24 06:53:32 +00:00
KATO Takenori
7ebb9221f6 Sync with sys/i386/i386/machdep.c revision 1.282. 1998-01-24 03:15:37 +00:00
KATO Takenori
3a00f2c11f Sync with sys/i386/i386/machdep.c revision 1.281. 1998-01-12 15:38:51 +00:00
KATO Takenori
935b62000f 1: Fixed compile error when WB_CACH is defined.
2: Fixed !M_EPSON_PC98 case.

Reviewed by:	Chiharu Shibata <chi@rd.njk.co.jp>
1998-01-07 09:03:42 +00:00
Peter Wemm
19d768b80b #include "opt_user_ldt.h" so that the #ifdef USER_LDT checks can work, as
commented about at length in the PR audit trail.

PR: 2412
1997-12-27 02:28:28 +00:00
KATO Takenori
cf478d7b45 Don't use PG_N if EPSON PC-486HX/HG/HA (PC-9801 compatible) are
detected.  These machine cannot make L2 cache write-through by PG_N,
and only I/O access (undocumented) can do that.  If PG_N is used,
system hangs.

Reviewed by:	tos@fa2.so-net.or.jp (Toshiyuki Kawashima)
1997-12-16 10:22:49 +00:00
KATO Takenori
80ed4956b5 Sync with sys/i386/i386/machdep.c revision 1.279. 1997-12-14 12:31:44 +00:00
KATO Takenori
3de8753921 Sync with sys/i386/i386/machdep.c and trap.c revisions 1.278 and
1.118, respectively.
1997-12-05 11:48:53 +00:00
KATO Takenori
7d727d59e4 Sync with sys/i386/i386/machdep.c and trap.c revisions 1.275 and
1.116, respectively.
1997-12-03 09:46:34 +00:00
KATO Takenori
1c682f9842 Sync with sys/i386/i386/machdep.c revision up to 1.274. 1997-11-25 09:54:36 +00:00
KATO Takenori
eef2db22e1 Sync with following files:
- sys/i386/i386/machdep.c revision 1.271
	- sys/i386/i386/trap.c revision 1.114
	- sys/i386/isa/if_ed.c revision 1.128
	- sys/i386/isa/if_fe.c revision 1.34
	- sys/i386/isa/syscons.c revision 1.238.
	- sys/i386/isa/wd.c revision 1.144
1997-11-07 12:54:01 +00:00
KATO Takenori
f98d041924 Synchronize with sys/i386/i386/machdep.c revision 1.269. 1997-10-13 09:21:16 +00:00
KATO Takenori
38a7ce0beb Synchronize with sys/i386/i386/machdep.c revision 1.268. 1997-10-12 11:58:09 +00:00
KATO Takenori
a76e8ee5a9 Synchronize with sys/i386/i386/machdep.c revision 1.266. 1997-09-26 09:47:04 +00:00
KATO Takenori
82ed62a794 Synchronize with sys/i386/i386/machdep.c and trap.c reivisions 1.265
and 1.111, respectively.
1997-09-22 12:20:42 +00:00
KATO Takenori
8ccbc9119c Synchronize with sys/i386/i386/machdep.c revision up to 1.263. 1997-09-05 10:14:36 +00:00
KATO Takenori
6fd38fbdc0 Synchronize with sys/i386/i386/machdep.c and microtime.s revisions
1.261 and 1.32, respectively.
1997-09-03 12:41:16 +00:00
KATO Takenori
8532a0ba59 Synchronize with sys/i386/i386/machdep.c revision 1.260. 1997-09-01 10:42:03 +00:00
KATO Takenori
6f468ee3e3 Synchronize with sys/i386/i386/machdep.c and trap.c revision 1.258 and
1.108, respectively.
1997-08-27 08:43:21 +00:00
KATO Takenori
3b17d7f08b Synchronize with sys/i386/i386/machdep.c, trap.c and
sys/i386/isa/npx.c revisions 1.257, 1.107 and 1.52, respectively.
1997-08-21 10:13:12 +00:00
KATO Takenori
b2964d3a9e Synchronize with sys/i386/i386/machdep.c, trapc and sys/i386/isa/npx.c
revisions 1.256, 1.105 and 1.51, respectively.
1997-08-18 11:30:05 +00:00
KATO Takenori
f6601c421b Synchronize with sys/i386/i386/machdep.c revision 1.255. 1997-08-09 01:56:34 +00:00
KATO Takenori
22ed4a0ab5 Synchronize with sys/i386/i386/machdep.c revision 1.254. 1997-08-06 09:43:45 +00:00
KATO Takenori
2463359bc9 Synchronize with sys/i386/i386/machdep.c and trap.c revisions 1.253
and 1.101, respectively.
1997-07-21 13:04:54 +00:00
KATO Takenori
89a8492f8f Synchronize with sys/i386/i386/machdep.c revision 1.252. 1997-06-30 09:58:39 +00:00
KATO Takenori
879210125e Synchronize with following changes:
>  Revision  Changes    Path
>  1.250     +1 -18     src/sys/i386/i386/machdep.c
>  1.48      +1 -7      src/sys/i386/conf/options.i386
>  1.251     +19 -46    src/sys/i386/i386/machdep.c
>  1.24      +2 -6      src/sys/i386/i386/microtime.s
>  1.100     +4 -15     src/sys/i386/i386/trap.c
>  1.46      +6 -7      src/sys/i386/isa/npx.c
1997-06-23 09:35:47 +00:00
KATO Takenori
46060d269c Synchronize with sys/i386/i386/machdep.c revision up to 1.249. 1997-06-15 16:35:13 +00:00
KATO Takenori
000b9f09d6 Synchronize with sys/i386/i386/machdep.c and trap.c revisions 1.247
and 1.99, respectively.
1997-06-09 13:38:21 +00:00
KATO Takenori
91097827d5 Synchronize with following files:
Revision  Changes    Path
>  1.165     +2 -1      src/sys/i386/conf/files.i386
>  1.246     +2 -1      src/sys/i386/i386/machdep.c
>  1.98      +2 -2      src/sys/i386/i386/trap.c
>  1.87      +2 -2      src/sys/i386/isa/clock.c
>  1.89      +2 -356    src/sys/i386/isa/isa.c
>  1.45      +2 -1      src/sys/i386/isa/npx.c
1997-06-02 15:45:40 +00:00
KATO Takenori
93a6f2b1bf Synchronize with sys/i386/i386/machdep.c revision up to 1.245. 1997-05-28 09:16:19 +00:00
KATO Takenori
a52949433c Synchronize with sys/i386/i386/machdep.c revision 1.242. 1997-05-23 10:17:05 +00:00
KATO Takenori
fff65794d9 Synchronize with sys/i386/i386/machdep.c revision 1.241. 1997-05-12 12:56:50 +00:00
KATO Takenori
9f70eea59b Synchronize with sys/i386/i386/machdep.c revision 1.240. 1997-05-08 09:34:16 +00:00
KATO Takenori
e1ee467aaf Merge SMP code from IBM-PC tree into PC-98 tree. 1997-04-27 13:22:09 +00:00
KATO Takenori
aae8fb345f Synchronize with sys/i386/conf/Makefile.i386, sys/i386/i386/machdep.c
and sys/i386/isa/npx.c revisions 1.94, 1.238 and 1.41, respectively.
1997-04-22 12:20:50 +00:00
KATO Takenori
a6a8345e27 Synchronize with sys/i386/i386/machdep.c revision 1.237. 1997-04-13 06:02:52 +00:00
KATO Takenori
2083cff23d Synchronize with sys/i386/i386{machdep.c,trap.c} revisions 1.236 and
1.91, respectively.
1997-04-07 11:00:48 +00:00
David Greenman
9caaadb63a Changed the way that the exec image header is read to be filesystem-
centric rather than VM-centric to fix a problem with errors not being
detectable when the header is read.
Killed exech_map as a result of these changes.
There appears to be no performance difference with this change.
1997-03-31 11:11:26 +00:00
KATO Takenori
f37dd3ba03 Synchronize with sys/i386/i386/machdep.c revision 1.233. 1997-03-29 02:48:49 +00:00
KATO Takenori
e0762592a1 Synchronize with sys/i386/i386/machdep.c revision 1.232. 1997-03-26 07:03:30 +00:00
Bruce Evans
3a32c6706b Don't include <sys/ioctl.h> in the kernel. Stage 9: same changes
in pc98 as in isa.
1997-03-24 12:29:48 +00:00
KATO Takenori
4c024bbdf8 Improved CPU identification and initialization routines. This
supports All Cyrix CPUs, IBM Blue Lightning CPU and NexGen (now AMD)
Nx586 CPU, and initialize special registers of Cyrix CPU and msr of
IBM Blue Lightning CPU.

If revision of Cyrix 6x86 CPU < 2.7, CPU cache is enabled in
write-through mode.  This can be disabled by kernel configuration
options.

Reviewed by:	Bruce Evans <bde@freebsd.org> and
            	Jordan K. Hubbard <jkh@freebsd.org>
1997-03-22 18:54:54 +00:00
KATO Takenori
f3af5d6cd0 Synchronize with sys/i386/i386/machdep.c revision 1.229. 1997-02-25 16:36:48 +00:00
Peter Wemm
6875d25465 Back out part 1 of the MCFH that changed $Id$ to $FreeBSD$. We are not
ready for it yet.
1997-02-22 09:48:43 +00:00
KATO Takenori
6ed46f82d8 Synchronize with Lite/2 commit: i386/i386/machdep.c, i386/i386/trap.c,
i386/isa/fd.c and i386/isa/wd.c revisions 1.227, 1.87, 1.96 and 1.123,
respectively.
1997-02-10 11:53:20 +00:00
KATO Takenori
1817f78ea0 Synchronize with sys/i386/i386/machdep.c rev. 1.226. 1997-01-25 06:42:19 +00:00
KATO Takenori
ece9035f43 Synchronize with sys/i386/i386/machdep.c (revision 1.225). 1997-01-18 10:21:45 +00:00
Jordan K. Hubbard
1130b656e5 Make the long-awaited change from $Id$ to $FreeBSD$
This will make a number of things easier in the future, as well as (finally!)
avoiding the Id-smashing problem which has plagued developers for so long.

Boy, I'm glad we're not using sup anymore.  This update would have been
insane otherwise.
1997-01-14 07:20:47 +00:00
KATO Takenori
cbecba19cc Synchronize with sys/i386/i386/machdep.c revision 1.223 (clean-up of
useracc call).
1996-12-29 08:10:30 +00:00
KATO Takenori
a3e2897cd4 Sync with sys/i386/i386/machdep.c revision 1.222 (move printing of
BIOS geometry).
1996-12-18 20:50:44 +00:00
KATO Takenori
f605549c19 Sync with i386/i386/machdep.c revision 1.221 (fix nbuf calculation). 1996-12-17 13:26:17 +00:00
KATO Takenori
cc48749980 Synchronize with sys/i386/i386/machdep.c revision 1.220.
Definite 2.2 candidate.
1996-12-15 09:18:48 +00:00
KATO Takenori
54c5d00f71 Synchronize with sys/i386/i386/machdep.c revision 1.219.
2.2 candidate.
1996-12-12 13:10:50 +00:00