simonb
4324f37586
Use "#define<tab>".
2002-02-28 03:17:23 +00:00
scw
5bd17a1271
Separate out devices common to many Motorola mvme boards (68k, 88k and ppc)
...
in preparation for future mvmeppc and mvme88k ports.
This needs a bit if tidying up to make it trully shareable, which will
happen as the new mvme ports are added.
2002-02-12 20:38:09 +00:00
kleink
e5341ee40f
No point in installing svr4_machdep.h.
2001-11-28 13:14:12 +00:00
soren
662f877587
MAXSLP is defined to be a machine-independent scheduling parameter,
...
so move it into sys/param.h.
2001-11-15 18:06:11 +00:00
scw
dca93f1b48
The success/failure status for some Bug syscalls is indicated by the Z
...
flag in the status register, not by a value on the stack.
How this ever worked for so long is beyond me...
2001-11-09 18:18:19 +00:00
thorpej
e727e3f180
Split elf32 vs. elf64 handling in loadfile(), including support for
...
each separately and explicitly. BOOT_ELF is now BOOT_ELF32 and
BOOT_ELF64, and ELFSIZE should no longer be defined in loadfile_machdep.h.
2001-10-31 17:20:45 +00:00
chris
0e7661f023
Update pmap_update to now take the updated pmap as an argument.
...
This will allow improvements to the pmaps so that they can more easily defer expensive operations, eg tlb/cache flush, til the last possible moment.
Currently this is a no-op on most platforms, so they should see no difference.
Reviewed by Jason.
2001-09-10 21:19:08 +00:00
simonb
023bdd2bf2
Use comments around the token after a #endif.
2001-08-31 04:44:54 +00:00
thorpej
babefc5331
Add BUS_DMA_READ and BUS_DMA_WRITE flags, that hint the back-end
...
at dmamap load time that the mapping will be used for a unidirectional
transfer of the specified direction.
2001-07-19 15:32:10 +00:00
scw
35110949ce
Ditch the `simulated' software interrupt in favour of
...
hardware-assisted soft interrupts on all boards.
(Note: VMEChip2-less 162/172 not yet tested)
This greatly simplifies the `rei' path and allows
interrupt nesting to be tracked somewhat more easily.
As a result we now have a working CLKF_INTR() macro
and can detect uvm_fault() being called from an interrupt
(although there may still be a very short race detecting
the latter; need to investigate further).
2001-07-06 19:00:12 +00:00
thorpej
8eb3b954f1
Don't need to prototype child_return() here, it's in <sys/proc.h>.
2001-06-14 22:56:55 +00:00
scw
59ba4788ce
Deprecate intrcnt/intrnames in favour of the generic evcnt(9) interface.
2001-05-31 18:46:07 +00:00
mrg
67afbd6270
use _KERNEL_OPT
2001-05-30 11:57:16 +00:00
chs
11a9651c8f
replace vm_page_t with struct vm_page *.
2001-05-26 21:27:10 +00:00
chs
118ddca24a
replace {simple_,}lock{_data,}_t with struct {simple,}lock {,*}.
2001-05-26 16:32:40 +00:00
scw
c22fb1db55
Finally nobble the bus_dmamap_sync() problem with osiop(4).
...
Basically, bus_dmamap_sync() `PREREAD' needs to flush the cache
for the start and end of the region if it is not aligned to
a cacheline boundary, otherwise a subsequent POSTREAD can *purge*
valid data which was in the cacheline but *outside* the region
passed to bus_dmamap_sync().
Bus snooping doesn't always help here because osiop(4) calls
bus_dmamap_sync() with POSTREAD even if no data was actually
transferred! (And we can't rely on snooping on the 68060 models anyway).
2001-05-16 19:06:46 +00:00
thorpej
cf67ac7122
Per discussion w/ chuck and chuck, restructure the md page stuff
...
to use a structure called "vm_page_md", and use __HAVE_VM_PAGE_MD
and __HAVE_PMAP_PHYSSEG.
2001-05-01 02:19:13 +00:00
thorpej
2b27ac7a99
Add a VM_MDPAGE_MEMBERS macro that defines pmap-specific data for
...
each vm_page structure. Add a VM_MDPAGE_INIT() macro to init this
data when pages are initialized by UVM. These macros are mandatory,
but ports may #define them to nothing if they are not needed/used.
This deprecates struct pmap_physseg. As a transitional measure,
allow a port to #define PMAP_PHYSSEG so that it can continue to
use it until its pmap is converted to use VM_MDPAGE_MEMBERS.
Use all this stuff to eliminate a lot of extra work in the Alpha
pmap module (it's smaller and faster now). Changes to other pmap
modules will follow.
2001-04-29 22:44:31 +00:00
scw
81be7c00b7
Compute PAGER_MAP_SIZE at runtime to avoid needlessly crippling large-
...
memory models for the benefit of small-memory models.
Uses a heuristic of min(onboard_ram_size/2, 16MB).
2001-04-29 07:53:56 +00:00
thorpej
69abdbf60c
Undo a misguided previous change to the pmap_update() API.
2001-04-22 23:19:26 +00:00
thorpej
4738622712
Give pmap_update() an argument (a pmap_t) so that it knows which
...
pmap it should be updating.
2001-04-22 00:33:59 +00:00
thorpej
7f10ba88b1
#define away pmap_update() in <machine/pmap.h> so that no function
...
call overhead is incurred as we start sprinkling pmap_update() calls
throughout the source tree (no pmaps currently defer operations, but
we are adding the infrastructure to allow them to do so).
2001-04-21 23:51:14 +00:00
kleink
f06533a1ee
Add definitions of C99 integer format conversion macros.
...
XXX Fastest minimum-width integer types haven't been decided upon yet.
2001-04-15 17:13:04 +00:00
kleink
739cb75837
Add definitions of C99 specified-width integer type limits.
...
XXX Fastest minimum-width integer types haven't been decided upon yet.
2001-04-15 15:29:02 +00:00
kleink
cdcf9f46c5
Add definitions of C99 integer constant macros.
...
Tidy Makefiles up a little.
2001-04-14 22:46:19 +00:00
kleink
a7c20e5788
Add definitions of C99 integer constant macros.
2001-04-14 22:38:33 +00:00
scw
9beeeabe1b
Define a PAGER_MAP_SIZE of 4MB for the benefit of low-memory models.
...
XXX: This may still not be low enough for models with less than 8MB RAM...
2001-04-14 16:02:24 +00:00
scw
c605c91bdf
Fix bootline argument passing from the Bug PROM.
2001-04-14 13:43:07 +00:00
kleink
7affdab52e
Add definitions of C99 minimum-width and greatest-width integer types.
...
XXX Fastest minimum-width integer types haven't been decided upon yet.
2001-04-14 12:19:49 +00:00
thorpej
bf2dcec4f5
Remove the use of splimp() from the NetBSD kernel. splnet()
...
and only splnet() is allowed for the protection of data structures
used by network devices.
2001-04-13 23:29:55 +00:00
thorpej
2c4c690f14
Add the BUS_DMA_STREAMING flag.
2001-03-07 22:42:16 +00:00
thorpej
d74e432ed3
Make softclock a generic soft interrupt of the API is available,
...
adding the requisite void * argument to softclock().
2001-01-15 20:19:50 +00:00
thorpej
45de366b2e
Rename __GENERIC_SOFT_INTERRUPTS to __HAVE_GENERIC_SOFT_INTERRUPTS,
...
and place the definition in <machine/types.h>. This can now be used
as a flag to indicate whether or not <machine/intr.h> can be included
to get the generic soft interrupt API.
2001-01-14 23:50:28 +00:00
thorpej
d85a75f583
Make sure everybody has an splvm() and equate it with splimp() (splimp()
...
is the historical name for this interrupt level, and the historical name
is going to go away in the near future).
2001-01-14 02:00:37 +00:00
scw
00627955a1
Some minor optimisations to avoid checking {cpu,mmu}type when
...
the kernel was built for only one type of CPU.
2000-12-20 16:53:50 +00:00
scw
8ace7abc75
A small splx()/spl0()/soft interrupt related optimisation. If we're
...
dropping to spl0, use inline code to check if a soft interrupt is
pending instead of taking the hit of a function call to do the check.
2000-12-10 18:43:02 +00:00
scw
c5b6f43634
Define `splzs()' to be `splserial()' instead of `spl4()', which was
...
wrong anyway since it blindly set SPL to 4 regardless of the prevailing
level.
2000-12-10 18:00:24 +00:00
scw
ac80517816
Add some #defines for offsets into the bugargs structure, and make the
...
register names usable within assembly code.
2000-12-05 21:57:13 +00:00
scw
634dc65636
Backout the last change; I'll deal with it another way.
2000-12-05 19:54:09 +00:00
scw
1f9f7cbe53
UPAGES -> 2 as recommended by Chuck Silvers.
2000-12-05 18:46:10 +00:00
scw
2ec144518f
Add loadfile_machdep.h to list of installed machine headers.
2000-12-05 18:42:18 +00:00
scw
269a30a733
s/a6/fp/ again...
2000-12-04 18:48:18 +00:00
scw
b29bcb645b
The LOAD_TEXTA flag is required when loading a.out kernels.
...
Also add some non-standalone versions for the benefit of installboot(8).
2000-12-04 18:41:51 +00:00
scw
c28723715c
Prefix the register names with `%'.
2000-12-04 18:40:05 +00:00
scw
e4326b372a
Set things up so that DDB can get to the symbol table in ELF kernels.
2000-12-02 13:57:05 +00:00
tsutsui
a8fdbdec1c
Remove unused pcbb() macro.
2000-12-01 17:57:43 +00:00
scw
97490c9997
Add __attribute__((__packed__)) to cpu_disklabel to get around
...
the ELF padding/alignment constraints.
2000-12-01 00:02:22 +00:00
scw
d3251e5074
Prepare to switch mvme68k bootloader over to the MI loadfile().
2000-11-30 21:20:43 +00:00
scw
7248616dee
Ditch an extra % in a register prefix, and s/a6/fp/
2000-11-30 21:18:07 +00:00
scw
614e494d9e
Add register prefixes.
2000-11-29 09:18:32 +00:00