Commit Graph

200 Commits

Author SHA1 Message Date
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
8e2874bf64 Support for UVM on VAXen. 1998-03-02 17:00:00 +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
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
eda1eecede Remove __BROKEN_INDIRECT_CONFIG and change all drivers to use
config_search instead.
1998-01-24 14:16:11 +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
perry
6f57e5c573 multiple include protect machine/limits.h, fixes pr 4473 (from Mika Nystrom) 1998-01-09 22:23:44 +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
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
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
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
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
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
thorpej
665f7d1a6e Implement __RENAME() in <machine/cdefs.h> 1997-10-22 05:20:32 +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
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
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
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
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
thorpej
0404c01c46 #define DB_AOUT_SYMBOLS 1997-06-26 01:26:56 +00:00
ragge
9412f1c4fc Some new definitions for different boot devices. 1997-06-13 08:24:09 +00:00
mrg
dc6a98e92c bring mrg-vm-swap2 onto mainilne. 1997-06-12 15:09:23 +00:00
ragge
2492a42479 System statistics fixes. From Johnny Billquist (bqt@update.uu.se). 1997-06-07 12:15:27 +00:00
gwr
e2a58b69f7 Add #define __VM_PMAP_HACK as a temporary measure. 1997-05-16 21:35:30 +00:00
ragge
e3a104cb1f Oops, I forgot to check this file in after clock changes. 1997-05-04 19:13:33 +00:00
ragge
df9ea3ac75 Updates to KA43 (VS3100/76) support by Bertram Barth. 1997-04-18 18:53:38 +00:00
ragge
1d90a0a507 Add definitions for DEC HW device numbers. 1997-03-15 15:09:40 +00:00
ragge
b5b674f227 Do not use inline functions in boot blocks. Some CPUs doesn't have
all instructions.
1997-03-15 15:08:23 +00:00
ragge
b64bca2999 Fixed bug that caused d partition being treated as c.
RAW_PART is 2, not 3.
1997-03-09 15:55:58 +00:00
fvdl
115b6d92fa Define ALIGNED_POINTER 1997-02-24 23:16:53 +00:00
ragge
e86bc96653 Basic change to cpu-config code. This will make support of new
cpu types much easier.
1997-02-19 10:04:09 +00:00
ragge
c3aeacf957 unsigned -> long to match ddb change. 1997-02-16 20:37:29 +00:00
ragge
e7d1921239 Remove bogus prototypes. 1997-02-12 17:58:56 +00:00
ragge
f5f92a31ca Walk a step closer to more intelligent User PTE handling. 1997-02-12 17:52:59 +00:00
ragge
2bb5ceb3e0 Improve sub-type identification of the CVAX CPU, for later cache handling. 1997-02-12 17:50:36 +00:00
gwr
ea3925f508 FIXUP_PC_AFTER_BREAK now takes an arg of type db_regs_t * 1997-02-06 21:16:28 +00:00
thorpej
fc9c10afb7 Update prototypes to match new calling convention of functions that
find the boot device.
1997-01-31 02:11:51 +00:00
ragge
3026c5e35e Put in another external declaration. 1997-01-11 11:46:43 +00:00
ragge
7bf599379e Prototype change of scanc needs change here also. 1997-01-11 11:07:52 +00:00
ragge
f98e31628a #define MAXBSIZE to some nice value. 1997-01-11 11:06:17 +00:00
cgd
96acdadef7 First step inn removing config_scan() and the hacks that gave devices
on indirect-config busses a (permanent) softc that they could share
between 'match' and 'attach' routines:

