Commit Graph

207 Commits

Author SHA1 Message Date
jmallett
2c26b04404 Move SHOW_BUSYBUFS and PANIC_REBOOT_WAIT_TIME into the MI options file, since
MI code uses them, and every platform provides them (except x86_64 whose
options file was lacking one).

Reviewed by:	bde, rwatson
2002-11-18 06:17:07 +00:00
iwasaki
4bc30afc1e Add new syscons option SC_NO_SUSPEND_VTYSWITCH.
This disables vty switch during suspend/resume.
2002-10-17 07:04:31 +00:00
nyan
293924c95c MFi386: revision 1.181. 2002-10-16 15:18:58 +00:00
nyan
74d9116c1b MFi386: revision 1.178. 2002-09-16 07:19:43 +00:00
peter
a054ba3c90 Move the KSTACK_PAGES option from MD to MI. Although not all platforms
support this, we do have MI code that references it and is otherwise
unaware of an override.  The alternative is to put knowledge in these
MI files about which platforms have the opt_kstack_pages.h option file.
It is more likely that other platforms will gain the ability to tune the
kstack size.
2002-09-07 22:07:11 +00:00
peter
fa099d1548 Automatically enable CPU_ENABLE_SSE (detect and enable SSE instructions)
if compiling with I686_CPU as a target.  CPU_DISABLE_SSE will prevent
this from happening and will guarantee the code is not compiled in.

I am still not happy with this, but gcc is now generating code that uses
these instructions if you set CPUTYPE to p3/p4 or athlon-4/mp/xp or higher.
2002-09-07 07:02:12 +00:00
jhb
7e643be20f Move SMBFS from i386 and pc98 files and options files to MI files and
options files.
2002-07-15 19:11:21 +00:00
jhb
82c8bf8cf3 The puc(4) driver/bridge is MI, so don't bury it in MD options and files
config files.  It also depends on PCI.
2002-07-15 15:39:10 +00:00
jhb
2ec58be99a Make WLCACHE and WLDEBUG MI options. 2002-07-15 15:21:51 +00:00
jhb
87f334cc9d Make NDGBPORTS an MI option since the dgb(4) driver is an MI driver.
Remove comments about NDGBPORTS from the options* files.  Please document
options in NOTES, not in the options* files.
2002-07-15 15:18:34 +00:00
peter
4d88d6566a Revive backed out pmap related changes from Feb 2002. The highlights are:
- It actually works this time, honest!
- Fine grained TLB shootdowns for SMP on i386.  IPI's are very expensive,
  so try and optimize things where possible.
- Introduce ranged shootdowns that can be done as a single IPI.
- PG_G support for i386
- Specific-cpu targeted shootdowns.  For example, there is no sense in
  globally purging the TLB cache for where we are stealing a page from
  the local unshared process on the local cpu.  Use pm_active to track
  this.
- Add some instrumentation for the tlb shootdown code.
- Rip out SMP code from <machine/cpufunc.h>
- Try and fix some very bogus PG_G and PG_PS interactions that were bad
  enough to cause vm86 bios calls to break.  vm86 depended on our existing
  bugs and this was the cause of the VESA panics last time.
- Fix the silly one-line error that caused the 'panic: bad pte' last time.
- Fix a couple of other silly one-line errors that should have caused more
  pain than they did.

Some more work is needed:
- pmap_{zero,copy}_page[_idle].  These can be done without IPI's if we
  have a hook in cpu_switch.
- The IPI handlers need some cleanup.  I have a bogus %ds load that can
  be avoided.
- APTD handling is rather bogus and appears to be a large source of
  global TLB IPI shootdowns for no really good reason.

I see speedups of between 1.5% and ~4% on buildworlds in a while 1 loop.
I expect to see a bigger difference when there is significant pageout
activity or the system otherwise has memory shortages.

I have backed out a few optimizations that I had been using over the last
few days in order to be a little more conservative.  I'll revisit these
again over the next few days as the dust settles.

