Commit Graph

6234 Commits

Author SHA1 Message Date
Jordan K. Hubbard
93740fb962 Working kernel tags!
Submitted by:	Craig Leres <leres@ee.lbl.gov>
PR:		2806
1999-07-02 04:00:01 +00:00
Jordan K. Hubbard
739e3bdcf8 127 fire Firewire driver <ikob@koganei.wide.ad.jp> 1999-07-02 02:49:24 +00:00
Jordan K. Hubbard
4f018929d4 Remove the now-bogus comment about using iosiz with npx0 for memory
sizing - environment does this properly  now.  Thanks, Peter!
1999-07-01 18:39:23 +00:00
Peter Wemm
938aa32a80 Look up the kernel environment for MAXMEM as a final override for the
memory size.  If somebody wants to change the name, fine - I used this
since it's consistant with the config variable it replaces.
This is intended to replace the npx0 msize hack (which no longer works).
1999-07-01 18:33:22 +00:00
Peter Wemm
6aef9dc690 Move kern_envp and preload initialization a little earlier so that we
can do a getenv_int() inside the memory sizing routines to override the
memory limit.
1999-07-01 18:27:15 +00:00
Peter Wemm
261eb922d9 Fix some warnings, unused functions etc. 1999-07-01 15:05:11 +00:00
Peter Wemm
9c8b8baa38 Slight reorganization of kernel thread/process creation. Instead of using
SYSINIT_KT() etc (which is a static, compile-time procedure), use a
NetBSD-style kthread_create() interface.  kproc_start is still available
as a SYSINIT() hook.  This allowed simplification of chunks of the
sysinit code in the process.  This kthread_create() is our old kproc_start
internals, with the SYSINIT_KT fork hooks grafted in and tweaked to work
the same as the NetBSD one.

One thing I'd like to do shortly is get rid of nfsiod as a user initiated
process.  It makes sense for the nfs client code to create them on the
fly as needed up to a user settable limit.  This means that nfsiod
doesn't need to be in /sbin and is always "available".  This is a fair bit
easier to do outside of the SYSINIT_KT() framework.
1999-07-01 13:21:46 +00:00
Alan Cox
f155afbeb2 An SMP-specific change: Remove unnecessary lock acquires and releases
surrounding critical sections that consist of (1) a single read or
(2) a single locked RMW operation.

(Thanks to thomma@slip.net (Tamiji Homma) for helping to test
these changes.)
1999-06-30 03:39:29 +00:00
Peter Wemm
28e1b413d8 sscape_mss is supposed to work.. 1999-06-29 21:53:59 +00:00
Peter Wemm
9fefb84af6 Drop old-scsi drivers (was commented out) od0 and (not commented) sctarg0 1999-06-29 21:52:07 +00:00
Matthew Hunt
ba965cf7cc Correct spelling of NMBCLUSTERS in a comment.
Submitted by:	Peter Radcliffe <pir@pir.net>
1999-06-29 19:06:16 +00:00
Peter Wemm
cc6c2ad06f With asbestos suit on, make the options indenting a little more consistant
so that it doesn't screw up the alignment when commenting out an entry.
Also dequote two entries that do not need it.
1999-06-29 18:58:27 +00:00
Peter Wemm
1f06573d89 Put on my asbestos suit and attempt to tidy up and add some simple docs
or notes to make it much more obvious what things are for people who
have not committed LINT to memory yet.
1999-06-29 18:55:53 +00:00
Kazutaka YOKOTA
21b1c99f43 idev->id_irq is an interrupt MASK, not an interrupt number.
Thus, we need to convert the mask to the number (by ffs()) when
writing back this value to the resource in save_resource().
1999-06-29 17:37:44 +00:00
Kazutaka YOKOTA
eaad27d4ad Keyboard allocation/deallocation fix.
- Do not try to allocate a keyboard in pccnprobe() when probing the vt
  driver for the kernel console.  Rather, allocate a keyboard when
  initializing the vt driver in pccninit().
- Release the keyboard in pccnterm().
- Don't try to read from the keyboard, if it is not present.
1999-06-29 17:36:20 +00:00
Peter Wemm
aa653b8fdd (mostly) fix ordering. 1999-06-29 16:14:20 +00:00
Luoqi Chen
bc3101cc77 Save common_tssd before it's loaded and the busy bit set.
Submitted by:	bde
1999-06-28 15:34:54 +00:00
Peter Wemm
e293ac59c6 Fix page fault in visual userconfig's save code. (I only use normal
userconfig, my original tweaks to visual mode were not well tested)

