Commit Graph

701 Commits

Author SHA1 Message Date
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
mjacob 6ac7f6248f add a before tab to SCSIVERBOSE 1997-08-23 19:16:06 +00:00
mjacob 1a7afa3853 add commented out reference SCSIVERBOSE option 1997-08-20 18:38:13 +00:00
ragge cd0d651d0f delay() must be protected by #ifdef _KERNEL. 1997-08-05 13:28:51 +00:00
ragge 23e157b82b Handle XFC instruction faults. 1997-07-28 21:48:33 +00:00
ragge ab4412faad Actually do 'halt' or 'reboot' on MicroVAX. 1997-07-26 10:12:40 +00:00
ragge b17d1e7207 Fixed bug causing machines with a memory size not a multiple of 16k
to crash. This is true on many MicroVAXen.
1997-07-25 21:54:48 +00:00
jtk 9388f271a9 use locator defines in "locators.h" to index cf_loc[] 1997-07-17 02:12:50 +00:00
perry ad1710ce1e update comment from 1981 on memory and disk prices -- pr-2754 from Curt Sampson 1997-07-12 16:18:36 +00:00
ragge 759763742b Remove __VM_PMAP_HACK. 1997-07-06 22:38:22 +00:00
ragge 59501e1879 Fix bug causing all uda's to be recognized as ctlr 1 from boot. 1997-07-04 13:26:02 +00:00
ragge d7d40e44f6 Bugfix to mscp tape code; so that weof/eot works correctly. 1997-07-04 11:58:20 +00:00
ragge 9f009387fc Must grok includes. Also; prettier compile-time printout. 1997-06-29 21:30:09 +00:00
thorpej 0404c01c46 #define DB_AOUT_SYMBOLS 1997-06-26 01:26:56 +00:00
thorpej cf016f61f4 foosize()'s return value is in DEV_BSIZE units; adjust the size obtained
from the disklabel accordingly.
1997-06-24 00:56:28 +00:00
ragge 2ab0792e74 Bug fixes to page fault handling system. Many thanks to Johnny Billquist
for hunting down this bug(s).
1997-06-13 15:16:25 +00:00