New option:  DISABLE_PG_G - In case I missed something.
2002-07-12 07:56:11 +00:00
n_hibma
90312e83bd Make the speed used by gdb over serial settable in the kernel configuration.
This facilitates the use in circumstances where you are using a serial
console as well. GDB doesn't support anything higher than 9600 baud (19k2
if you are lucky), but the console does.
2002-06-18 21:30:37 +00:00
nyan
a4a176f024 Remove unneeded entries. 2002-05-19 13:18:10 +00:00
trhodes
28d42899b7 More s/file system/filesystem/g 2002-05-16 21:28:32 +00:00
peter
f2dee2e96f Back out all the pmap related stuff I've touched over the last few days.
There is some unresolved badness that has been eluding me, particularly
affecting uniprocessor kernels.  Turning off PG_G helped (which is a bad
sign) but didn't solve it entirely.  Userland programs still crashed.
2002-02-27 09:51:33 +00:00
peter
748d0e1167 Work-in-progress commit syncing up pmap cleanups that I have been working
on for a while:
- fine grained TLB shootdown for SMP on i386
- ranged TLB shootdowns.. eg: specify a range of pages to shoot down with
  a single IPI, since the IPI is very expensive.  Adjust some callers
  that used to trigger this inside tight loops to do a ranged shootdown
  at the end instead.
- PG_G support for SMP on i386 (options ENABLE_PG_G)
- defer PG_G activation till after we decide what we are going to do with
  PSE and the 4MB pages at the start of the kernel.  This should solve
  some rumored strangeness about stale PG_G entries getting stuck
  underneath the 4MB pages.
- add some instrumentation for the fine TLB shootdown
- convert some asm instruction wrappers from functions to inlines.  gcc
  seems to do a fair bit better with this.
- [temporarily!] pessimize the tlb shootdown IPI handlers.  I will fix
  this again shortly.

This has been working fairly well for me for a while, but I have tweaked
it again prior to commit since my last major testing round.  The only
outstanding problem that I know of is PG_G related, which is why there
is an option for it (not on by default for SMP).  I have seen a world
speedups by a few percent (as much as 4 or 5% in one case) but I have
*not* accurately measured this - I am a bit sceptical of these numbers.
2002-02-25 23:49:51 +00:00
nyan
1b92815504 MFi386: revision 1.167 2002-02-17 08:56:12 +00:00
bde
3247dc600a Garbage collect options AVM_A1_PCI, AVM_A1_PCMCIA, DEBUG_LINUX, DEV_APM,
GUS_DMA, GUS_DMA2, GUS_IRQ, OLTR_NO_BULLSEYE_MAC, OLTR_NO_HAWKEYE_MAC,
OLTR_NO_TMS_MAC and PCIC_RESUME_RESET.
2002-02-15 10:19:39 +00:00
dwmalone
74fa509202 Add an option CPU_ATHLON_SSE_HACK which attempts to enable the SSE
feature bit on newer Athlon CPUs if the BIOS has forgotten to enable
it.

This patch was constructed using some info made available by John
Clemens at http://www.deater.net/john/PavilionN5430.html

Reviewed by:	-audit
MFC after:	3 weeks
2002-02-12 21:13:02 +00:00
nyan
c53dc64416 MFi386: revision 1.164 2002-02-12 13:21:32 +00:00
nyan
d851b8cf40 MFi386: revision 1.159 2001-12-22 00:48:39 +00:00
nyan
ea10a01894 MFi386: revision 1.163 2001-12-22 00:42:10 +00:00
nyan
0de7f7c686 MFi386: options.i386 revision 1.162 2001-12-16 09:04:08 +00:00
nyan
7ff7945cf1 MFi386: revision 1.160 2001-11-17 13:44:33 +00:00
phk
9bb69cda68 GC userconfig after Peter axed it 15 months ago. 2001-11-05 21:46:35 +00:00
nyan
bbf3bcbffe MFi386: options.i386 revision 1.158 2001-10-19 11:45:05 +00:00
nyan
c0f87bdb16 Rewrite the pc98 bus_space stuff.
The type of bus_space_tag_t is now a pointer to bus_space_tag structure,
and the bus_space_tag structure saves pointers to functions for direct
access and relocate access.

