thorpej
a6f7e0c05a
Implement WARN_REFERENCES().
1998-12-02 00:58:42 +00:00
ross
8470625657
New module to hold the alpha-specific prototypes that don't need to be
...
exported to the MI kernel. Almost everything here was formerly in cpu.h.
Optionally, this module could in the future be used to #include anything
that is always needed by arch/alpha modules.
1998-11-19 01:57:56 +00:00
ross
19a4c3110c
Rip out 70 lines of (all of) the port-alpha-specific decls and prototypes.
...
They should not be visible to the MI kernel and the MI kernel shouldn't
depend on this junk. Most of it moves to new module <machine/alpha.h>.
Leave badaddr() here, though, because it's used so widely.
1998-11-19 01:51:40 +00:00
ross
e2e3ee52ae
Nuke the giant ugly-as-sin per-platform INTRNAMES masterpiece.
...
I just cannot add one more platform without getting sick.
Instead, we do just one table for all platforms. More-or-less,
it was only the A12 that even named it's individual interrupts anyway.
Also, prototype set_iointr() here. It's a slightly odd place, but 10*
better than the old place it was, and this file is included by exactly
the perfect set of .c files for set_iointr() visibility.
1998-11-19 01:48:04 +00:00
ross
a68dbb068a
Stop including <machine/alpha_cpu.h>; we already export <machine/cpu.h>.
1998-11-19 01:42:37 +00:00
ross
da8b1017f4
"extern struct rpb *hwrpb" belongs here (duhhh)
1998-11-19 01:41:36 +00:00
thorpej
49c62c4336
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:41:23 +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
ross
8447dd624c
1. STANDALONE -> _STANDALONE
...
2. Key raw prom interfaces defes on ENABLEPROM
3. Define the prom "ioctl" magtape functions.
1998-10-15 00:47:28 +00:00
kleink
cee25f5a9c
Since libc is not ready for enabling weak symbol support yet, disable the
...
WEAK_ALIAS() macro for now (like cdefs.h).
1998-10-13 11:39:26 +00:00
thorpej
b38544d99e
Oops, back out a buglet I didn't intend to commit in the last change.
1998-10-07 18:29:26 +00:00
thorpej
2038eb830c
Split hwrpb_restart_setup(), putting the code that initializes the vtpb
...
and primary hwpcb into hwrpb_primary_init(). Call the latter before
performing autoconfiguration().
1998-10-06 21:10:46 +00:00
thorpej
d681cf055a
configure() prototype is in <sys/device.h>
1998-10-06 20:50:15 +00:00
christos
c0f54daf70
Add em_alpha_exp
1998-10-03 18:17:14 +00:00
erh
b0367216c1
Macros to call a linux syscall.
1998-10-01 16:19:59 +00:00
thorpej
69d81d8df1
Prototype cpu_halt_secondary().
1998-09-29 07:07:36 +00:00
thorpej
2c50ec242f
Add basic interprocessor interrupt sending and receiving code. Current
...
IPI functions: HALT, IMB, TBIA, TBIAP.
XXX HALT is not yet implemented, it's just a stub.
1998-09-26 00:03:51 +00:00
thorpej
e2aa38459c
Implement atomic quadword load-and-latch.
1998-09-25 23:59:42 +00:00
thorpej
01c75223d7
Minor style tweaks.
1998-09-25 22:06:33 +00:00
thorpej
57e656b2ec
The processor unique value in the PCB is used as a backup kernel stack
...
pointer when booting secondary CPUs. Add an alias for it.
1998-09-25 03:21:31 +00:00
thorpej
fcb0203141
First-cut at code to spin up secondary processors on a multiprocessor
...
Alpha system, conditional on MULTIPROCESSOR.
NOTE: This does not yet work completely. The secondary CPU begins the
boot process, but never makes it into the cpu spinup trampoline. This
is merely a snapshot of a work-in-progress.
1998-09-24 23:28:17 +00:00
thorpej
3cde5f5817
Machine-dependent spin lock operations for Alpha, included if MULTIPROCESSOR
...
is specified.
1998-09-24 22:32:35 +00:00
thorpej
91a031471d
Implement atomic test-and-set for longwords (32-bit).
1998-09-24 22:22:07 +00:00
thorpej
1b04ff4897
Make prom_enter() and prom_leave() public.
1998-09-24 21:18:13 +00:00
thorpej
7df5ebc392
"Gee, there was already a function to do that."
1998-09-23 22:02:21 +00:00
thorpej
53d42701b5
Implement a function to recompute the HWRPB checksum.
1998-09-23 21:51:04 +00:00
thorpej
5fa16c668b
Define the inter-console communication buffer portion of the per-cpu
...
info structure.
1998-09-22 08:16:51 +00:00
thorpej
402a9210a2
Implement quadword atomic test-and-set.
1998-09-22 05:56:52 +00:00
thorpej
e10cc7910d
Add some support for multiple processors to the pmap module. Still left
...
to do: TLB shootdown code, but that will be much easier to write once
the code to spin up the additional CPUs is working.
1998-09-22 03:58:10 +00:00
matt
ad921921e4
Add softserial to the alpha port. This significantly improved PPP
...
throughput on com ports.
1998-09-21 00:33:16 +00:00
thorpej
3eaeeb5357
Add definitions for the maximum allowable `whami' procssor ID and the
...
maximum number of processors we'll allow (64, assuming procssor IDs start
at 0).
1998-09-20 18:28:50 +00:00
thorpej
a4a356f9a6
Need 83 longs for a jmp_buf now.
1998-09-14 06:07:29 +00:00
thorpej
3ddf828326
Make signal delivery work again.
1998-09-13 01:51:29 +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
thorpej
d5df55112a
vm_offset_t -> {paddr_t,vaddr_t}, vm_size_t -> vsize_t
1998-08-14 16:50:00 +00:00
thorpej
97e83f6e0b
Change the "vm_offset_t"s to "u_long"s for now; eventually, we can make
...
them vaddr_t and paddr_t, as appropriate (after scouring the RPB docs
to know which are phys and virt addresses).
1998-08-14 16:46:09 +00:00
eeh
a2dd74ed79
Merge paddr_t changes into the main branch.
1998-08-13 02:10:37 +00:00
kleink
546365a27e
_POSIX_SOURCE -> _POSIX_C_SOURCE
1998-08-06 11:25:04 +00:00
thorpej
bf8f319d0e
Remove some lint.
1998-08-01 21:12:32 +00:00
thorpej
528dab6808
Implement alpha_shared_intr_disestablish(). Simply removes the handler
...
fromthe list, allowing the caller to manipulate the sharing type,
if appropriate.
1998-08-01 18:52:36 +00:00
mycroft
a24dbc8065
(Always) (practice) (safe) (macro expansion).
1998-07-31 15:07:41 +00:00
thorpej
f948e430bb
Provide a hook for bypassing space accounting, needed to support ISA PnP
...
for now.
1998-07-31 04:37:02 +00:00
mycroft
da2e61d160
Delint.
1998-07-27 13:55:32 +00:00
thorpej
2385ee5eca
Provide PMAP_{,UN}MAP_POOLPAGE().
1998-07-24 20:32:07 +00:00
is
6054d626f9
Switching dev/ic/lpt.c to use spllpt() instead of spltty(). It doesn't use
...
tty structures, and on some machines (namely the DraCo internal lpt, and some
multi-i/o boards for Amigas and DraCos), tying spltty to the pretty high printer
interupt level would hurt serial performance.
On all affected ports but Amiga, spllpt() has been defined in machine/intr.h
to be spltty(), thus preserving old behaviour. Portmasters are encouraged to
change is, if they feel something else is better (e.g., one of its own were
possible).
1998-07-18 21:27:25 +00:00
ross
d58ad29b6c
Kill the old extern mchkinfo pointer and prototype cpu_mchkinfo().
...
This file has been collecting prototypes and other things used in the MD
code...that's bad...because this is exported to the MI kernel.
1998-07-13 19:10:14 +00:00
mjacob
6b092524ea
stale beer- place structure in right file
1998-07-08 17:20:42 +00:00
thorpej
a8d2213784
Define a macro that returns the mask of PALcode PTE bits that we care
...
about when determining if a TBI is necessary (i.e. the PALcode bits minus
the FOx bits, since we always track those).
1998-07-08 17:19:46 +00:00
thorpej
0792d7f3db
Define a shorthand macro that represents the mask of PTE bits that the
...
PALcode cares about.
1998-07-08 16:48:49 +00:00
thorpej
3f776dfbe2
Cosmetic change.
1998-07-08 16:46:51 +00:00