Commit Graph

716 Commits

Author SHA1 Message Date
kleink
546365a27e _POSIX_SOURCE -> _POSIX_C_SOURCE 1998-08-06 11:25:04 +00:00
kleink
e2a897639d KNF (only include one of <sys/{param,types}.h>). 1998-08-05 16:50:39 +00:00
thorpej
3ff8e6493a Don't cast the null residual pointer passed to vn_rdwr(). 1998-07-28 18:34:52 +00:00
mycroft
da2e61d160 Delint. 1998-07-27 13:55:32 +00:00
ragge
a799083fba Fix netboot support for 3100/m76 which uses diagmem for its lance buffers. 1998-07-26 09:01:23 +00:00
drochner
49bb9d8214 adapt to LANCE driver split 1998-07-21 17:36:01 +00:00
ragge
50d1442817 Fix PMAP_NEW and make it the default. 1998-07-18 20:35:14 +00:00
thorpej
d47ea67c1f Define one page free list, and put all pages on it. 1998-07-08 04:43:18 +00:00
jonathan
011f2bda08 defopt NS, NSIP. 1998-07-05 06:49:00 +00:00
jonathan
5c0c5dd0b4 defopt ISO TPIP. 1998-07-05 04:37:35 +00:00
jonathan
fe484937cf defopt LLC 1998-07-05 03:14:41 +00:00
jonathan
8db0fcdbf7 defopt CCITT. 1998-07-05 02:12:22 +00:00
jonathan
3751946b97 defopt INET, NETATALK. 1998-07-05 00:51:04 +00:00
jonathan
466e784ee1 defopt DDB. 1998-07-04 22:18:13 +00:00
jonathan
f31b504207 Change not-in-tree drier stubs to use needs-flag, not needs-count,
and use needs-count only where acutally used (qvss, qdss, ts-11)
1998-07-02 07:55:29 +00:00
ragge
1aab7e8c23 Added boot program support for the SGEC Ethernet controller, present on
some VAX 4000 maachines. Written by Jay Maynard. (jmaynard@phoenix.net)
1998-07-01 10:52:10 +00:00
ragge
7b2ca7e1ba RPB number for SGEC Ethernet controller (ze). 1998-07-01 09:37:11 +00:00
ragge
518a9a5b6a Enable use of reversed and underlined text. The DEC Isolatin character
set now also work correctly. Add blinking cursor.
1998-06-30 11:29:37 +00:00
drochner
26e2c08399 add a dummy "mapchar" function (1:1 mapping, hope the font is isolatin) 1998-06-26 21:28:57 +00:00
lukem
bd8d501f7e remove options FIFO; it's now the default 1998-06-26 01:53:43 +00:00
thorpej
21592147a1 defopt COMPAT_ULTRIX 1998-06-25 23:27:56 +00:00
thorpej
971b8956ef defopt KTRACE 1998-06-25 21:18:11 +00:00
ragge
77a5ddd69a Fix more compile errors. Pointed out by David Brownlee. 1998-06-21 21:45:07 +00:00
drochner
4c45f96d05 adapt to wscons changes (character output call) 1998-06-20 21:56:40 +00:00
ragge
35e3b6dd86 Fix some compile-time warnings. Pointed out by David Brownlee. 1998-06-20 21:01:43 +00:00
ragge
a38dba55a5 Remove since long unused files. 1998-06-20 18:53:01 +00:00
ragge
abab40ee1c Don't try to configure QDSS console on KA650 until it's fixed. 1998-06-20 18:49:27 +00:00
ragge
fecd3f54fc Expand kmem map. 1998-06-20 18:47:33 +00:00
ragge
8458a9bd23 Support for glass tty on /m76. 1998-06-20 18:46:19 +00:00
ragge
05c6737a7e Fix after current DDB changes. 1998-06-20 18:45:40 +00:00
ragge
3b6ba87592 These files have never been used; remove them. 1998-06-20 18:44:16 +00:00
ragge
ec35b60cdb Fast fix to make VS keyboard work again after wscons changes.
XXX - This will be done in a better way in the future.
1998-06-20 18:42:50 +00:00
kleink
1fbd0b3749 GC the unused `physadr' type, which was not able to hold a complete physical
address on 2 architectures anyhow.  Also, move the definition of the `label_t'
type inside _KERNEL protection, since it is specific to the in-kernel
setjmp()/longjmp() implementations.
1998-06-14 20:09:22 +00:00
ragge
a4d0eae36b Add catch function for keyboard. 1998-06-14 11:52:35 +00:00
cgd
651b44e211 Rework the way kernel include files are installed. In the new method,
as with user-land programs, include files are installed by each directory
in the tree that has includes to install.  (This allows more flexibility
as to what gets installed, makes 'partial installs' easier, and gives us
more options as to which machines' includes get installed at any given
time.)  The old SYS_INCLUDES={symlinks,copies} behaviours are _both_
still supported, though at least one bug in the 'symlinks' case is
fixed by this change.  Include files can't be build before installation,
so directories that have includes as targets (e.g. dev/pci) have to move
those targets into a different Makefile.
1998-06-12 23:22:30 +00:00
ragge
b25b5bddd1 #ifdef _KERNEL whole this file. 1998-06-09 14:03:24 +00:00
ragge
f6a6201ac7 Bugfix; now VS3100/m76 also works. 1998-06-09 14:02:01 +00:00
ragge
8260bcaff5 Wall fixes. 1998-06-08 18:42:40 +00:00
ragge
3c3c83f7ad Bugfix: use of uninitialised variable that gcc didn't notice. 1998-06-08 15:04:26 +00:00
ragge
74b990a7b4 Identify 3100/m38 + /m48 1998-06-07 20:20:05 +00:00
ragge
d360348f52 DDB support on glass tty. Also smarter keyboard decoding. 1998-06-07 20:19:12 +00:00
ragge
2f1d0864fe UVM default on vax for now. 1998-06-07 18:39:15 +00:00
ragge
60530637e4 Enable use of secondary cache, if present. 1998-06-07 18:34:09 +00:00
ragge
1a900c4abc Init some variables to not get trash on the screen. 1998-06-07 18:32:04 +00:00
ragge
08079a8f21 Don't compile in any rasterconsole code. 1998-06-05 22:17:02 +00:00
ragge
88d55c928c Add virtual console support. 1998-06-05 22:02:56 +00:00
ragge
57ce421691 Clean upp system detect code. Enable primary cache on VS3100. 1998-06-04 19:42:14 +00:00
ragge
78ebccfc2d Rudimentary support for the VS3100 builtin graphics console. 1998-06-04 15:51:12 +00:00
thorpej
a7f360c6c9 Specify a non-profiling C rule. 1998-05-31 23:25:41 +00:00
kleink
a97fc2f180 If any of _ANSI_SOURCE, _POSIX_C_SOURCE or _XOPEN_SOURCE are defined, don't
provide any identifiers other than sig_atomic_t.
1998-05-25 20:59:01 +00:00
ragge
5fc912ddc9 Remove a forgotten debug printout. 1998-05-23 19:18:59 +00:00
ragge
b28c99b245 Fixed bug with lost characters in DDB output. 1998-05-23 12:49:30 +00:00
ragge
464d197e67 Remove unneccessary file. Remove stale dependency. Disable not-working
devices by default.
1998-05-22 09:59:55 +00:00
ragge
9251293f18 Remove unnecessary code for interrupt vector handling. 1998-05-22 09:49:07 +00:00
ragge
f4f1fcf563 Remove unnecessary code for interrupt vector handling. 1998-05-22 09:26:33 +00:00
ragge
d31979884b Unused file for now - no more runtime decisions! 1998-05-21 14:33:14 +00:00
ragge
6568bc224e Wall fix. 1998-05-21 13:16:14 +00:00
ragge
ce7c143e6c Rewrite the autoconf code for VS3000's.
XXX - no support for any disks at all yet.
1998-05-21 13:10:59 +00:00
ragge
dda2be85ff Small Wall fixes. 1998-05-21 13:06:24 +00:00
ragge
cd17c11c60 Support for DDB on DZ console. 1998-05-21 13:02:20 +00:00
thorpej
6626878e7b It is no longer necessary for pmap_pinit() and pmap_release() to be
pmap interface functions, as NetBSD no longer uses statically allocated
pmaps (except for the kernel pmap, which is special-cased anyhow).
1998-05-19 19:00:11 +00:00
ragge
3ebb9bfd11 Not used anymore when now using the dz11 driver. 1998-05-17 19:02:03 +00:00
ragge
baec63333c Mod~ify for new changes to lance/dz drivers. 1998-05-17 19:00:56 +00:00
ragge
4c217a5bcb Change to use newly committed ln- and dz-drivers. 1998-05-17 18:58:07 +00:00
ragge
25d68ddcde Add vax-hacked lance device driver for vaxstations.
XXX - This is temporary; will go away when the troubles with the
MI driver is fixed.
1998-05-17 18:55:30 +00:00
ragge
4a469a9149 Split the DZ11 driver into two parts; can now use the same driver on
both unibus/qbus devices and vaxstations.
1998-05-17 18:51:13 +00:00
kleink
687ea7404c Fix some arithmetics lossage on typeless pointers. 1998-05-08 16:55:15 +00:00
kleink
aa36ad1f55 Fix some arithmetics lossage on typeless pointers. 1998-05-07 21:01:41 +00:00
ragge
c085b89d78 Wall cleaning + a little better fault checking. 1998-05-03 13:22:01 +00:00
ragge
9aea445d54 Remove the ancient kernel-stack area at top of P1 region. Make PMAP_NEW
almost work. Also Wall cleaning.
1998-05-03 13:02:22 +00:00
ragge
9d5413a315 Enable -Wall -Wmissing-prototypes -Wstrict-prototypes. 1998-05-03 12:59:56 +00:00
thorpej
1686aca01d Pull in opt_gateway.h as appropriate. 1998-04-29 23:11:00 +00:00
kleink
a53c1863fe Provide definitions for intptr_t and uintptr_t, signed resp. unsigned integral
types large enough to hold any pointer.
1998-04-27 17:39:10 +00:00
ragge
470ec523f2 Wall cleaning. 1998-04-13 12:15:56 +00:00
ragge
4bcd8130fe t_wopen fixes. 1998-04-13 12:14:42 +00:00
ragge
eaeee62af2 Wall cleaning. 1998-04-13 12:10:26 +00:00
tv
b21bfbde11 Add -Wno-main conditional on compiler being gcc 2.8 or egcs. (This adds
a HAVE_GCC28 check-variable that can now be used to add other gcc-2.8
flags in cases where they may be useful, or to remove gcc 2.7.2 "bug
workaround" flags.)
1998-04-12 23:47:41 +00:00
jonathan
70f1f1a099 use dev/dec/lk201.h, fold back DELAY() changes from pmax lk201.c rev 1.7. 1998-03-22 09:37:47 +00:00
mycroft
0dae91d9af Eliminate uses of TS_WOPEN in hard-wired devices. 1998-03-21 22:52:59 +00:00
ragge
cad3cb3894 ubasetup() must be non-static. (used by QDSS) 1998-03-21 10:24:29 +00:00
ragge
cf02ad2bc9 Add support for QDSS graphic console. Code originated from 4.4BSD,
ported to NetBSD by Boris Gjenero <bgjenero@undergrad.math.uwaterloo.ca>
1998-03-21 10:02:39 +00:00
ragge
52defbf438 Use rom routines on MicroVAX II, so that the QDSS/QVSS display will
be used if present. Fix provided by Boris Gjenero.
1998-03-20 16:36:20 +00:00
bouyer
9f50fca1fd Add commented out "options FFS_EI" 1998-03-18 16:34:41 +00:00
ragge
52fbd35380 Add support for "root on qe". 1998-03-13 11:40:19 +00:00
ragge
51964fa1e8 Standalone routine for DEQNA, written by Roar Thronaes. 1998-03-11 22:13:55 +00:00
ragge
8e2874bf64 Support for UVM on VAXen. 1998-03-02 17:00:00 +00:00
ragge
ad1f451760 Move the boot program higher up in memory; to allow loading of bigger kernels. 1998-02-28 12:10:13 +00:00
ragge
1e3fb9012d Type fix so that time get read correct on VS2000, from Ken Wellsch. 1998-02-22 14:19:39 +00:00
mycroft
533de19431 Remove random.s. 1998-02-22 08:51:04 +00:00
mycroft
dcfb8695ab Move to libkern. 1998-02-22 08:50:17 +00:00
thorpej
772da350d4 Disable the message buffer during crash dumps by clearing msgbufenabled,
not msgbufmapped.
1998-02-19 04:18:30 +00:00
mycroft
5197bf8085 Minor changes. 1998-02-18 10:55:48 +00:00
mycroft
f0a5dd43ce Multiple-inclusion crap, correct precision of DBL_*, etc. 1998-02-18 10:54:10 +00:00
cgd
3bbb7f7d45 Move pmap_map() function definition to MD headers, as appropriate. It's
an internal function, and the VM system shouldn't try to prototype it.
(Note that some ports _don't_ prototype it.)
1998-02-18 02:05:32 +00:00
thorpej
8354e68508 Remove "class" declarations, and add "devclass" declarations where
appropriate.  Fix several inconsistencies between device class and
attributes.  Mostly from Chris Demetriou.
1998-02-16 22:12:45 +00:00
ragge
c5b2acd27f Split out MSCP floppies as a separate device (rx) instead of handling
them as disk drives. It is now also allowed to change floppies without
the system complaining :-)
1998-02-08 14:03:45 +00:00
ragge
a355d0bc1b Re-implement page reference bit emulation by using the (otherwise unused)
valid bit. This is faster than the "unmap all" solution that were described
in that Mach paper _and_ it eliminates the need for checking the wired bit.
As a result of this; swapping started working again on vax :-)
1998-01-31 12:17:34 +00:00
ragge
fe52d237fd Fix to make vfork work on machines with separated PCB/mtpr PTE registers. 1998-01-27 17:35:03 +00:00
mycroft
15ae963bea When dumping, print out the device number as major,minor. 1998-01-24 16:46:23 +00:00
ragge
eda1eecede Remove __BROKEN_INDIRECT_CONFIG and change all drivers to use
config_search instead.
1998-01-24 14:16:11 +00:00
ragge
01eb1bb746 Make kernel compile & run again after latest config changes. 1998-01-18 22:09:13 +00:00
ragge
afb1a37379 Fix page size initialisation. 1998-01-18 22:07:50 +00:00
ragge
37f6125fdd Garbage-collect unnecessary functions. Don't have blkcpy/blkclr
as inline.
1998-01-18 22:06:01 +00:00
thorpej
f32f947061 Update for changes to config. 1998-01-12 20:52:29 +00:00
perry
6f57e5c573 multiple include protect machine/limits.h, fixes pr 4473 (from Mika Nystrom) 1998-01-09 22:23:44 +00:00
perry
b46484bb8a RCSID Police. 1998-01-05 20:51:25 +00:00
perry
015e898c02 RCSID Police. 1998-01-05 07:02:46 +00:00
thorpej
b9f1b716f3 Now that all ports have pmap_activate(), and it has an identical interface,
prototype it in <vm/pmap.h>
1998-01-03 01:12:59 +00:00
thorpej
b73f9750f6 Don't allocate PTEs in cpu_fork(); they were allocated when the new
process's pmap was created.  Instead, use pmap_activate() to load the
page {0,1} base and length registers into the PCB for the hardware's use.
1998-01-03 00:37:31 +00:00
thorpej
aa58d4ac6b Adjust for the fact that the page {0,1} base and length registers are now
stored in the pmap structure.
1998-01-03 00:35:28 +00:00
thorpej
f267fe868d - Adjust so that access to the PCB is not required in most pmap functions.
Store the page {0,1} base and length registers in the pmap structure,
  and implement pmap_activate(), which stores them in the PCB (for the
  hardware's use).
- Re-implement pmap_pinit(); allocate the PTEs here, not in cpu_fork().
1998-01-03 00:34:02 +00:00
thorpej
172a9381b6 - Remove the PCB pointer from the pmap structure. Instead, store the
page {0,1} base and length registers in the pmap structure.  They will
  be loaded in to the PCB when the process's address space is activated
  by way of pmap_activate().
- Remove pmap_pinit() macro; it's now a real function.
- Prototypes for pmap_pinit(), pmap_activate(), pmap_deactivate().
1998-01-03 00:28:43 +00:00
thorpej
d8076f896b Grab the PCB directly from the u-area, not by indirecting through VM
structures.
1998-01-03 00:23:53 +00:00
ragge
5680284286 Fix problem in copy*str() when not emulating locc. 1998-01-02 19:33:27 +00:00
kleink
eefde8bdcd Add COMPAT_13. 1997-12-01 16:31:29 +00:00
kleink
66c2794142 Add _BSD_SUSECONDS_T_ and _BSD_USECONDS_T_; do some space vs. tab formatting
cleanup
1997-11-23 20:20:53 +00:00
fair
315f8de9c2 add pseudo-device rnd, commented out 1997-11-20 08:11:14 +00:00
lukem
e8cb388f65 * add commented out DDB_HISTORY_SIZE=100 if DDB exists in config file
* fix up use of 'options<SPACE><TAB>'
1997-11-17 01:58:31 +00:00
veego
8b485c5962 Add a missing #if NARP > 0 around arpintr(); and add a #include "arp.h"
for NARP. This is for the 'new' arp system.
1997-11-13 10:43:06 +00:00
thorpej
ce4c770f88 Make sure CPP, AR, AS, and RANLIB are defined. 1997-11-12 23:11:50 +00:00
thorpej
a421995756 Define LORDER, NM, and TSORT here, like we do the rest of the tools. 1997-11-12 22:25:31 +00:00
ragge
7b60c8ed11 Fix multivolume installation bug; PR#4454. 1997-11-10 22:14:16 +00:00
thorpej
0b04d28454 Mark uses of long long with /* LONGLONG */ for lint. From
Chris Demetriou <cgd@pa.dec.com>.
1997-11-05 04:36:08 +00:00
thorpej
cc1f5b65c9 asm -> __asm__ 1997-11-05 04:23:35 +00:00
thorpej
4730a8cbec Bug fixes and cleanup from Chris Demetriou <cgd@pa.dec.com>:
- fix _C_LABEL so that it actually works.
- make __RENAME use _C_LABEL.
- fix __RENAME so that it expects an unquoted argument.
- fix __indr_reference and __warn_references so that they
  supply their own final semicolon.
- define __warn_references to nothing if not GNU C (required
  by the way it's used).

The __warn_references semicolon change has to be made
so that __warn_references can be defined into nothing.
(A ; all by itself isn't a great idea.)  The __indr_reference
change was made for consistency.
1997-11-04 23:09:23 +00:00
ragge
8f6ac836dd Move some interrupt routines out to assembler.
Optimize (slightly) pmap_clear_modify.
1997-11-04 22:59:20 +00:00
ragge
fb4298e98c Optimized copy/fetch/store routines; rewritten in assembler. 1997-11-04 20:52:27 +00:00
ragge
fd48076569 Use genassym for the first time in vax port history. Rewrite cpu_exit,
cpu_switch, setrunqueue and remrunqueue in assembler for efficiency.
1997-11-03 20:00:17 +00:00
ragge
4e254b7a82 Major rewriting, optimization and simplifying of the pmap code:
- Map in all physical memory first in system space. This reduces
  pmap_copy_page() and pmap_zero_page to 3 resp. 2 instructions.
- Have fized position user page tables. Makes the pv_table smaller
  and all reverse references faster (and simpler).
- Remove the wiring code. Nobody doesn't even know what a DR32 is anymore.
- Simulate page reference bit by setting page invalid, as suggested by
  Rich Draves in a paper for 1991 Mach Usenix Symposium.

This reduced the time spent in the pmap module to between 70-75% of
the previous; and made process startup _much_ faster.
1997-11-02 14:25:26 +00:00
ragge
9b1a735c8f Major rewriting, optimization and simplifying of the pmap code:
- Map in all physical memory first in system space. This reduces
  pmap_copy_page() and pmap_zero_page to 3 resp. 2 instructions.
- Have fized position user page tables. Makes the pv_table smaller
  and all reverse references faster (and simpler).
- Remove the wiring code. Nobody doesn't even know what a DR32 is anymore.
- Simulate page reference bit by setting page invalid, as suggested by
  Rich Draves in a paper for 1991 Mach Usenix Symposium.

This reduced the time spent in the pmap module to between 70-75% of
the previous; and made process startup _much_ faster.
1997-11-02 14:25:24 +00:00
ragge
ae27edc757 Major rewriting, optimization and simplifying of the pmap code:
- Map in all physical memory first in system space. This reduces
  pmap_copy_page() and pmap_zero_page to 3 resp. 2 instructions.
- Have fized position user page tables. Makes the pv_table smaller
  and all reverse references faster (and simpler).
- Remove the wiring code. Nobody doesn't even know what a DR32 is anymore.
- Simulate page reference bit by setting page invalid, as suggested by
  Rich Draves in a paper for 1991 Mach Usenix Symposium.

This reduced the time spent in the pmap module to between 70-75% of
the previous; and made process startup _much_ faster.
1997-11-02 14:25:19 +00:00
ragge
84f5dc2404 Fix clearing of redundant restart flag; CPU specific.
Also clean up a bit.
1997-11-02 14:07:07 +00:00
ragge
a8e1e83943 #include files must be in the correct order. 1997-11-02 14:01:07 +00:00
thorpej
665f7d1a6e Implement __RENAME() in <machine/cdefs.h> 1997-10-22 05:20:32 +00:00
ragge
e603ff5aa3 Fix vers.c dependency; PR#4090. 1997-10-20 11:54:26 +00:00
ragge
efa4c7c48e MSGBUFSIZE must be in CLBYTES, not NBPG. Also expand it to 4 * CLBYTES. 1997-10-19 20:48:47 +00:00
ragge
2260651129 Add match code to detect more than one SCSI adapter on 3100.
Provided by Bertram Barth.
1997-10-19 20:35:15 +00:00
ragge
d379f24df5 #include <vm/vm.h>. Fix some erroneous declarations. 1997-10-19 14:33:48 +00:00
ragge
e0bc9f61d7 Add a sometimes needed round_page().
Always flush TLB when messing around with system mapping.
1997-10-19 14:32:42 +00:00
ragge
a9510ace16 Only check for process switch if we are coming in from userspace.
Make ERESTART work for syscalls >63.
While we're here; clean up a little bit.
1997-10-19 12:32:52 +00:00
ragge
038cd08cce Make UBA adapter selection work on 8600 again. 1997-10-18 23:39:18 +00:00
christos
801520ffac fix chrtoblk declaration 1997-10-16 23:43:16 +00:00
explorer
80513cb5ae o Make usage of /dev/random dependant on
pseudo-device   rnd                     # /dev/random and in-kernel generator
  in config files.

o Add declaration to all architectures.

o Clean up copyright message in rnd.c, rnd.h, and rndpool.c to include
  that this code is derived in part from Ted Tyso's linux code.
1997-10-13 00:46:08 +00:00
bouyer
6ab3092b11 Add byte-swapping functions (bswap16, bswap32, bswap64) to libkern.
Only assembly version for i386 bswap16 and bswap32 for now (bswap64 uses
bswap32). Contribution of assembly versions of these are welcome.
Add byte-swapping of ext2fs metadata for big-endian systems.
Tested on i386 and sparc.
1997-10-09 15:42:19 +00:00
thorpej
616e0b7e33 Copyright assigned to The NetBSD Foundation. 1997-10-05 18:26:38 +00:00
lukem
7d508b124f define SIZE?=size, and use ${SIZE} instead of size. makes cross
compilation easier
1997-10-03 07:17:00 +00:00
christos
7f41ec0345 PR/4162: Chris Jones: make cleandir does not work properly; it does not
remove the object files and the .depend file in the kernel build directory.
1997-09-30 22:50:53 +00:00
leo
d4713d24c2 Implement the kernel part of pr-1891. This allows for a more flexible sized
msgbuf. Note that old 'dmesg' and 'syslogd' binaries will continue running,
though old 'dmesg' binaries will output a few bytes of junk at the start of
the buffer, and will miss a few bytes at the end of the buffer.
1997-09-19 13:52:37 +00:00
mycroft
16a8787248 Fix execve(2) and *setregs() interfaces so emulations can set registers in a
more correct way.  (See tech-kern.)
1997-09-11 23:01:44 +00:00
bouyer
6f3bab1f59 Merge scsipi branch in the mainline. This add support for ATAPI devices
(currently only CD-ROM drives on i386). The sys/dev/scsipi system provides 2
busses to which devices can attach (scsibus and atapibus). This needed to
change some include files and structure names in the low level scsi drivers.
1997-08-27 11:22:52 +00:00