Commit Graph

671 Commits

Author SHA1 Message Date
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
ragge 5c3a8f6b46 Not-yet-finished console RX01 driver for 11/780. 1997-06-13 14:55:07 +00:00
ragge 9412f1c4fc Some new definitions for different boot devices. 1997-06-13 08:24:09 +00:00
ragge 68a4a97360 Add clock_subr.c. 1997-06-13 08:18:49 +00:00
ragge 5cfff50811 cpu_switch() should be mi_switch(). Pointed out by Johnny Billquist.
(bqt@update.uu.se)
1997-06-12 16:23:22 +00:00
mrg 552af779d2 bring mrg-vm-swap2 onto mainilne. 1997-06-12 15:46:19 +00:00
mrg dc6a98e92c bring mrg-vm-swap2 onto mainilne. 1997-06-12 15:09:23 +00:00
veego 6ab737a609 Initialize machine from MACHINE and machine_arch from MACHINE_ARCH. 1997-06-08 23:59:57 +00:00
ragge 4d45dc0466 Use correct console on KA65? machines. Bugfix when specifying adaptor
number. Show compile-time for boot. Prettier printout.
1997-06-08 17:49:15 +00:00
ragge 2492a42479 System statistics fixes. From Johnny Billquist (bqt@update.uu.se). 1997-06-07 12:15:27 +00:00
ragge f47d895f8c Clean up disklabel checking. 1997-06-07 12:13:27 +00:00
ragge 2db3f948a0 Disk statistics fixes. From Johnny Billquist (bqt@update.uu.se). 1997-06-07 12:11:38 +00:00
ragge 0d970d6a78 Create a fake disklabel if there are no one on the disk. 1997-06-07 11:59:44 +00:00
veego de7e49a954 Add 'char machine_arch[] = "xxx";' for the new sysctl hw.machine_arch. 1997-06-06 23:26:01 +00:00
gwr e2a58b69f7 Add #define __VM_PMAP_HACK as a temporary measure. 1997-05-16 21:35:30 +00:00
ragge 05de3b9034 Multicast definitions, forgotten in previous checkins. 1997-05-15 20:10:23 +00:00
ragge e3a104cb1f Oops, I forgot to check this file in after clock changes. 1997-05-04 19:13:33 +00:00
ragge 0a9b7dccc7 BPF and multicast support added, patches provided by Jonathan Stone
and Ken Wellsch. Fixes PR#2796.
1997-05-02 17:11:24 +00:00
ragge 749ec2a297 Remove #define LEDEBUG. 1997-04-21 22:04:23 +00:00
ragge 400a0d512e Fix so that these files compile again after recent ARP changes. 1997-04-19 15:02:27 +00:00
ragge 12c25bea6a Update floppy boot files to confirm to new boot syntax. 1997-04-19 11:42:14 +00:00
ragge df9ea3ac75 Updates to KA43 (VS3100/76) support by Bertram Barth. 1997-04-18 18:53:38 +00:00
ragge 36b2211d14 Change implementation of TOY clock addressing. Gives us only
one routine for three different HW implementations.
1997-04-18 18:49:33 +00:00
ragge 3611dda5d0 Add better boot support for VS3100/??. 1997-04-10 21:25:18 +00:00
ragge b7973034b4 & should be |. 1997-04-06 20:37:05 +00:00
christos 738cdfd351 Add netatalk netisr 1997-04-03 17:35:56 +00:00
thorpej 2268a2c7eb Don't allocate mclrefcnt[]; it's dead and gone. 1997-03-27 21:01:52 +00:00
gwr 37b247edde Renames: /dumpconf/cpu_dumpconf/, /boot/cpu_reboot/ 1997-03-26 22:42:13 +00:00
gwr 71e43d14ab Move findroot/setroot stuff from configure() to cpu_rootconf(). 1997-03-26 22:38:40 +00:00
ragge 720d1ef3f7 Update address struct to recognize KA420 motherboard. 1997-03-22 23:05:31 +00:00
ragge 65469bc546 CPU support for MV3100. (KA41) 1997-03-22 23:02:07 +00:00