thorpej
28fb7c1eb8
Define cpu_number() as discussed on tech-smp.
1999-08-10 21:08:05 +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
kleink
e1529b8f93
Pull in the right generic m68k header. (Where was my mind?)
1999-04-29 14:38:39 +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
kleink
ed74932033
Add COMPAT_SVR4 for m68k.
1999-04-19 21:22:56 +00:00
leo
98732be4ba
Export mtpr.h :-( This is because cpu.h depends on it. Probably userland
...
should not need cpu.h...
1999-03-31 10:48:00 +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
cgd
3f10df3001
Moved from arch/atari/isa/isa_machdep.h,v
1999-03-19 05:01:57 +00:00
cgd
bd032fb46a
Moved from arch/atari/pci/pci_machdep.h,v
1999-03-19 03:35:58 +00:00
cgd
096f58d900
Moved from arch/atari/isa/isapnp_machdep.h,v
1999-03-19 03:18:00 +00:00
minoura
e518820ca8
Pullin m68k/ieee.h.
1999-03-15 11:55:53 +00:00
leo
206c18b1cb
Dump max. datasize (MAXDSIZ) to 64MB and decouple the maximum stack size
...
(MAXSSIZ) from the MAXDSIZ.
1999-03-03 16:25:01 +00:00
is
f71d843a65
synchronize types, and s/curproc/p/ in one forgotten place
1999-02-26 22:37:57 +00:00
is
84971e3a6f
mac68k part of pr 6152 fix, and missing bits for the others
1999-02-25 23:13:39 +00:00
is
7cf63be6cb
Atari part of fix for pr 6152
1999-02-25 22:47:18 +00:00
mycroft
3e6e3322d8
Format consistency.
1999-01-24 12:56:51 +00:00
mycroft
082204fa3d
Standardize format.
1999-01-22 14:12:07 +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
leo
be84171b70
Make the abs_copy functions usable. The previous implementation caused
...
kernel "jump to zero" panics....
1999-01-08 09:25:33 +00:00
thomas
75c4b3bf70
Changed grf mmap that it is closer to XFree. VGA memory on et4000/et6000
...
is now at offset 0xa0000.
1998-12-20 14:32:34 +00:00
leo
7cce2beefa
Fix the __abs_copy() macro (wrong parameters to __abs_opname).
1998-12-01 15:32:28 +00:00
leo
dee282eb12
You also need intr.h, psl.h, pte.h and vmparam.h to build the world...
1998-11-24 15:16:48 +00:00
leo
c9971df573
Follow the amiga vmparam.h, from Ignatios:
...
Yet another workaround for pmap bugs. Several reports on the port-amiga
list claim this helps with some big-machine situations.
1998-11-20 13:01:12 +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
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
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
mycroft
7b15b3b56d
Minor change.
1998-09-13 12:01:41 +00:00
leo
fcfae9e5df
Get rid of vm_offset_t/vm_size_t
1998-09-02 14:58:01 +00:00
leo
a3b886d834
Reorganize installation if include files. Nuke some from atari/include as
...
they make no sense out of the kernel add some from atari/dev (ioctl's).
1998-09-02 10:59:14 +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
veego
1b46ebe1d9
Add elf_machdep.h to the INCS list.
1998-07-12 17:53:29 +00:00
thorpej
639cc899cf
Basic elf_machdep.h for m68k; doesn't include relocations, yet.
1998-07-12 01:17:58 +00:00
thorpej
1ea93eea1c
Define one page free list, and put all pages on it.
1998-07-08 04:35:23 +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
leo
b8dad8ab1f
Fix some severe bogons in the pci and isa interrupt system.
1998-05-25 10:42:21 +00:00
leo
ef7f50804b
Add bus_space_{read,write}_region_stream_N functions.
1998-05-25 09:08:08 +00:00
leo
4eb4a78df8
Implement MACHINE_NEW_NONCONTIG. Implementation is based on Ignatios' amiga
...
implementation and Chuck's conversion description.
1998-05-07 07:25:51 +00:00
leo
bc9ebf17a7
Major overhaul of the atari bus_space implementation.
1998-04-10 08:19:53 +00:00
leo
0dd40d6952
Bus-dma implementation for the atari. Heavily based on the i386
...
implementation.
1998-03-10 11:42:53 +00:00
leo
c281cb0e23
Update Hades PCI support:
...
- Initialize the PCI bus and hand-out mem and i/o addresses. (there is
still lots of room for improvements here...)
- Implement the interupt functions
1998-02-19 16:16:51 +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
mycroft
b5c132e4d2
Prototype __flt_rounds() consistently.
1998-02-03 01:26:20 +00:00
leo
bb4f2f4ebe
Add: bus_space_{read,write}_region_N() and bus_space_set_{multi,region}_N()
...
functions.
1998-01-16 09:17:48 +00:00
thorpej
61567b54de
Garbage-collect pm_stchanged; it's not used by anything.
1998-01-06 07:02:58 +00:00
thorpej
d11b109f2b
Garbage-collect use of the PCB's copy of the user segment table pointer.
1998-01-06 06:51:40 +00:00
thorpej
ab9b250a37
The user segment table pointer is no longer kept here. Change it to
...
a spare field.
XXX Should be changed to use generic m68k PCB!
1998-01-06 06:47:04 +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
dd966fca05
Change an argument name to PMAP_ACTIVATE() to more accurately describe the
...
semantics of the argument.
1998-01-01 20:05:23 +00:00
thorpej
287b63b321
- Make pmap_activate() and pmap_deactivate() take a struct proc *.
...
- Define active_user_pmap() and use it in the appropriate places (from hp300
port).
1998-01-01 19:52:50 +00:00
is
a16fd7d74e
Make these compile after m68k/m68k.h 1.4->1.5.
1997-10-26 21:41:34 +00:00
leo
6ecab62b97
VM_MAX_ADDRESS is the user max address -- adjust (From Chris Hopps).
1997-10-10 11:05:53 +00:00
jtc
324ce8d6cb
Fix tipo inherited from old version of TNF copyright template.
1997-10-09 07:37:50 +00:00
leo
c5ba7a3102
Move the definition of MSGBUFSIZE up to the machine-arch level if
...
possible. Pointed out by Bernd Ernesti.
1997-09-20 12:06:37 +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
leo
571340263d
Small readability update.
1997-09-15 11:08:38 +00:00
leo
225274f8b4
Add BUS_SPACE_MAP_* macro's.
1997-09-02 11:19:02 +00:00
leo
16bdafc3a5
Pull in Scott Reynolds' version of _splraise(). Also do a bit of typographic
...
cleanup while visting this file.
1997-08-29 19:47:52 +00:00
leo
ec7ce2c9f8
Isabus support.
1997-07-15 08:25:39 +00:00
leo
ce96a8a2e4
Implement bus_space_subregion()
1997-07-15 06:49:56 +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
veego
1c599835b4
Restore the defines of UPAGES and NPTEPG.
1997-07-10 08:22:36 +00:00
leo
61d060feec
Add the types for 'bus_dma_tag_t' and 'bus_dmamap_t'. While here, be a bit
...
more precise in using types of the bus_space* address arguments.
1997-06-25 12:06:10 +00:00
mrg
dc6a98e92c
bring mrg-vm-swap2 onto mainilne.
1997-06-12 15:09:23 +00:00
kleink
c41a940888
GC obsolete MDP_AST flag.
1997-06-11 08:58:09 +00:00
veego
6304388ee4
The 'Mach derived conversion macros' are now in <m68k/param.h>
1997-06-10 18:47:21 +00:00
veego
011ba826e7
s/atari_btop/m68k_btop/
1997-06-10 18:46:30 +00:00
veego
931d90fcee
Use the MI <m68k/param.h> include.
1997-06-10 07:54:35 +00:00
leo
327cf04b4b
Implement and use splraise().
1997-06-05 19:38:16 +00:00
leo
37325cfb41
More stuff for handling an 68060.
1997-06-02 12:03:40 +00:00
thorpej
06e6038b3f
regdump() is prototyped in <m68k/cpu.h> now
1997-04-09 19:46:04 +00:00
is
07b064e02e
New ARP system, supports IPv4 over any hardware link.
...
Some of the stuff (e.g., rarpd, bootpd, dhcpd etc., libsa) still will
only support Ethernet. Tcpdump itself should be ok, but libpcap needs
lot of work.
For the detailed change history, look at the commit log entries for
the is-newarp branch.
1997-03-15 18:09:08 +00:00
leo
b170f473ba
Add bus_space_peek_[1248] functions. These can be used by match/probe
...
functions.
1997-03-03 12:28:20 +00:00
leo
2d43c4a079
Allow MCLSHIFT to be overridden by a config option.
1997-02-26 12:22:06 +00:00
leo
9324e8d0ed
Move all spl-related stuff to the new file intr.h. The latter file also
...
contains some generic defines used by the drivers in dev/[pci|isa].
1997-02-26 12:18:50 +00:00
fvdl
115b6d92fa
Define ALIGNED_POINTER
1997-02-24 23:16:53 +00:00
perry
19d153fc48
Nuke some options GENERIC residue.
1997-02-04 04:57:10 +00:00
leo
eaf90deff5
Fix typo's in last commit.
1997-01-27 10:18:33 +00:00
leo
4a5570d41e
Make MCLBYTES 2K.
1997-01-27 07:58:09 +00:00
leo
7145c74ac3
Change the type of bus_space_tag_t.
...
Add the bus_space_(read|write)* functions.
1997-01-27 07:57:12 +00:00
leo
c79dcb7c8c
Add a 'size' argument to badbaddr(). This is very useful on busses that
...
only accept certain size accesses on a specific address range. Like the
VME bus.
1997-01-21 20:37:03 +00:00
leo
da93afbd05
Get rid of 'cpu040' variable. Use 'mmutype' or 'cputype' for testing
...
instead.
1997-01-03 22:54:22 +00:00
leo
291ced55a4
Get rid of BROKEN_INDIRECT_CONFIG
1996-12-20 12:49:35 +00:00
leo
421158437b
Tweak the clockframe structure a bit so we are able to save a few cycles
...
at interrupt time. (From Gordon Ross).
1996-12-18 12:35:19 +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
leo
8481cf5e5b
Adapt to changes in the bus-interface; bus_[mem|io] -> bus_space. Thanks Jason.
1996-11-08 14:21:02 +00:00
leo
8d079317a6
pmap_changebit() no longer static.
1996-11-06 15:33:56 +00:00
leo
f2501673f5
Prototytpe bus_mem_map/bus_mem_unmap functions.
1996-11-06 15:33:05 +00:00
leo
599db9a26c
Nuke declaration of susword(). It's declared in systm.h now.
1996-10-25 20:02:34 +00:00
christos
17f5b2a175
backout previous kprintf changes
1996-10-13 04:10:34 +00:00
christos
60dd5ceebe
printf -> kprintf, sprintf -> ksprintf
1996-10-11 00:06:28 +00:00
cgd
e36e19cf1e
repoint at shared aout_machdep.h, not exec.h
1996-10-08 13:07:26 +00:00
cgd
472889f8e4
moved to aout_machdep.h (via repository copy)
1996-10-08 12:57:37 +00:00
leo
84ed172edb
Minimal bus.h. Together with the minimal pci implementation, we have just
...
enough functionality to find a VGA card....
Will be expanded when I buy more pci-cards ;-)
1996-10-05 21:45:30 +00:00
leo
8e7f6c2cf5
Catchup with -current:
...
- Extra argument to boot()
- select -> poll
1996-09-25 15:03:20 +00:00
thorpej
e469c7beca
Use <m68k/cpu.h>.
1996-09-11 00:11:42 +00:00
leo
7a87b91e9b
Add suline/susword prototypes for new trap.c
1996-09-10 08:45:16 +00:00
thorpej
de5110f41e
Use <m68k/exec.h>.
1996-09-08 01:00:35 +00:00
leo
2df99561c9
- Make the Hades a valid machine type
...
- Add some 68040 specific prototypes.
1996-08-23 11:21:01 +00:00
leo
0f6a2c3cef
- Make all definitions relative to 'stio_addr'
...
- Add the PCI areas.
1996-08-23 11:17:00 +00:00