Added bsh_bam member to the bus_space_handle structure, it saves access
method either direct access or relocate access which is called by
bus_space_* functions.

Added the mecia device support. If the bs_da and bs_ra in bus tag are set
NEPC_io_space_tag and NEPC_mem_space_tag respectively, new bus_space stuff
changes the register of mecia automatically for 16bit access.

Obtained from:	NetBSD/pc98
2001-10-07 10:04:18 +00:00
peter
7290545b37 Introduce a new option, KVA_SPACE, which can be used to reconfigure
the size of the kernel virtual address space relatively painlessly.
Userland will adapt via the exported kernbase symbol.  Increasing
this causes the user part of address space to reduce.
2001-09-21 06:23:03 +00:00
nyan
ac453a7645 MFi386: removed IDE_DELAY option. 2001-09-16 05:24:05 +00:00
julian
5596676e6c KSE Milestone 2
Note ALL MODULES MUST BE RECOMPILED
make the kernel aware that there are smaller units of scheduling than the
process. (but only allow one thread per process at this time).
This is functionally equivalent to teh previousl -current except
that there is a thread associated with each process.

Sorry john! (your next MFC will be a doosie!)

Reviewed by: peter@freebsd.org, dillon@freebsd.org

X-MFC after:    ha ha ha ha
2001-09-12 08:38:13 +00:00
shiba
25567a30d1 Always turned on 8bit access card support for the fe driver
both i386/pc98, so options FE_8BIT_SUPPORT was deleted.

Reviewed by: nyan
2001-09-02 13:05:00 +00:00
peter
70aca15c21 Optionize UPAGES for the i386. As part of this I split some of the low
level implementation stuff out of machine/globaldata.h to avoid exposing
UPAGES to lots more places.  The end result is that we can double
the kernel stack size with 'options UPAGES=4' etc.

This is mainly being done for the benefit of a MFC to RELENG_4 at some
point.  -current doesn't really need this so much since each interrupt
runs on its own kstack.
2001-08-25 02:20:02 +00:00
peter
e91e9ba630 Add a cosmetic comment. 2001-08-02 23:54:23 +00:00
yokota
5ae9960da3 Use #ifdef DEV_SPLASH (from opt_splash.h) rather than
#if NSPLASH > 0 (from splash.h) to test the presence
of the splash driver.
2001-08-02 13:22:33 +00:00
nyan
671d8c3b27 Merged from sys/conf/options.i386 revision 1.150. 2001-07-14 02:43:52 +00:00
non
e912725025 Catch up with NetBSD/pc98.
o Much cleanly separate NetBSD(XS) / FreeBSD(CAM) codes.
o Improve tagged queing support (full QTAG).
o Improve quirk support.
o Improve parity error retry.
o Impliment wide negotheation.
o Cmd link support.
o Add copyright of CAM part.
o Change for CAM_NEW_TRAN_CODE.
o Work around for buggy KME UJDCD450.

o stg: add disconnet condition.
o nsp: use suspend I/O.
and more. I thank Honda-san.

