ragge
ffbd2c2f5e
CL* discarding.
1999-12-12 14:39:18 +00:00
ragge
9beccd4e88
Detect "Infoserver 1000" also.
1999-12-11 17:55:13 +00:00
matt
65e94f7ef4
close the i386 ibcs2 machdep.h; nothing really machine dependent in it yet.
1999-11-16 00:46:25 +00:00
kleink
522cbf0248
Update to match new SVR4-style definition names in <sys/exec_elf.h>.
1999-10-25 13:55:06 +00:00
ragge
16a09f9b9c
Remove the vmapbuf()/vunmapbuf() routines. They are quite unneccessary
...
on a machine that has MMU for its I/O devices.
1999-10-22 21:14:34 +00:00
ragge
4021578d6e
Add routines to copy to/from a user process from/to the vsbus DMA area.
1999-10-22 21:10:12 +00:00
ragge
ae7e9d1571
Protect against multiple includes.
1999-10-21 20:01:36 +00:00
thorpej
11cae42531
Centralize the declaration and clearing of `cold'.
1999-09-17 19:59:35 +00:00
ragge
fe8a330be5
Styr upp deklarationen av clockchippsparametrarna.
1999-09-06 19:52:52 +00:00
ragge
56f0f92bef
Add some external variables.
1999-08-30 21:18:17 +00:00
matt
82d58cbe82
export elf_machdep.h
1999-08-21 23:35:44 +00:00
matt
741f18b695
Initial VAX ELF32 support (mostly untested). It's checked primarily for
...
testing and archival for now. I don't expect anyone to work with it
since the binutils and gas changes are still pending. But you got to
crawl before you walk.
1999-08-21 19:26:18 +00:00
simonb
3c185af5fd
Include <sys/endian.h> after defining whether where are little- or
...
big-endian. i386, pc532 and vax still include <machine/byte_swap.h>
and define macros for the {n,h}to{h,n}*() functions. mips also
defines some endian-independent assembly-code aliases for unaligned
memory accesses.
1999-08-21 05:53:50 +00:00
simonb
06a92524c2
Include <sys/bswap.h> for function prototypes. i386, pc532 and vax
...
still include <machine/byte_swap.h> and define macros for some of
the bswap*() functions.
1999-08-21 05:39:51 +00:00
thorpej
28fb7c1eb8
Define cpu_number() as discussed on tech-smp.
1999-08-10 21:08:05 +00:00
ragge
bc163ccc30
Clean up all bus handling stuff, it has become a mess the latest years.
...
Add a new bus; "ibus" that is the internal MicroVAX bus.
1999-08-07 10:36:43 +00:00
thorpej
d936f02b0b
Implement priority raising, and use it as appropriate.
1999-08-05 18:48:55 +00:00
thorpej
37554502cf
Correct a comment.
1999-08-05 18:31:06 +00:00
thorpej
eb20bbc780
Change the semantics of splsoftclock() to be like other spl*() functions,
...
that is priority is rasied. Add a new spllowersoftclock() to provide the
atomic drop-to-softclock semantics that the old splsoftclock() provided,
and update calls accordingly.
This fixes a problem with using the "rnd" pseudo-device from within
interrupt context to extract random data (e.g. from within the softnet
interrupt) where doing so would incorrectly unblock interrupts (causing
all sorts of lossage).
XXX 4 platforms do not have priority-raising capability: newsmips, sparc,
XXX sparc64, and VAX. This platforms still have this bug until their
XXX spl*() functions are fixed.
1999-08-05 18:08:08 +00:00
ragge
43bbc0f5c7
Protect against multiple includes.
1999-08-03 19:53:23 +00:00
ragge
8f9615d62c
A bunch of changes:
...
- Free pte pages not in use anymore.
- Inline pmap_extract().
- Fix annoying page reference/modify bug. Fixes PR#7858 & PR#7859.
1999-08-01 13:48:06 +00:00
ragge
1647688f0d
Use pmap_steal_memory() for early memory allocation.
1999-06-30 19:31:33 +00:00
ragge
1e7b5cf8ae
Wrong definition of SID for MicroVAX I, from Brian Chase.
1999-06-28 13:13:53 +00:00
ragge
cb57cab9b1
Add macros to round/trunc vax pages.
1999-06-20 00:53:58 +00:00
cgd
7c02d93c04
nuke current definitions provided by __BUS_SPACE_COMPAT_OLDDEFS.
...
I'll do what I can to make new ones soon. 8-)
1999-06-18 04:49:24 +00:00
thorpej
0288ffb53a
pmap_change_wiring() -> pmap_unwire().
1999-06-17 19:23:20 +00:00
thorpej
f5a527bb4e
Remove pmap_pageable(); no pmap implements it, and it is not really useful,
...
because pmap_enter()/pmap_change_wiring() (soon to be pmap_unwire())
communicate the information in greater detail.
1999-06-17 18:21:21 +00:00
ragge
f6d61fb6ad
Add an define for SGMAP.
1999-06-06 19:07:11 +00:00
ragge
d55d0ac4b5
Add some more IPRs for KA670.
1999-06-06 19:06:29 +00:00
ragge
64572c459a
sgmap files, copied from the Alpha port and modified for vax.
1999-06-06 18:58:50 +00:00
ragge
22b5707362
Complete support for VAX 4000/300. From Michael Kukat. (michael@camaronet.de)
1999-06-06 14:23:46 +00:00
ragge
ad1db202f7
bus.h'ify more of the vax code.
1999-05-24 20:10:30 +00:00
ragge
373e7cc828
Rewrite the "emulate page reference bits" code to avoid a bunch of
...
pv_lists traversal and unneccessary page faults.
1999-05-23 23:03:44 +00:00
ragge
539f825799
Better and more understandable way to find out CPU type.
1999-05-23 22:56:53 +00:00
christos
c596c324e3
Define __builtin_*() for lint
1999-05-03 16:30:31 +00:00
ragge
a5ce96e985
EEEK! The signal changes a while ago caused the user struct to be
...
on top of the "red zone" in the kernel stack. This phenomenon has
caused many unexplainable things to happen the last year.
1999-05-02 17:28:43 +00:00
ragge
fc6020e344
Real-time clock is started on the same way on all CPUs, there is no
...
need for a special CPU-dependent hook for this.
1999-05-01 16:13:43 +00:00
thorpej
5d82bfc656
Garbage-collect VM_MBUF_SIZE.
1999-04-26 22:47:34 +00:00
ragge
e9689cc9bd
Use "access_type" in pmap_enter() more intelligent.
...
Allocate device register space bigger than the logical page size
from the kernel map, thus decreasing the pre-allocated page table memory.
1999-04-17 00:01:18 +00:00
ragge
71a57b22eb
Use the pool allocator for mbufs instead of a separate submap.
1999-04-14 23:42:00 +00:00
ragge
797a7428d6
First towards use of bus.h routines on vax. Allocate DMA memory for
...
LANCE chip on vaxstations.
1999-04-14 23:14:45 +00:00
pk
ca0b7aaa87
Ungarble the copyright notice.
1999-04-12 20:57:52 +00:00
mrg
d2397ac5f7
completely remove Mach VM support. all that is left is the all the
...
header files as UVM still uses (most of) these.
1999-03-24 05:50:49 +00:00
drochner
76fa1751fe
Add a macro to check for sufficient pointer alignment in bus.h context,
...
"BUS_SPACE_ALIGNED_POINTER()".
Equal to the param.h "ALIGNED_POINTER()" normally, but obeys additional
requirements of the bus_space_xxx_n() macros. (BUS_SPACE_DEBUG)
1999-03-23 21:29:03 +00:00
thorpej
a77ccfe460
Garbage-collect.
1999-03-20 01:40:25 +00:00
ragge
f9b0eec83a
Change vsbus to take a locator for all devices.
...
Figure out interrupt vector/mask on vsbus by forcing all devices to
generate interrupts in the match routine, like on unibus.
1999-03-13 15:16:47 +00:00
ragge
fb6b53bfe4
Basic KA48 (VAXstation 4000 VLC) support.
...
From Michael Kukat <michael@camaronet.de>
1999-03-09 12:57:57 +00:00
ragge
816acbe3ac
pmap_physseg must be visible.
1999-03-06 11:11:11 +00:00
ragge
13daba04a1
Another giant change: Allocate register space dynamic instead of compiled-in.
...
This is done on a physical page size basis, instead of virtual (as the
(on vax yet non-existing) bus_* routines does). This is similar to the
way uba allocation is done.
1999-02-02 18:37:20 +00:00
mycroft
897a8a7f29
Mark [hn]to[nh][ls]() with __const__, so they are subject to CSE.
1999-01-24 12:55:01 +00:00
mycroft
ec253b6315
Use __builtin_next_arg(). Fixed PR 6862.
1999-01-22 14:14:32 +00:00
ragge
bef0af5311
Allocate (almost) all interrupt vectors dynamically. Simplifies much
...
work when adding support for new machines and devices.
1999-01-19 21:04:47 +00:00
chuck
bef8ae1103
MNN is no longer optional
1999-01-16 20:49:12 +00:00
bouyer
f20d50fae4
Add byte_swap.h here too.
1999-01-16 02:31:54 +00:00
bouyer
dc306354b0
Move the bswap functions from libutil to libc (this bups the
...
minor of libc and the major of libutil). For little-endian architectures
merge the bnswap() assembly versions with nto* and hton* using symbols
aliasing. Use symbol renaming for the bswap function in this case to avoid
namespace pollution.
Declare bswap* in machine/bswap.h, not machine/endian.h. For little-endian
machines, common code for inline macros go in machine/byte_swap.h
Sync libkern with libc.
Adjust #include in kernel sources for machine/bswap.h.
1999-01-15 13:31:15 +00:00
ragge
d0e7a99a8a
Giant change: NBPG now set to 4k and CLSIZE == 1 for vax. This change
...
made a whole bunch of annoying bugs disappear; mostly depending on
bad use of NBPG in non-MD code. The VAX port was the only port that
used this historical "feature".
The CL* macros should probably go away totally, there is no reason
at all to keep them.
1999-01-01 21:43:17 +00:00
kleink
1b6a24c1d4
Support for compound statements enclosed in parenthes to appear as
...
expressions is a GNU C extension; mark as such them with __extension__ to
suppress portability warnings. Addresses kern/3562 and misc/6185, as suggested
by Dave Sainty <dave@dtsp.co.nz>.
1998-12-16 11:11:02 +00:00
thorpej
da572a137f
Argh, fix the ANSI CPP version of the a.out WARN_REFERENCES().
1998-12-02 21:16:46 +00:00
thorpej
a6f7e0c05a
Implement WARN_REFERENCES().
1998-12-02 00:58:42 +00:00
ragge
6c5df58799
Protect against multiple inclusion. Struct needs at least one argument.
1998-11-29 15:06:02 +00:00
ragge
015d31ae8d
- Save R/M bits after a page is unmapped.
...
- Keep track of mapping count (for statistics).
- vm_offset_t -> vaddr_t/paddr_t.
- Move away counting of available memory.
1998-11-29 14:55:04 +00:00
ragge
f07a586dc6
the btoc/ctob/btop macros must use CLBYTES, not NBPG. How this should
...
work in the long run is an open issue; some parts must be reworked
in a MI way.
1998-11-29 14:48:51 +00:00
ragge
b6158fa5e3
EGCS fixes. Implement htons as a C macro instead of asm; generates as
...
good code as the asm implementation _and_ can be optimized.
1998-11-07 17:22:58 +00:00
matt
4cbbe0abff
Latent support for revamped "local bus" support.
1998-10-27 21:18:52 +00:00
matt
a9a911bdba
Add .type pseudo-ops needed for shared libraries.
1998-10-15 06:01:11 +00:00
matt
1163f713bb
Make DBL_MIN and DBL_MAX makes limits.h (otherwise CPP complains when
...
building xlint).
1998-10-10 02:13:55 +00:00
matt
832a061bca
Fix some old mistakes when I originally committed this.
1998-10-09 06:20:06 +00:00
thorpej
d681cf055a
configure() prototype is in <sys/device.h>
1998-10-06 20:50:15 +00:00
matt
75f5ffdf21
Change backplace0 to mainbus0 (for consistency with other ports).
...
Remove unused function protocols from ka410.h and ka43.h
Fix some ka46 missing references
1998-10-06 04:04:30 +00:00
thorpej
5006dbf868
cpu_set_kpc() prototype is already in <sys/systm.h>.
1998-10-05 22:11:15 +00:00
christos
cfd3302aa1
Need more room for signal mask
1998-10-01 19:00:06 +00:00
ragge
6530a14556
Typo.
1998-09-30 18:40:04 +00:00
thorpej
b9a131261c
Define the new sigcontext structure.
1998-09-17 04:54:51 +00:00
cgd
5fa7eee1ff
don't define __BUS_SPACE_COMPAT_OLDDEFS by default. As stated in
...
bus_space(9), if drivers want it (they shouldn't; easy to convert) they
can define it right before including bus.h. There's been a release since
the interfaces were (slightly) changed, and no code in the source tree
uses the old interfaces as far as I can tell.
1998-08-30 23:40:14 +00:00
ragge
218681f3e5
Kernel stach should be 4K, not 32K. Increase MCLSHIFT to 11.
...
Remove ovbcopy().
1998-08-25 17:35:23 +00:00
ragge
e727d1e031
Must #define __warn_references if not GNUC.
1998-08-22 12:12:38 +00:00
ragge
b3574d3923
VAX logical page size increased to 4k.
1998-08-21 13:41:09 +00:00
matt
5232b66bd5
Initial steps to getting the VAX to use the MI driver framework.
1998-08-18 23:55:00 +00:00
eeh
a2dd74ed79
Merge paddr_t changes into the main branch.
1998-08-13 02:10:37 +00:00
ragge
2c639fb882
Cache and microsecond clock resolution on KA46.
1998-08-11 17:52:57 +00:00
ragge
972b94efc4
Basic support for VS4000/60.
1998-08-10 14:31:07 +00:00
ragge
8fdb1c8ebe
Lots of kernlib functions rewritten as inline macros.
1998-08-08 11:18:32 +00:00
kleink
546365a27e
_POSIX_SOURCE -> _POSIX_C_SOURCE
1998-08-06 11:25:04 +00:00
mycroft
da2e61d160
Delint.
1998-07-27 13:55:32 +00:00
thorpej
d47ea67c1f
Define one page free list, and put all pages on it.
1998-07-08 04:43:18 +00:00
ragge
7b2ca7e1ba
RPB number for SGEC Ethernet controller (ze).
1998-07-01 09:37:11 +00:00
ragge
fecd3f54fc
Expand kmem map.
1998-06-20 18:47:33 +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
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
60530637e4
Enable use of secondary cache, if present.
1998-06-07 18:34:09 +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
9251293f18
Remove unnecessary code for interrupt vector handling.
1998-05-22 09:49:07 +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
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
eaeee62af2
Wall cleaning.
1998-04-13 12:10:26 +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
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