Commit graph

5666 commits

Author SHA1 Message Date
Eivind Eklund 54da5aa1ba Move a couple of functions to make __inline work. While I'm here,
split a couple of function declarations to make the style internally
consistent.
1999-01-12 01:29:45 +00:00
Eivind Eklund a4a4aa0dd9 Add a prototype to silence warnings. 1999-01-12 01:28:00 +00:00
Eivind Eklund b6fb09837c Remove/comment out unused functions. 1999-01-12 01:17:01 +00:00
Eivind Eklund a0359a7c84 Silence warnings by cleaning up xxxintr types 1999-01-12 01:04:38 +00:00
Eivind Eklund d20a303759 Silence warnings. 1999-01-12 00:36:36 +00:00
Eivind Eklund 0044fd3054 Clean up warnings; a couple of these came because of genuine errors in
parameter passing (passing a pointer to u_short where a pointer to int
is expected), for which the bugs have been fixed.
1999-01-12 00:27:43 +00:00
Eivind Eklund 1950f59007 Silence warnings. 1999-01-12 00:19:33 +00:00
Eivind Eklund fd8d7e3875 Silence warnings by removing unused convenience function and
globalizing debugging functions.
1999-01-12 00:17:53 +00:00
Julian Elischer 8cc777e336 Add support for the Cyrix Cx5530 PCI/ISA bridge which also includes
a PCI UDMA IDE controller.
1999-01-11 22:14:23 +00:00
Eivind Eklund e81feb8a84 SLOW_VGA -> VGA_SLOW_IOACCESS here, too. 1999-01-11 17:44:06 +00:00
Mike Smith 096d55fc13 Fix linux sendmsg() emulation
Submitted by:	Brian Feldman <green@unixhelp.org>
1999-01-11 05:28:44 +00:00
Kazutaka YOKOTA e9f2a6a839 Don't refer to i386/isa/kbdio.h anymore. Use dev/kbd/atkbdcreg.h instead. 1999-01-11 03:50:01 +00:00
Kazutaka YOKOTA 2ad872c579 The first stage of console driver reorganization: activate new
keyboard and video card drivers.

Because of the changes, you are required to update your kernel
configuration file now!

The files in sys/dev/syscons are still i386-specific (but less so than
before), and won't compile for alpha and PC98 yet.

syscons still directly accesses the video card registers here and
there; this will be rectified in the later stages.
1999-01-11 03:18:56 +00:00
Nick Hibma 34dced2c1a Added file handling to ulpt (USB printer) driver 1999-01-11 00:03:59 +00:00
Eivind Eklund dcda29feba Use truncate() instead of otruncate() - step on the way to stopping
the linulator from depending on COMPAT_43.
1999-01-10 23:15:35 +00:00
Nicolas Souchu a6de7b79d9 Forgotten options needed to build last ppbus commit.
Submitted by: "D. Rock" <rock@wurzelausix.CS.Uni-SB.DE>
1999-01-10 17:41:33 +00:00
Nicolas Souchu a7006f894f Fix broken low level ppb_rxxx() return type: char becomes u_char.
Submitted by: Bruce Evans <bde@zeta.org.au>

Some ppb bootup printfs simplified.
1999-01-10 16:41:14 +00:00
Nicolas Souchu bc35c17446 Major ppbus commit with:
+ ECP parallel port chipset FIFO detection
	+ DMA+FIFO parallel I/O handled as chipset specific
	+ nlpt updated in order to use the above enhanced parallel I/O.
	  Use 'lptcontrol -e' to use enhanced I/O
	+ Various options documented in LINT
	+ Full IEEE1284 NIBBLE and BYTE modes support. See ppbus(4) for
	  an overview of the IEEE1284 standard
	+ Detection of PnP parallel devices at boot
	+ Read capability added to nlpt driver to get IEEE1284 compliant
	  printer status with a simple 'cat /dev/lpt0'
	+ IEEE1284 peripheral emulation added to BYTE mode. Two computers
	  may dialog according to IEEE1284 signaling method.
	  See PERIPH_1284 option and /sys/dev/ppbus/ppi.c