Submitted by:	Peter Holm <peter@holm.cc>
1999-06-28 12:07:36 +00:00
Peter Wemm
320138da4c Use the same -UKERNEL strategy as the alpha to avoid the inlines etc. 1999-06-28 09:21:41 +00:00
Peter Wemm
eb7fc512af Don't #include i386/isa/isa_dma.h - it's in isa/isavar.h now. This
driver is probably not far from being MI now anyway.
1999-06-28 09:19:58 +00:00
Peter Wemm
75f83872e2 Tweak include ordering so sys/systm.h is before sys/buf.h to keep buf.h's
inlines happy.
1999-06-28 09:12:46 +00:00
Poul-Henning Kamp
46d2febf9d Hmm, might as well make all of BEFORE_DEPEND first in case make depend
wasn't run.
1999-06-28 07:19:51 +00:00
Poul-Henning Kamp
d86578de9d Also make pci_if.h early if make depend wasn't run. 1999-06-28 07:10:55 +00:00
Poul-Henning Kamp
85a96bc645 Make bus_if.h and device_if.h as early as possible if make depend hasn't
been run.
1999-06-28 07:06:21 +00:00
Alan Cox
fd56d8b7fe An SMP-specific change: Remove an unnecessary lock acquire and release
from every system call.  (Storing a 32-bit constant is inherently
atomic.)

Reviewed by:	Matthew Dillon <dillon@apollo.backplane.com>
1999-06-27 21:31:43 +00:00
Matt Jacob
b5f3861b6f add description of Qlogic ISP FC Full Duplex option 1999-06-27 19:35:23 +00:00
Peter Wemm
e66b7bac41 Shut up gcc. 1999-06-27 09:08:48 +00:00
Peter Wemm
82e4c0061b Quieten some warnings as a result of changes in ls_items[] constness over
time.
1999-06-26 12:19:03 +00:00
Kirk McKusick
67812eacd7 Convert buffer locking from using the B_BUSY and B_WANTED flags to using
lockmgr locks. This commit should be functionally equivalent to the old
semantics. That is, all buffer locking is done with LK_EXCLUSIVE
requests. Changes to take advantage of LK_SHARED and LK_RECURSIVE will
be done in future commits.
1999-06-26 02:47:16 +00:00
Jonathan Lemon
7eb56d9409 Fix warning message; that was 4GB, not 2GB. I apparently can't do
arithmetic today.
1999-06-24 20:53:24 +00:00
Jonathan Lemon
4547fffaa1 Explicitly ignore any memory > 2GB, we don't support it yet. 1999-06-24 20:47:11 +00:00
Jonathan Lemon
8fa445082f Only include AMD wt_alloc routines if I586_CPU is defined. Fixes
CPU_WT_ALLOC for cyrix chips.

Submitted by:	"Brian Smith" <dbsoft@technologist.com>
1999-06-24 20:08:56 +00:00
Jonathan Lemon
13066c5f3b Add ida/id lines 1999-06-24 03:54:54 +00:00
Brian Feldman
9840e7cb5a This commit gives support for the Rise mP6 CPU. It has two changes:
1. Rise is recognized in identdcpu.c.
	2. The TSC is not written to. A workaround for the CPU bug is being
	   applied to clock.c (the bug being that the mP6 has TSC enabled
	   in its CPUID-capabilities, but it only supports reading it. If we
	   try to write to it (MSR 16), a GPF occurs.) The new behavior is that
	   FreeBSD will _not_ zero the TSC. Instead, we do a bit of 64-bit
	   arithmetic.

Reviewed by:	msmith
Obtained from:	unfurl & msmith
1999-06-24 03:48:25 +00:00
Jonathan Lemon
db57feb70b Compaq Smart RAID driver for -current. Based on the original ida.c
driver by Mark Dawson.  This probably needs some work, but is stable
enough to boot a RAID-only configuration, and survive `make world'.
1999-06-24 03:33:30 +00:00
Mike Smith
0f17f360a5 From the submitter:
wfd driver code tries to give wd driver first crack at ioctl's,
    but incorrectly interprets internal error and never gets to send
    eject to ATAPI device.

(this is fixed in the atapi-fd driver)

PR:		kern/12218
Submitted by:	Simon Walton <simonw@cinesite.com>
1999-06-24 03:09:11 +00:00
Mike Smith
d42c1ee5c3 Changes in the way that the APs are started appears to have removed the
problem with having more CPUs than NCPU.

PR:		kern/4255
Submitted by:	peter
1999-06-23 23:02:38 +00:00
Luoqi Chen
541e018708 Do not setup 4M pdir until all APs are up. 1999-06-23 21:47:24 +00:00
Mike Smith
b9ab2461b6 Remove an unnecessary panic when sparse PCI bus numbering is encountered.
This is found eg. on some Compaq  Proliant systems.

Submitted by:	peter
1999-06-22 20:54:25 +00:00
Kazutaka YOKOTA
6e8394b8ba The second phase of syscons reorganization.
- Split syscons source code into manageable chunks and reorganize
  some of complicated functions.

- Many static variables are moved to the softc structure.

- Added a new key function, PREV.  When this key is pressed, the vty
  immediately before the current vty will become foreground.  Analogue
  to PREV, which is usually assigned to the PrntScrn key.
  PR: kern/10113
  Submitted by: Christian Weisgerber <naddy@mips.rhein-neckar.de>

- Modified the kernel console input function sccngetc() so that it
  handles function keys properly.

- Reorganized the screen update routine.

- VT switching code is reorganized.  It now should be slightly more
  robust than before.

- Added the DEVICE_RESUME function so that syscons no longer hooks the
  APM resume event directly.

- New kernel configuration options: SC_NO_CUTPASTE, SC_NO_FONT_LOADING,
  SC_NO_HISTORY and SC_NO_SYSMOUSE.
  Various parts of syscons can be omitted so that the kernel size is
  reduced.

  SC_PIXEL_MODE
  Made the VESA 800x600 mode an option, rather than a standard part of
  syscons.

  SC_DISABLE_DDBKEY
  Disables the `debug' key combination.

  SC_ALT_MOUSE_IMAGE
  Inverse the character cell at the mouse cursor position in the text
  console, rather than drawing an arrow on the screen.
  Submitted by: Nick Hibma (n_hibma@FreeBSD.ORG)

  SC_DFLT_FONT
  makeoptions "SC_DFLT_FONT=_font_name_"
  Include the named font as the default font of syscons.  16-line,
  14-line and 8-line font data will be compiled in.  This option replaces
  the existing STD8X16FONT option, which loads 16-line font data only.

