Commit Graph

5670 Commits

Author SHA1 Message Date
yokota
ae16d918a3 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
n_hibma
e3fccd21c1 Added file handling to ulpt (USB printer) driver 1999-01-11 00:03:59 +00:00
eivind
0524512404 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
nsouch
25aac378ca 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
nsouch
15e93cc903 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
nsouch
88ae26fef6 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
phk
5be9d2c45d 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
des
710c564eff 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
jdp
ffcc901f03 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
dt
fc47434cee 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
wpaul
84a9b3dd33 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
nsouch
e670443158 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
bde
f2652b2b71 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
bde
98e70033b2 Fixed switching between consoles (sc0, vt0 or sioN) in userconfig.
Broken in:		rev.1.315
1999-01-09 15:41:49 +00:00
bde
7cf9f70ba5 Fixed pedantic syntax errors caused by a trailing semicolon in a macro
definition.
1999-01-09 14:07:37 +00:00
bde
69095f699e 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
bde
2616cfa856 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
bde
4c2d702e3a 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
bde
97a75ce742 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
bde
cea612c782 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
yokota
f10c5df435 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
abial
f4a65bb45d 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
bde
b823adf4be Fixed some style bugs. Clarified a comment. 1999-01-08 19:51:02 +00:00
bde
e53595f704 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
a8dc66f457 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
bde
29d4498b94 Moved declarations related to copying and zeroing to the right place. 1999-01-08 16:29:59 +00:00
eivind
422cb2b23a 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
362bef31c5 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
yokota
3f69afe7b1 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
dt
6198a10485 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
yokota
9625424b5f 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
abial
2994145c24 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
ea7fa79687 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
7109145cbd 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
4666ac5027 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
abial
cfa7b9f775 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
jkh
8b25eb3e6f 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
yokota
4546265cab 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
yokota
5ca24859b5 Assign CDEV 112 to the keyboard driver. 1999-01-06 05:35:39 +00:00
luigi
7593ef4cbd Fix YMF719 detection (report by jose@we.lc.ehu.es).
Fix compile problems without "controller pnp0"
(fix by German Tischler)
1999-01-04 20:06:38 +00:00
luigi
ca08832936 Bring in ad1816 patches from German Tischler.
Fix 'device not configured' problem that people were experiencing
when only PCI devices are present.
1999-01-04 10:40:14 +00:00
n_hibma
ea1bd971b4 Corrected the major number for usb and added ums as major 111 1999-01-03 16:48:03 +00:00
kato
9ace34cb3e - Remove bus-dependent addresses from `ic' file.
- Special registers of IO-DATA device's RSA series are defined in
  ic/rsa.h (new file).

Pointed out by:	Bruce Evans <bde@zeta.org.au>
Submitted by:	Takahashi Yoshihiro <nyan@wyvern.cc.kogakuin.ac.jp>
1999-01-03 15:57:02 +00:00
jkh
ed5bf3060a Revert r1.4 - I was confused as to its real meaning.
Noted by:	bde
1999-01-03 07:38:15 +00:00
kato
0f0d2d450c Support following devices:
- on board 2nd CCU
  - Midori Elec. MDC-926Rs
  - Midori-Hayes ESP98
  - NEC PC-9861K, PC-9801-101 PC-9801-120
  - Melco IND-SP and IND-SS
  - PIO-9032A/B/C
  - B98-01 and B98-02
  - IO-data device RSA-98II and RSA-98III
  - MC-16550
  - MC-RS98
  - Media Inteligent RSB-2000/3000 and RSB-384
  - PCMCIA modem card

Submitted by:	Takahashi Yoshihiro <nyan@wyvern.cc.kogakuin.ac.jp>
1999-01-03 05:03:47 +00:00
jkh
468764485d Clean up some more residual /usr/mdec references. I left all the
extra rbootd/boot rom cruft pointing at /usr/mdec since it either
doesn't exist or doesn't work anyway, so who cares? :)
1999-01-03 02:18:58 +00:00
hoek
746b760ccd Extraneous space. 1999-01-02 17:11:45 +00:00
luigi
73e4a133ff unbreak devfs support after wrong cut&paste...
ReportedBy: Louis A. Mamakos
1999-01-01 14:53:31 +00:00
des
e28b0e4fb9 Correct typo in macro name. 1999-01-01 14:38:30 +00:00
bde
85cf5d9658 Minor English and spelling fixes. 1999-01-01 14:21:13 +00:00