All this code is supposed to provide basic functions for IEEE1284 programming.
ppi.c and nlpt.c may act as examples.
1999-01-10 12:04:56 +00:00
Poul-Henning Kamp 86415b71f9 Back out last change to sysctl.
It was nay'ed before committing on the grounds that this is not
the way to do it, and has been decided as such several times in
the past.

There is not point in loading gobs of ascii into the kernel when
the only use of that ascii is presentation to the user.

Next thing we'd be adding all section 4 man pages to the loaded
kernel as well.

The argument about KLD's is bogus, klds can store a file in
/usr/share/doc/sysctl/dev/foo/thisvar.txt with a description and
sysctl or other facilities can pick it up there.

Proper documentation will take several K worth of text for many
sysctl variables, we don't want that in the kernel under any
circumstances.

I will welcome any well thought out attempt at improving the
situation wrt. sysctl documentation, but this wasn't it.
1999-01-10 07:45:33 +00:00
Dag-Erling Smørgrav 302a110207 Add kernel support for sysctl descriptions. The NO_SYSCTL_DESCRIPTIONS option
disables them if they're not wanted; in that case, sysctl_sysctl_descr will
always return an empty string.

Apporved by:	jkh
1999-01-10 05:33:43 +00:00
John Polstra f92bdbd010 Switch to using ".So" as the extension for PIC object files rather
than ".so".  The old extension conflicted with well-established
naming conventions for dynamically loadable modules.

The "clean" targets continue to remove ".so" files too, to deal with
old systems.
1999-01-09 21:51:00 +00:00
Dmitrij Tejblum c197d61d7a Oops --<, replace 1.216 with a version that actually check pv_entries (and
was tested for month or two in production).

Noticed by:	Stephen McKay

Stephen also suggested to remove the complication at all. I don't do it as
it would be backout of a large part of 1.190 (from 1998/03/16)...
1999-01-09 21:41:22 +00:00
Bill Paul 31188d61c1 Add driver support (and man page) for PCI fast ethernet cards based
on the ASIX AX88140A chip. Update /sys/conf/files, RELNOTES.TXT,
/sys/i388/i386/userconfig.c, sysinstall/devices.c, GENERIC and LINT
accordingly.

For now, the only board that I know of that uses this chip is the
Alfa Inc. GFC2204. (Its predecessor, the GFC2202, was a DEC tulip card.)
Thanks again to Ulf for obtaining the board for me. If anyone runs
across another, please feel free to update the man page and/or the
release notes. (The same applies for the other drivers.)

FreeBSD should now have support for all of the DEC tulip workalike
chipsets currently on the market (Macronix, Lite-On, Winbond, ASIX).
And unless I'm mistaken, it should also have support for all PCI fast
ethernet chipsets in general (except maybe the SMC FEAST chip, which
nobody seems to ever use, including SMC). Now if only we could convince
3Com, Intel or whoever to cough up some documentation for gigabit
ethernet hardware.

Also updated RELNOTEX.TXT to mention that the SVEC PN102TX is supported
by the Macronix driver (assuming you actually have an SVEC PN102TX with
a Macronix chip on it; I tried to order a PN102TX once and got a box
labeled 'Hawking Technology PN102TX' that had a VIA Rhine board inside
it).
1999-01-09 18:12:08 +00:00
Nicolas Souchu bf896bd0e2 Change /dev/smb and /dev/iic interface to allow user programs to interact with
devices dynamically. That means,

        + only one /dev/iic or /dev/smb device for each smb/iic bus to access
        + I2C/SMB device address must be given to any ioctl
        + new devices may be plugged and accessed after boot, which was
          impossible previously (device addresses were hardcoded into
          the kernel)