- The VGA driver is split into /sys/dev/fb/vga.c and /sys/isa/vga_isa.c.

- The video driver provides a set of ioctl commands to manipulate the
  frame buffer.

- New kernel configuration option: VGA_WIDTH90
  Enables 90 column modes: 90x25, 90x30, 90x43, 90x50, 90x60.  These
  modes are mot always supported by the video card.
  PR: i386/7510
  Submitted by: kbyanc@freedomnet.com and alexv@sui.gda.itesm.mx.

- The header file machine/console.h is reorganized; its contents is now
  split into sys/fbio.h, sys/kbio.h (a new file) and sys/consio.h
  (another new file).  machine/console.h is still maintained for
  compatibility reasons.

- Kernel console selection/installation routines are fixed and
  slightly rebumped so that it should now be possible to switch between
  the interanl kernel console (sc or vt) and a remote kernel console
  (sio) again, as it was in 2.x, 3.0 and 3.1.

- Screen savers and splash screen decoders
  Because of the header file reorganization described above, screen
  savers and splash screen decoders are slightly modified.  After this
  update, /sys/modules/syscons/saver.h is no longer necessary and is
  removed.
1999-06-22 14:14:06 +00:00
Peter Wemm
8d5481c633 Handle suspend/resume methods
Obtained from: Warner Losh <imp@freebsd.org>
1999-06-22 09:44:00 +00:00
Greg Lehey
12a7982c45 Correct description of Vinum. 1999-06-20 04:35:22 +00:00
Jordan K. Hubbard
d571daa00c Clean up some of the documentation at the top. 1999-06-20 03:36:46 +00:00
Robert Nordier
ec4e5afb48 Goodbye to vaules, becasue, similiar, backgroud, aquired, freelisat, etc. 1999-06-19 20:20:52 +00:00
Brian Feldman
66e98eef2b K6-family MTRR support
This is tested, but I really can't say whether it works entirely. I
don't know exactly what to look for when testing it. So let's say this
is open for testing. Send any results to green@FreeBSD.org

Reviewed by:	msmith (long ago)
1999-06-18 19:56:02 +00:00
Brian Feldman
6b32f7692f Harmless change to prevent possible problems in the future. I made
sure that i686_mem was only used when
	1. CPUID had MTRR set (this was there before)
	2. the CPU was GenuineIntel (not there)
	3. the CPU is a 686 (also not there)

This should prevent any problems with CPUs that set MTRR but aren't
compatibile with Intel's interface (none that I know of yet.)
1999-06-18 19:24:40 +00:00
Bruce Evans
50045fbc7c Changed the global `idt' from an array to a pointer so that npx.c
automatically hacks on the active copy of the IDT if f00f_hack()
has changed it.  This also allows simplifications in setidt().
This fixes breakage of FP exception handling by rev.1.55 of
sys/kernel.h.  FP exceptions were sent to npx.c's probe handlers
because npx.c "restored" the old handlers to the wrong copy of the
IDT.  The SYSINIT for f00f_hack() was purposely run quite late to
avoid problems like this, but it is bogusly associated with the
SYSINIT for proc0 so it was moved with the latter.

Problem reported and fix tested by:  Martin Cracauer <cracauer@cons.org>
1999-06-18 14:32:21 +00:00
Mark Murray
eb9ae2c0ce Add a kernel config for PC-Card machines. This is part of the
(safe) PAO integration.

Submitted by:	Tatsumi HOSOKAWA
1999-06-17 23:53:20 +00:00
Tor Egge
a31bad69da Clean up bitrot in interrupt tracing code. 1999-06-16 03:53:52 +00:00
Julian Elischer
28808d20e9 Add a couple of command definitions.
Also add offsets into the IDE parameter block so that it is humanly
possible to match the structure to the manufacturer's documentation.
(basically this is just changes to comments)
1999-06-15 23:13:09 +00:00