pk
6b2ebb44a7
Move several PIL_* definitions into the scope of LOCORE stuff.
2000-01-21 13:22:55 +00:00
pk
c6b6f3883a
Remove old-style boot device recognition.
2000-01-11 12:59:43 +00:00
pk
a744e28304
Cleanup the list of exported headers a bit.
2000-01-10 22:09:34 +00:00
kleink
693059feda
const -> __const and include <sys/cdefs.h> earlier; fixes PR lib/9052
...
by Takahiro Kambe.
2000-01-04 14:20:05 +00:00
pk
4681e48204
Remove private kernel members from `struct fpreg'; update accompanying comment.
1999-12-30 23:59:29 +00:00
kleink
11e6c54cfc
C99: Define a NAN macro in <math.h> which evaulates to a constant expression of
...
a single-precision quiet NaN; only to be defined on platforms that do support
this value.
1999-12-23 10:15:05 +00:00
jdc
016b030623
Added tctrl.h
1999-12-20 09:49:20 +00:00
thorpej
18ab712015
Provide cpu_boot_secondary_cpus().
1999-12-16 20:24:58 +00:00
garbled
5e200de9b7
Add new spl level for tadpole devices splts102.
...
Device entrypoints for tctrl device (tadpole micro controller)
add header for direct-access ioctl to the tadpole microcontroller.
1999-12-15 08:01:00 +00:00
ragge
0513268399
CL* discarding.
1999-12-04 21:13:19 +00:00
mrg
b27ecf75a9
oops; remove part of the previous that was not intended (yet).
1999-11-30 07:56:28 +00:00
mrg
9a6c8313f7
minor cosmetic merges; long way to go here.
1999-11-27 12:14:26 +00:00
mrg
264af07cff
merge sparc64 types.h; these files are now identical.
1999-11-27 11:33:39 +00:00
mrg
d7e14b468a
more sparc64 merging; these files are (basically) identical.
1999-11-27 11:20:41 +00:00
mrg
faa527dcc9
merge sparc64 limits.h; these files are now identical. this includes
...
a `fix' for when s?size_t was changed from int to long but the
definitions of S?SIZE_MAX were left as U?INT_MAX. these are now
U?LONG_MAX.
1999-11-27 11:14:40 +00:00
mrg
492e85822e
MNN has been standard for a Long Time.
1999-11-27 10:22:19 +00:00
mrg
484cb25f55
s/long/int/ to make this identical the sparc64 version.
1999-11-27 10:10:02 +00:00
thorpej
2cfc62b5ae
Update for pmap API change.
1999-11-14 02:39:09 +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
pk
b19b1fc269
Each process (i.e. each `pmap') needs a region table for each CPU.
...
Implement this by making the fields `pm_reg_ptp' and `pm_reg_ptp_pa'
pointers to an array of `ncpu' region table pointers and corresponding
physical addresses.
This is a somewhat unfortunate side effect of having the per-CPU data
addressable by the same virtual address on each CPU.
1999-10-04 19:18:33 +00:00
pk
fa65ea182c
Implement sysctl `machdep.booted_kernel'.
1999-10-04 19:11:42 +00:00
chs
f3a668ed84
eliminate the PMAP_NEW option by making it required for all ports.
...
ports which previously had no support for PMAP_NEW now implement
the pmap_k* interfaces as wrappers around the non-k versions.
1999-09-12 01:16:55 +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
matt
74ed5b7f0f
Add <machine/apmvar.h> for sparc so that apmd can be built. Eventually
...
this allow it work on Tadpole SPARCbook 3 laptops (and/or other sparc
with power management).
1999-08-11 02:00:09 +00:00
thorpej
28fb7c1eb8
Define cpu_number() as discussed on tech-smp.
1999-08-10 21:08:05 +00:00
thorpej
1c0e017cff
Change spl calls to always raise priority, except for the ones which are
...
specifically supposed to lower it.
1999-08-05 21:16:55 +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
matt
4b814be9cf
Initial stab at a P9100 console FB driver for the Tadpole 3GX.
...
It supports RASTERCONSOLE only and the colormap support is
broken (the hardware doesn't seem to be doing what the tech.
docs. say it should be doing). But it is usable as a console
(but with blue on white as the only color choice). I figured
I'd check it in since it is somewhat usable and someone else
might figure what I screwed up in the color map support.
1999-08-01 00:23:48 +00:00
matt
d4b9056054
Add preliminary support for the built-in modem on Tadpole 3GX/S
...
laptops. There is currently something wrong with the interrupt
code but it does attach and sense a 16550a. (anyways the built
in modem is only a 14.4Kb and you'd really want to use a PCMCIA
modem to get faster dialup rates).
1999-07-30 23:58:25 +00:00
thorpej
6ec1ededf1
Make a slight rearrangement in how <machine/lock.h> is included.
1999-07-27 23:45:13 +00:00
thorpej
cc668e410f
Define apporpriate an value for SIMPLELOCK_LOCKED, based on the
...
semantics of ldstub.
1999-07-27 22:22:33 +00:00
thorpej
c1ee8f0a8c
Prepend `cpu_' to the machine-dependent atomic locking primitivies.
1999-07-27 21:45:39 +00:00
thorpej
3ebbe095e0
Change the pmap_extract() interface to:
...
boolean_t pmap_extract(pmap_t, vaddr_t, paddr_t *);
This makes it possible for the pmap to map physical address 0.
1999-07-08 18:05:21 +00:00
pk
7c5f595062
mmu_pagein() prototype: change address argument to `vaddr_t'.
1999-06-28 14:44:57 +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
pk
bea0725979
64-bit safety to help sharing compilation tools with sparc64.
1999-06-05 12:54:23 +00:00
eeh
ea28d54c9e
Let NetBSD/sparc know about 64-bit formats even if it can't execute them.
1999-05-14 00:18:51 +00:00
christos
7d5c65239e
clean up old GCC.1 stuff.
1999-05-04 13:36:10 +00:00
christos
f890155a87
Define __extension__ if __GNUC__ < 2
...
Define __builtin_* for lint.
1999-05-03 16:20:28 +00:00
christos
b0c181d290
move PROM_LOADADDR from promlib.h to param.h and remove its cast.
1999-05-03 16:14:02 +00:00
christos
797c581bbc
Add bootinfo.h
1999-05-02 13:50:17 +00:00
christos
35e47f06fa
Load the header too.
1999-04-30 13:28:58 +00:00
christos
4bf3b7a9c1
Compile in support for ELF symbols.
1999-04-30 13:28:36 +00:00
christos
b40179bdca
MD version of loadfile.h
1999-04-28 15:26:21 +00:00
christos
017ae4d0c4
Support for installboot
1999-04-28 15:25:43 +00:00
thorpej
b8073b401b
Garbage-collect the VM_MBUF_SIZE constant. Instead, use the size
...
(nmbclusters * mclbytes), so that the right amount of KVA space is
allocated if those variables are patched.
1999-04-26 22:46:44 +00:00
mrg
a3b0c3845d
fix some comments.
1999-04-18 10:54:23 +00:00
ad
5140c302ce
Bring sparc/sparc64 fb code and kernel configuration into line with
...
rcons changes.
1999-04-13 18:45:40 +00:00
mycroft
9c6b797796
Changes for modified pmap_enter() API:
...
* Map the message buffer with access_type = VM_PROT_READ|VM_PROT_WRITE `just
because'.
* Map the file system buffers with access_type = VM_PROT_READ|VM_PROT_WRITE to
avoid possible problems with pagemove().
* Do not use VM_PROT_EXEC with either of the above.
* Map pages for /dev/mem with access_type = prot. Also, DO NOT use
pmap_kenter() for this, as we DO NOT want to lose modification information.
* Map pages in dumpsys() with VM_PROT_READ.
* Map pages in m68k mappedcopyin()/mappedcopyout() and writeback() with
access_type = prot.
* For now, bus_dma*(), pmap_map(), vmapbuf(), and similar functions still use
access_type = 0. This should probably be revisited.
1999-03-26 23:41:25 +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
jonathan
69d2d27c1b
Use bus_space tags and handles, embedded in MD hooks AM7930_{READ_WRITE}_REG
...
to handle MD delay and bus padding. Tested on sparc2 by David Brownlee.
Should use regmaps, but that breaks sparc pDMA assembly code.
1999-03-14 22:29:00 +00:00
chs
31ef6fbb8d
add RODATA(), which is like ENTRY() but without the _PROF_PROLOGUE.
1999-02-24 16:02:19 +00:00
kristerw
871ac39c21
The recent simplification of the lint version of the va_arg macro broke
...
linting of vfprintf.c, where va_arg is used as
*va_arg(ap, quad_t *) = ret;
Make the macro slightly more complicated...
1999-02-20 00:33:55 +00:00
pk
1e5bf77774
Adjust to functionality and changes introduced with <machine/promlib.h>
1999-02-14 12:26:16 +00:00
pk
a99ba2939c
Provide a uniform interface to most of the PROM functions.
...
Include an Openfirmware back-end (mostly copied from sparc64).
1999-02-14 12:23:03 +00:00
christos
6e13c7d4b5
Avoid defining __extension__ if we don't need to. Breaks lint.
1999-02-13 20:35:02 +00:00
christos
d30ef27fb0
s/ELF/__ELF__/
1999-02-07 20:21:09 +00:00
mrg
1ccaf05ff1
add CPU_SUN4U, to make libkvm compile.
1999-02-01 22:20:02 +00:00
drochner
cc66380116
fix address incrementing in the read_region_N, write_region_N,
...
set_region_N and copy_region_N methods
1999-01-29 16:30:51 +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
christos
64df2f4fd8
Remove old prototypes (move to mi code), and add the xrs gunk!
1999-01-21 23:05:14 +00:00
pk
565d3768e5
Catch `Unimplemented Flush' traps.
1999-01-20 00:15:07 +00:00
pk
66cd211961
Define Hypersparc ICCR bits.
1999-01-19 23:04:02 +00:00
pk
dd91d8a2b4
Add SIR_SERIAL soft interrupt source.
1999-01-19 10:02:40 +00:00
chuck
90ddaed9b5
MNN is no longer optional, remove dead code
1999-01-16 20:43:21 +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
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
pk
2e89e9144b
Turn a bunch of bus_space_*() macros into in-line functions mostly to avoid
...
variable aliasing.
1998-11-26 23:50:52 +00:00
pk
c918193752
Add splserial().
1998-11-26 22:53:13 +00:00
pk
b34cd5fdf0
Add IPL_SERIAL
1998-11-25 19:33:02 +00:00
pk
701d8366f0
Define `interrupt priority levels'.
...
XXX - for now, these arbitrary identifiers; NO INTERPRETATION IS DEFINED YET
1998-11-22 23:53:24 +00:00
pk
bc98f448b8
Turn the passed tag into "used" arguments.
1998-11-22 21:52:24 +00:00
oster
c74d32c5fc
Updating of bdev's and cdev's to support RAIDframe.
1998-11-13 04:47:03 +00:00
thorpej
cabecee13c
Changes to support fork_kthread():
...
- cpu_set_kpc() now takes void *arg third argument, passed to the
entry point.
- cpu_fork() allows parent to be non-curproc iff parent is proc0.
When forking non-curproc, assume its state has already been saved.
- Adjust various pieces of machine-dependent code to account of all of this.
1998-11-11 06:43:49 +00:00
chs
61458d7dfa
LOCKDEBUG enhancements for non-MP:
...
keep a list of locked locks.
use this to print where the lock was locked
when we either go to sleep with a lock held
or try to free a locked lock.
1998-11-04 06:19:55 +00:00
pk
9eb94a0c03
Must protect user-land from cpuvar.h; noticed by Juergen Hannken-Illjes.
1998-10-26 08:16:08 +00:00
pk
890e54bee0
Pull in cpuvar.h to get definition of `curproc'.
1998-10-21 07:11:47 +00:00
pk
bf7ace9074
CLKF_INTR() needs to have a MULTIPROCESSOR version.
1998-10-13 20:53:02 +00:00
thorpej
908cdfe4e3
Add scsibus entry points to the cdevsw[].
1998-10-10 02:00:49 +00:00
pk
e6bbfcc58a
Move [gs]etcontext() and [gs]etpte() to pte.h
1998-10-08 21:47:34 +00:00
thorpej
d681cf055a
configure() prototype is in <sys/device.h>
1998-10-06 20:50:15 +00:00
thorpej
5006dbf868
cpu_set_kpc() prototype is already in <sys/systm.h>.
1998-10-05 22:11:15 +00:00
pk
40beab6ad6
If a lock is held do not spin in a read/write loop but just read the lock
...
until it is released. This is easier on the bus cache coherency logic.
1998-10-05 19:58:19 +00:00
thorpej
c5b8d42e66
Need 14 longs for jmp_buf now (sigcontext has 128-bit signal mask at the
...
end).
1998-10-01 03:28:11 +00:00
pk
f382e91b5e
Add a field to identify the processor that has a process' FPU context.
1998-09-30 18:40:58 +00:00
pk
e6ce8bcfc7
sparc spin lock functions.
1998-09-27 14:31:18 +00:00
pk
6ad3a051e8
mp_{pause,resume,halt}_cpu() prototypes.
1998-09-26 20:12:06 +00:00
pk
fe1cf94b9f
Add wrappers for PROM's CPU start/stop functions.
1998-09-26 19:08:09 +00:00
pk
43c1cb852c
Move PROM interface prototypes into openprom.h
...
Use the `openprom_addr' structure for passing around physical addresses.
1998-09-26 18:20:19 +00:00
pk
709360e3ce
Fill the `bpp' slot.
1998-09-21 21:13:51 +00:00
pk
b6da06d637
Name fault registers more like they're referred to in various docs.
1998-09-20 19:29:10 +00:00
thorpej
dcb541531a
Minor cosmetic change.
1998-09-17 02:33:06 +00:00
mycroft
4e4f120db9
Update these for signal handling changes.
...
XXX Not tested yet.
1998-09-13 12:13:49 +00:00
pk
90054fd502
New sigcontext.
1998-09-13 11:41:02 +00:00
pk
ba67f63901
Sync function prototypes; remove unsed variables.
1998-09-13 11:34:04 +00:00
pk
cd0a5fe245
Define some bit-format strings.
1998-09-12 13:59:19 +00:00