1999-01-09 18:08:24 +00:00
Bruce Evans 1dfc2ef25c Removed a stray label that broke compiling in the (elf && profiling) case.
PR:		9369
Submitted by:	Assar Westerlund <assar@sics.se>
1999-01-09 17:29:38 +00:00
Bruce Evans b5be346ff7 Fixed switching between consoles (sc0, vt0 or sioN) in userconfig.
Broken in:		rev.1.315
1999-01-09 15:41:49 +00:00
Bruce Evans b9c576c894 Fixed pedantic syntax errors caused by a trailing semicolon in a macro
definition.
1999-01-09 14:07:37 +00:00
Bruce Evans b2aa114118 Removed the asm version of translate_bytes(). When both the C
version and the asm version are inlined, and everything is cached,
the asm version is 1.75 times slower than the C version on P5's.
On K6's, it is only 1.25 times slower.
1999-01-09 13:50:52 +00:00
Bruce Evans d18c16d45b Removed buggy, `#if 0'ed asm version of translate_bytes() instead of
fixing it.  See rev.1.22 of ../sound/audio.c for fixes.  When both
the C version and the asm version are inlined, and everything is cached,
the asm version is 1.75 times slower than the C version on P5's.  On
K6's, it is only 1.25 times slower.
1999-01-09 13:43:09 +00:00
Bruce Evans 47886981ee Don't put operands in clobber lists, since this is dubious for old
versions of gcc and broken for current versions of egcs.  The asm
here (for translate_bytes()) is now an interesting example of one
that needs to be volatile to work.

Fixed missing "memory" in the clobber list for translate_bytes().

Submitted by:	"John S. Dyson" <dyson@iquest.net> but rewritten by me
1999-01-09 13:27:37 +00:00
Bruce Evans c65da0c71e Don't put operands in clobber lists, since this is dubious for old
versions of gcc and broken for current versions of egcs.

Cleaned up the asm statement for do_cpuid() a little.

Submitted by:	"John S. Dyson" <dyson@iquest.net> but rewritten by me
1999-01-09 13:07:18 +00:00
Bruce Evans 896763fa9e Don't put operands in clobber lists, since this is dubious for old
versions of gcc and broken for current versions of egcs.

Submitted by:	"John S. Dyson" <dyson@iquest.net> but rewritten by me
1999-01-09 13:00:27 +00:00
Kazutaka YOKOTA 617b908036 Add the new keyboard driver and video card driver. They will be
used by console drivers.

(They are not yet activated yet.  Wait for announcement later.)
1999-01-09 02:44:50 +00:00
Andrzej Bialecki ed70fbe40c Fix faulty logic in handling userconfig_script, INTRO_USERCONFIG and
RB_CONFIG.

Now, the code should do the right thing in the following cases, when
kernel is compiled with INTRO_USERCONFIG:

* when booted without userconfig_script and without RB_CONFIG, present
  intro screen, and wait for user input.

* when booted with userconfig_script and without RB_CONFIG, DON'T present
  intro screen unless explicitly asked in userconfig_script, basing on
  assumption that if a user loads userconfig_script, (s)he already
  decided what parameters to configure. Proceed with booting.

* when booted without userconfig_script, and with RB_CONFIG, enter
  configuration utility and wait for user input.

* when booted with userconfig_script, and with RB_CONFIG, execute all
  commands from userconfig_script, and DON'T leave the config utility,
  but wait for user input.

And finally, regardless of the combination of the above parameters,
when intro screen is invoked either first or next times, and user
chooses to go back to CLI interface, unblock the quit command.
1999-01-08 21:00:26 +00:00
Bruce Evans f48bbd5fb8 Fixed some style bugs. Clarified a comment. 1999-01-08 19:51:02 +00:00
Bruce Evans 2a32c15f45 Unspammed includes in <machine/cpufunc.h> in the !SMP case. Partially
unspammed them in the SMP case.
1999-01-08 19:17:49 +00:00
Eivind Eklund 5526d2d920 Split DIAGNOSTIC -> DIAGNOSTIC, INVARIANTS, and INVARIANT_SUPPORT as
discussed on -hackers.

Introduce 'KASSERT(assertion, ("panic message", args))' for simple
check + panic.

Reviewed by:	msmith
1999-01-08 17:31:30 +00:00
Bruce Evans 68ba369606 Moved declarations related to copying and zeroing to the right place. 1999-01-08 16:29:59 +00:00
Eivind Eklund f8f8d7afe8 Instead of providing bad instructions here, point people at the
appropriate docs.

Prodded by:	Sheldon Hearn <axl@iafrica.com>'s message in -current
1999-01-08 16:04:18 +00:00
Luoqi Chen fcf37ac337 Allocate kernel page table object (kptobj) before any kmem_alloc calls.
On a system with a large amount of ram (e.g. 2G), allocation of per-page
data structures (512K physical pages) could easily bust the initial kernel
page table (36M), and growth of kernel page table requires kptobj.
1999-01-08 14:20:54 +00:00
Kazutaka YOKOTA 2c9619f2a6 Update #ifdef directive.
# I forgot this bit when I committed VESA KLD update a few days ago ;-<
1999-01-08 12:57:06 +00:00
Dmitrij Tejblum 6143bceb3f Make pmap_ts_referenced check more than 1 pv_entry. (One should be carefull
when move elements to the tail of a list in a loop...)
1999-01-07 22:15:51 +00:00
Kazutaka YOKOTA fc847f6651 Remove a hard-coded table of kernel console I/O functions exported
from sc, vt and sio drivers.  Use instead a linker_set to collect them.

Staticize ??cngetc(), ??cnputc(), etc functions in sc and vt drivers.
We must still have siocngetc() and siocnputc() as globals because they
are directly referred to by i386-gdbstub.c :-(

Oked by: bde
1999-01-07 14:14:24 +00:00
Andrzej Bialecki cf93ca2686 When compiled with INTRO_USERCONFIG, skip the intro screen anyway if we
already loaded and interpreted userconfig_script. Otherwise, when using
such kernel system would always block waiting for user input in UserConfig,
while the intention was to avoid this by having userconfig_script.

Reviewed by:	msmith
1999-01-07 09:49:28 +00:00
Peter Wemm c30fe42c78 Flip the kernel default to ELF.. Add a test to try and warn people
that they might be about to blow their feet off if they have not been
reading their mail.  I don't know if or how well this will work, but it's
worth a try.
1999-01-07 06:52:41 +00:00
Peter Wemm 6c7178bdfb OBJFORMAT_DEFAULT = elf now. (this is where /usr/bin/objformat and
libc/gen/getobjformat.c get their default from)
1999-01-07 06:35:18 +00:00
Julian Elischer 2267af789e Add (but don't activate) code for a special VM option to make
downward growing stacks more general.
Add (but don't activate) code to use the new stack facility
when running threads, (specifically the linux threads support).
This allows people to use both linux compiled linuxthreads, and also the
native FreeBSD linux-threads port.

The code is conditional on VM_STACK. Not using this will
produce the old heavily tested system.

Submitted by: Richard Seaman <dick@tar.com>
1999-01-06 23:05:42 +00:00
Andrzej Bialecki cede0c3b9d Add new sysctl machdep.uc_devlist. It allows to cleanly retrieve the
list of devices which has been changed in UserConfig, without resorting
to reading /dev/kmem.

The data returned consist of series of struct isa_device and
char dev_name[8].

Ok'd by:	jkh
1999-01-06 09:09:22 +00:00
Jordan K. Hubbard d8befbbfcc Don't build biosboot by default - there's no point now that nothing
looks for /usr/mdec/boot{1,2}.  The other stuff in here is probably
equally useless/pointless but I'm going to not worry about it for now.
1999-01-06 08:46:26 +00:00
Kazutaka YOKOTA 2d15a1badc Move IO_PSMSIZE from kbdio.h to isa.h. I thought I did this a long time
ago...

While I am here, correct the values for IO_MDASIZE and IO_CGASIZE; they
should be 12 rather than 16.
1999-01-06 05:40:01 +00:00