Define __BROKEN_INDIRECT_CONFIG so that old autoconfiguration
interfaces are used, until drivers are converted to use the new
interfaces (actually, converted back to use the _older_ interfaces)
which prohibit indirect configuration devices from receiving a softc
in their match routine that they can share with their attach routine.
1996-12-05 00:13:47 +00:00
jtc
9da5f60715 PROF -> GPROF 1996-11-30 02:48:57 +00:00
jtc
16b48272c4 Define _BSD_CLOCKID_T_ and _BSD_TIMER_T_ 1996-11-15 22:38:45 +00:00
christos
16b74d2c00 use in_addr_t and in_port_t 1996-10-13 03:28:00 +00:00
cgd
472889f8e4 moved to aout_machdep.h (via repository copy) 1996-10-08 12:57:37 +00:00
ragge
1c367d4761 Modify bus code arguments. Cleanup. 1996-08-20 14:19:41 +00:00
ragge
caff7b03d4 Numerous changes to be able to put Bertram Barth's VAXstation support in.
(Some) Support for VAXstation 2000/MicroVAX 2000, VAXstation 3100/76.
1996-07-20 17:58:12 +00:00
ragge
7ac59ffe68 Reworked time handling; now also handles clock chip CPUs correctly. 1996-07-20 17:35:41 +00:00
ragge
5b0992267c Support for VAX8200; the ka820/ka825 CPUs. 1996-07-20 17:33:06 +00:00
ragge
a5b04afcd8 Automatic changing of root device after boot now works. 1996-07-11 19:33:50 +00:00
ragge
02d0803c80 Add spl4 - spl7 macros, easy to use when playing with buses. 1996-07-10 23:51:08 +00:00
cgd
352d972c94 locc() is unused. Remove it from the machine-independent kernel interface. 1996-06-10 15:33:33 +00:00
ragge
7cbd855ad6 Fixed all (proto)type errors. Fixes PR 2377. 1996-05-19 16:43:02 +00:00
ragge
a24af7a7c2 Added prototypes to everything. Made all files compile with -Wall. 1996-04-08 18:32:26 +00:00
ragge
b7cf2432a0 Fix type clashes. 1996-03-17 22:44:48 +00:00
jtc
2ce5f1478b Add _BSD_WINT_T_ definition so we can handle wint_t type added in NA1. 1996-03-16 01:31:45 +00:00
ragge
f01a5dd8cc We lost declaration of kernel_pmap_store somewhere, put it back. 1996-03-09 23:39:51 +00:00
ragge
6e51b1e47e Support for VAX 8600/8650 added. Works with lots of Unibus adapters,
and will probably work with Massbus adapters as well. (Not tested,
but it's the same code as for 11/780). Ubareset's may cause crashes
on 8600 also like 11/780, but they are more uncommon. No support
for console RL02 yet, but it's likely to come.
1996-03-07 23:22:34 +00:00
cgd
18ec26aa21 add _MACHINE and _MACHINE_ARCH, which are like MACHINE and MACHINE_ARCH,
execpt without quotes.  meant to be __CONCAT()ted for easy #includes
of machine-dependent headers for MI code (e.g. for the MI ISA/EISA/PCI/TC
bus code).
1996-03-04 05:04:10 +00:00
ragge
c22fc0bce4 Enable label_t. 1996-03-03 11:21:31 +00:00
ragge
5d89814116 Changes due to 11/780 support. Raise splimp() to BR7. 1996-03-02 14:27:52 +00:00
cgd
1c5d7babe5 Clean up tabbing/spacing in defns of MACHINE, MACHINE_ARCH, and MID_MACHINE. 1996-03-01 23:30:08 +00:00
ragge
df5a5e9485 Remove __FORK_BRAINDAMAGE, and the reason to why it was there. 1996-02-24 15:17:35 +00:00
ragge
2294cbd022 Fixed bug causing DMA to user stack from Massbus disks to give segfaults. 1996-02-23 17:54:33 +00:00
ragge
5025b0f9c9 Definition file for RSP (Radial Serial Protocol) used by DECtape II. 1996-02-17 18:14:50 +00:00
ragge
4cafd3d7d2 PAGE_SIZE should be PAGE_SHIFT. Really ugly bug! 1996-02-11 13:46:23 +00:00
ragge
26d151d2bb Prototype for delay(). 1996-02-11 13:45:37 +00:00
mycroft
5d668ff961 ASSEMBLER -> _LOCORE 1996-02-02 19:08:33 +00:00
mycroft
9d9a70a5a2 Fix #includes. 1996-02-02 18:05:36 +00:00
mycroft
88e512b693 LOCORE -> _LOCORE 1996-02-01 22:28:24 +00:00
ragge
348b7f3d87 Remove PSL_ALLCC definition. Was commented out anyway. 1996-01-28 12:32:21 +00:00
ragge
1bc66055fb Add uvtopte() macro, to get user pte address easy. 1996-01-28 12:31:24 +00:00
ragge
7a489b8529 Change struct trapframe to also contain stackpointer. 1996-01-28 12:30:13 +00:00
ragge
84c675c572 Change void* to struct pcb* for page table pointers. 1996-01-28 12:27:19 +00:00
ragge
0c5975cdd3 Changed to work correctly with both K&R and ANSI cpp. 1996-01-06 18:37:35 +00:00
ragge
1dab4709a3 Changes requested by Charles Hannum. 1995-12-31 15:05:19 +00:00
ragge
d9c6db08da Don't declare _mcount as static, gcc will optimize it away then. 1995-12-31 12:15:58 +00:00
ragge
d987547daf An '&' missing in splx macro; causing that sometimes didn't
the interrupt level get set.
1995-12-30 21:37:31 +00:00
mycroft
cd8fe86bcb Make the type of __builtin_va_list a long. 1995-12-26 01:16:24 +00:00
mycroft
0c00214737 Use __builtin_va_alist. 1995-12-26 00:19:09 +00:00
mycroft
fa887628d8 Stylistic changes. 1995-12-25 23:15:31 +00:00
mycroft
d1de691efb Stylistic changes. 1995-12-25 22:22:02 +00:00
mycroft
0199e002ad Update for GCC 2.7, and fix bugs. 1995-12-25 21:41:08 +00:00
ragge
56ad9078eb MicroVAX III support added. 1995-12-13 18:57:57 +00:00
ragge
cf6e6c6ed4 waitabit() macro removed. 1995-12-13 18:56:01 +00:00
ragge
6ab4fc540f Prevent against multiple includes. 1995-12-13 18:55:27 +00:00
ragge
dc9996e83e A complete SCB struct included. 1995-12-13 18:54:56 +00:00
ragge
4f22cd5a71 Type change: u_int hoppaddr to void (*hoppaddr)(); 1995-12-13 18:54:03 +00:00
ragge
902fd4cddf PG_SHIFT -> PGSHIFT. 1995-12-13 18:53:15 +00:00
mycroft
292120bf63 Define __FORK_BRAINDAMAGE. 1995-12-09 04:41:41 +00:00
ragge
31f199d4e6 Added earlier forgotten MACHINE_ARCH, pointed out by Arne Henrik Juul.
Cleaned up a bit.
1995-12-04 22:32:53 +00:00