conf/options.pc98: add CT_USE_RELOCATE_OFFSET and CT_BUS_WEIGHT
dev/{ct,ncv,nsp,stg}/*_{pccard,isa}.c: add splcam() before calling
        attach/detach functions.

Tested by: bsd-nomads
Obtained from:  NetBSD/pc98
2001-07-14 00:38:51 +00:00
peter
bbbe8875f0 Hints overhaul:
- Replace some very poorly thought out API hacks that should have been
  fixed a long while ago.
- Provide some much more flexible search functions (resource_find_*())
- Use strings for storage instead of an outgrowth of the rather
  inconvenient temporary ioconf table from config().  We already had a
  fallback to using strings before malloc/vm was running anyway.
2001-06-12 09:40:04 +00:00
kato
9a5dbab1ba Merged from sys/conf/options.i386 revision 1.148. 2001-04-16 09:13:51 +00:00
kato
52a17539a6 Merged from options.i386 revision 1.147. 2001-04-12 12:28:42 +00:00
nyan
66fb62fc03 Merged from sys/conf/options.i386 revision 1.144. 2001-04-01 06:31:25 +00:00
peter
88a22127a8 Activate USER_LDT by default. The new thread libraries are going to
depend on this.  The linux ABI emulator tries to use it for some linux
binaries too.  VM86 had a bigger cost than this and it was made default
a while ago.

Reviewed by:	jhb, imp
2001-02-23 01:25:02 +00:00
peter
d3da30dfac change 'count eisa' to 'optional eisa' and update the only consumer
of 'NEISA' - userconfig.c.
While there, send some defunct code to the file history.
2001-01-29 08:19:02 +00:00
peter
802c028309 Convert apm from a bogus 'count' into a plain option. Clean out some
other cruft from the files.alpha and files.ia64 that were related to this.
2001-01-19 14:09:54 +00:00
peter
0d5e420364 Use #ifdef DEV_NPX from opt_npx.h instead of #if NNPX > 0 from npx.h 2001-01-19 13:19:02 +00:00
kato
69938b4a4c Merged from files.i386 and options.i386 revisions 1.341 and 1.141,
respectively.
2000-12-22 10:18:00 +00:00
kato
c8d6c53930 Merged from sys/conf/{files.i386,options.i386} revisions 1.334 and
1.140, respectively.
2000-10-10 08:12:15 +00:00
kato
17105db15e Merged from sys/conf/options.i386 revision 1.139. 2000-09-23 06:36:46 +00:00
kato
b55d0c006f Merged from sys/conf/options.i386 rev 1.137. 2000-06-13 13:08:30 +00:00
kato
dba64e78dc Added new options CPU_PPRO2CELERON and CPU_L2_LATENCY to support
Socket 8 to 370 converters.  When (1) CPU_PPRO2CELERON option is
defined, (2) Intel CPU is found and (3) CPU ID is 0x66?, L2 cache is
enabled through MSR 0x11e.  The L2 cache latency value can be
specified by CPU_L2_LATENCY option.  Default value of L2 cache latency
is 5.

These options are useful if you use Socket 8 to Socket 370 converter
(e.g. Power Leap's PL-Pro/II.)  Most PentiumPro BIOSs don't enable L2
cache of Mendocino Celeron CPUs because they don't know Celeron CPUs.
These options are needles if you use a Coppermine (FCPGA) Celeron or
PentiumIII, becuase the L2 cache enable bit is hard wired and L2 cache
is always enabled.
2000-06-13 09:10:37 +00:00
jhb
3ab6c4cf33 Move UKBD_DFLT_KEYMAP into the options file since USB is machine
independent.  This allows the ukbd0 driver to compile on the Alpha.

Approved by:	o`brien (in principle)
2000-05-09 18:23:38 +00:00
nyan
a5668ad02e - Added UKBD_DFLT_KEYMAP option.
Pointed out:	Tomokazu HARADA <tkhara@osk4.3web.ne.jp>

- Fixed disordering.
2000-04-30 09:12:48 +00:00
nyan
bfb103b5f1 Sync with sys/conf/options.i386 revision 1.135. 2000-04-23 09:10:24 +00:00
kato
7ede7c8f0f Merged from sys/conf/options.i386 rev 1.134. 2000-04-01 11:10:04 +00:00
peter
35e00e91c8 Connect the ISA and PCI compatability shims to an option. In this case
it's options COMPAT_OLDISA and COMPAT_OLDPCI.  This is meant to be a
fairly strong incentive to update the older drivers to newbus, but doesn't
(quite) leave anybody hanging with no hardware support.  I was talking with
a few folks and I was encouraged to simply break or disable the shims but
that was a bit too drastic for my liking.
2000-03-19 13:07:12 +00:00
kato
cd010a1d3e Synced with options.i386 rev 1.132. 2000-01-14 12:56:42 +00:00
bde
9bf47018d7 Put COMPAT_SVR4 in opt_dontuse.h for the same reasons as IBCS2 and
COMPAT_LINUX are there.  It shouldn't be and isn't used after config
time, except to complicate the svr4 module makefile.

Moved options for emulators to a separate section.
2000-01-09 10:58:39 +00:00
kato
58d24b5adb Sync with sys/i386/conf/options.i386 rev 1.130. 1999-12-20 11:00:02 +00:00
kato
123ed1d90a Merge from sys/i386/conf/options.i386 rev 1.128. 1999-12-09 12:16:29 +00:00
nyan
90c3762347 Sync with sys/i386/conf/options.i386 revision up to 1.127. 1999-11-09 12:16:01 +00:00
eivind
5b687accc4 Options cleanup.
* GC unused options
* Move options that exist on all architectures to conf/options
* Add missing options to LINT
* Sort undocumented options list in LINT

Reviewed by:	green
1999-11-06 23:41:10 +00:00
eivind
b38bca6cdc Elminiate the (unused) TUNE_1542 option. 1999-11-01 22:50:52 +00:00
kato
e399d41d54 Sync w/ sys/i386/conf/options.i386 revision 1.122. 1999-10-16 13:13:00 +00:00
kato
32578c4daf - Removed COMPAT_ATDISK from option because it is pseudo-device now.
- Fixed arguments of atcompat_dsinit() in diskslice_machdep.c.
1999-08-29 21:28:47 +00:00
peter
3b842d34e8 $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
kato
6b9d586de3 Merge from sys/i386/conf/options.i386 revision .1.20. 1999-08-23 13:39:32 +00:00
kato
5c15236e38 Sync with sys/i386/conf/options.i386 revision 1.119. 1999-08-08 11:13:47 +00:00
kato
093c06a9f5 Sync with sys/i386/conf/options.i386 revision 1.118. 1999-06-24 08:31:08 +00:00
kato
b8ea7d756c Sync with sys/i386/conf/options.i386 revision 1.117. 1999-06-17 11:07:52 +00:00
dfr
20497fc04f Floppy driver options moved to conf/options. 1999-06-05 13:57:10 +00:00
kato
7467f798a2 Sync with sys/i386/conf/files.i386 and options.i386 revisions 1.246
and 1.115, respectively.
1999-06-03 13:04:00 +00:00
kato
6f6aef19c5 Sync with sys/i386/conf/options.i386 revision 1.114. 1999-05-25 10:30:58 +00:00
kato
760f60999f Sync with sys/i386/conf/options.i386 revision 1.113. 1999-05-10 09:03:10 +00:00
kato
859928112f Sync with sys/i386/conf/options.i386 revision 1.112. 1999-04-25 04:05:31 +00:00
kato
6b69df13a8 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
kato
83a6a2555d Sync with sys/i386/conf/options.i386 revision 1.110. 1999-03-17 09:00:33 +00:00
kato
eeb7d27ebc Keyboard driver update.
Submitted by:	Kazutaka YOKOTA <yokota@FreeBSD.org>
1999-03-10 14:51:53 +00:00
kato
a6d7ece439 Sync with sys/i386/conf/options.i386 revision up to 1.108. 1999-03-10 14:01:59 +00:00
kato
c5723ddbb3 Added FE_8BIT_SUPPORT into the list. The fe driver includes opt_fe.h.
Submitted by:	Takahashi Yoshihiro <nyan@dd.catv.ne.jp>
1999-03-03 10:40:27 +00:00
kato
a3f02281fa Merge with sys/i386/conf/options.i386 revision 1.102.
Submitted by:	Takahashi Yoshihiro <nyan@dd.catv.ne.jp>
1999-02-16 11:12:42 +00:00
kato
fddf52b298 Switched to new syscons driver.
Submitted by:	NOKUBI Hirotaka <hnokubi@yyy.or.jp> and
             	Kazutaka YOKOTA <yokota@zodiac.mech.utsunomiya-u.ac.jp>
1999-01-18 08:38:08 +00:00
kato
30ad5c00bb Sync with sys/i386/conf/options.i386 revision 1.101. 1999-01-04 08:09:15 +00:00
kato
4c4ee41967 Sync with sys/i386/conf/options.i386 revision up to 1.100. 1998-12-30 08:03:03 +00:00
kato
14f77a8cae Sync with sys/i386/conf/options.i386 revision 1.96. 1998-12-21 09:58:37 +00:00
kato
f6ffb5f371 Sync with sys/i386/conf/options.i386 revision 1.95. 1998-12-14 08:52:20 +00:00
kato
d03df64f09 Sync with sys/i386/conf/optins.i386 revision 1.94. 1998-12-05 09:20:53 +00:00
kato
118a0c7f05 Sync with sys/i386/conf/majors.i386 revision 1.93. 1998-12-04 14:41:32 +00:00
kato
882d7baeed Sync with sys/i386/conf/options.i386 revision 1.92. 1998-11-16 08:11:58 +00:00
kato
0050d4f63e Sync with sys/i386/conf/options.i386 revision 1.91. 1998-11-06 08:07:00 +00:00
kato
5c811970f9 - Implement enabling write allocate on AMD K5/K6/K6-2 cpus.
The code was originaly contributed by Kelly Yancey
  <kbyanc@freedomnet.com> in PR i386/6269 and revised by Akio Morita
  <amorita@meadow.scphys.kyoto-u.ac.jp> and me.  Test was performed by
  Akio Morita and Toshiomi Moriki <moriki@db.is.kyushu-u.ac.jp>.
- Fix stylistic bug in identcpu.c.
- Update copyright in initcpu.c
- Fix typo in LINT.

PR:		6269 and 6270
1998-10-06 13:16:29 +00:00
kato
f82938c038 Sync with sys/i386/conf/options.i386 revision 1.89. 1998-09-28 08:23:26 +00:00
kato
f05a544579 Sync with sys/i386/isa/files.i386 and options.i386 revisions 1.204 and
1.87, respectively.
1998-09-16 08:37:40 +00:00
kato
e6b5e2ad1d Sync with sys/i386/conf/GENERIC, SMP-GENERIC, device.i386, files.i386,
majors.i386 and options.i386 revisions 1.116, 1.13, 1.14, 1.203, 1.49
and 1.86, respectively.
1998-09-15 14:10:56 +00:00
kato
6c29b07c00 Sync with sys/i386/conf/options.i386 revision 1.85. 1998-09-09 14:39:20 +00:00
kato
6735f4763b Sync with sys/i386/conf/options.i386 revision up to 1.84. 1998-08-10 16:54:09 +00:00
kato
a0a2d09076 Sync with sys/i386/conf/options.i386 revision 1.82. 1998-07-02 12:40:01 +00:00
kato
b4a37e244c Make LINE30 a new style option. 1998-06-06 05:25:37 +00:00
kato
3b0eeaf8e1 Make BS_TARG_SAFEMODE a new style option. 1998-06-06 05:21:56 +00:00
kato
17f8aefccb Sync with sys/i386/conf/options.i386 revision 1.78. 1998-05-12 09:31:44 +00:00
kato
338316476f Sync with sys/i386/conf/options.i386 revision 1.77. 1998-04-20 13:52:44 +00:00
kato
890e12c6b0 Make EPSON_BOUNCEDMA a new-style option. 1998-03-17 09:11:03 +00:00