Commit Graph

208 Commits

Author SHA1 Message Date
chuck 32244a5a1a MNN is now the default 1999-01-16 20:13:17 +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 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 d681cf055a configure() prototype is in <sys/device.h> 1998-10-06 20:50:15 +00:00
thorpej ed03ee06e1 Update for signal changes. 1998-10-01 08:28:30 +00:00
mycroft 7b15b3b56d Minor change. 1998-09-13 12:01:41 +00:00
kleink a6d3fb3799 vm_offset_t -> {paddr_t,vaddr_t}, vm_size_t -> vsize_t 1998-08-20 08:33:41 +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
thorpej 37b378d836 defopt COMPAT_HPUX 1998-06-25 23:56:39 +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
kleink 3e08a4a027 Spell `interrupt' correctly. 1998-05-18 17:37:38 +00:00
scottr 4804060a6b GC the old MACHINE_NONCONTIG code. 1998-04-26 21:24:27 +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
scottr f49dd3ef30 Avoid declaring the "astpending" and "want_resched" globals in cpu.h,
as this breaks C++ code that happens to indirectly include this header.
Both Matthias Scheler and I noticed this, independently.

This problem notably does not affect the atari and sun3/sun3x ports,
which have already implemented a similar solution.
1998-02-13 07:41:45 +00:00
thorpej 223caea788 pmap_page_index() is not used in the MACHINE_NEW_NONCONTIG case. 1998-02-08 18:47:06 +00:00
thorpej 2f55a48f5c Implement MACHINE_NEW_NONCONTIG and switch the hp300 port to use it. 1998-02-08 18:37:55 +00:00
mycroft b5c132e4d2 Prototype __flt_rounds() consistently. 1998-02-03 01:26:20 +00:00
thorpej 871cf5e7ce Update for changes to config. 1998-01-12 18:30:41 +00:00
thorpej b69358e4ca bus.h for the hp300 port. Only supports bus_space for now. 1998-01-11 21:26:04 +00:00
perry 6f57e5c573 multiple include protect machine/limits.h, fixes pr 4473 (from Mika Nystrom) 1998-01-09 22:23:44 +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 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 9c20093835 Make pmap_activate() and pmap_deactivate() take a struct proc *. 1997-12-31 10:12:55 +00:00
is a16fd7d74e Make these compile after m68k/m68k.h 1.4->1.5. 1997-10-26 21:41:34 +00:00
thorpej f53f16dd2e Move the prototype of hp300_calibrate_delay() to cpu.h 1997-10-12 18:37:56 +00:00
jtc 4c9d6e4d9c Fix tipo inherited from old version of TNF copyright template. 1997-10-09 08:58:45 +00:00
carrel 3f5b21562b Add missing definition needed for COMPAT_SUNOS 1997-10-05 02:12:52 +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
mycroft 42c101eb00 Fix execve(2) and *setregs() interfaces so emulations can set registers in a
more correct way.  (See tech-kern.)
1997-09-12 05:48:08 +00:00
scottr 0755be1f84 Use optimized _splraise() implementation, from mac68k/intr.h 1997-07-24 05:43:08 +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
mrg dc6a98e92c bring mrg-vm-swap2 onto mainilne. 1997-06-12 15:09:23 +00:00
kleink a10178c21e GC this file. It has been unused for quite a while. 1997-06-11 08:42:31 +00:00
veego be611a44d5 The 'Mach derived conversion macros' are now in <m68k/param.h> 1997-06-10 18:59:12 +00:00
veego 323d575e58 s/hp300_btop/m68k_btop/ 1997-06-10 18:58:19 +00:00
veego 931d90fcee Use the MI <m68k/param.h> include. 1997-06-10 07:54:35 +00:00
thorpej 989ed431e1 Oops, the numbers for "t" and "s" got swapped around. No functional
difference, just correct now.
1997-05-01 05:26:48 +00:00
thorpej 97a6c32e58 Garbage-collect a bunch of _very_ hp300-specific code, most of which
doesn't work anyhow (due to current and future fundamental differences
between NetBSD and HP-UX device semantics).  This can probably be shared
with other m68k ports now.
1997-04-27 21:38:57 +00:00
thorpej 80ff0f0f2f - Move a bunch of hp300 SPU-specific stuff out of cpu.h, and place it
in new hp300spu.h file.  This includes the code that associates
  model number with cpu/mmu/cache combinations.
- Define "mmuid" constants for several models, derived from code
  provided by Mike Smith.
1997-04-27 20:37:07 +00:00
thorpej 30166b9778 Rearrange the interrupt code slightly:
- place all interrupt-related macros, prototypes, etc. into <machine/intr.h>,
  like other ports.
- rename isrlink/isrunlink/isrinit, etc. intr_establish/intr_disestablish/
  intr_init, etc., and move to intr.c for naming consistency.
- don't call intr_init() twice.
1997-04-14 02:28:43 +00:00
thorpej 81f55f1cc8 regdump() is prototyped in m68k/cpu.h now. 1997-04-09 20:08:25 +00:00
thorpej c3c59721e2 kcore.h for hp300 - just pulls in the common m68k kcore.h 1997-04-09 19:51:36 +00:00
scottr 6c7f504b20 Add forward declarations for struct exec_package and struct exec_vmcmd,
to minimize the number of unnecessary #includes.
1997-04-01 20:05:14 +00:00
scottr 4c6e335897 Add prototypes as appropriate. 1997-04-01 03:03:56 +00:00
gwr 5485e1ff75 Need a common <m68k/pcb.h> for gdb. 1997-03-31 21:39:51 +00:00
mycroft c14b8539e0 Make active_user_pmap() DTRT while a process is exiting. 1997-03-18 16:39:30 +00:00
mycroft d19eaa3d4f Add an active_user_pmap() macro, and use it as appropriate. 1997-03-18 14:13:55 +00:00
thorpej e93bf2f15b Garbage-collect hpux_dumpu(). 1997-03-16 10:00:45 +00:00
thorpej 5a1149b25d Nuke MDP_HPUXTRACE. 1997-03-16 09:40:01 +00:00
thorpej c5b6d5ed07 Prototype hpux_setregs(). 1997-03-16 09:14:25 +00:00
thorpej 27c7e59344 Define the HP-UX sigcontext structure here, and prototype hpux_sendsig(). 1997-03-16 03:45:33 +00:00
thorpej 1023932f47 User text segment begins at 8k, now, to match the other m68k ports. 1997-03-15 22:02:24 +00:00
thorpej 26644d1232 Change MID_MACHINE to MID_M68K; we now use the same executable format as
the rest of the m68k ports.
1997-03-15 22:01:02 +00:00
thorpej 0e368d2e40 Don't set __LDPGSZ to 4096; we use 8192 like the rest of m68k-land, now. 1997-03-15 21:59:20 +00:00
fvdl 115b6d92fa Define ALIGNED_POINTER 1997-02-24 23:16:53 +00:00
thorpej 14a4465f0b - Implement _splraise(), like _spl(), but only modifies the SR if the
new ipl is higher than the ipl currently set in SR.  (Thanks to
  scottr@netbsd.org for implementing it while I was busy with other stuff!)
- Define spl{bio,net,tty,imp} in terms of _splraise().
- Move definition of splhil() here, and define splkbd() as an alias for it.
1997-02-02 09:34:26 +00:00
thorpej 7b4ca2ebe5 Kill __BROKEN_INDIRECT_CONFIG 1996-12-17 08:11:50 +00:00
thorpej ce7ecde8a3 Dynamically compute the PSL value for spl{bio,net,tty,imp}() calls. 1996-12-09 03:04:46 +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
thorpej bbdd41a2a7 Back out last change, and add a comment about what should happen.
(*grumble* will teach me to do a `make clean' next time.)
1996-10-20 23:23:28 +00:00
thorpej 7958973110 Set VM_MIN_KERNEL_ADDRESS to NBPG. This is a better way of getting
the kernel_map to treat page 0 properly.
1996-10-19 21:07:42 +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
thorpej eeef0d1784 Prototypes for functions in locore.s and machdep.c (oops, forgot to
check this in the other day...)
1996-10-07 06:29:30 +00:00
thorpej 67cd067f25 Nuke __BDEVSW_DUMP_OLD_TYPE. 1996-10-06 00:15:31 +00:00
thorpej e469c7beca Use <m68k/cpu.h>. 1996-09-11 00:11:42 +00:00
thorpej de5110f41e Use <m68k/exec.h>. 1996-09-08 01:00:35 +00:00
thorpej 503413590e Changes for the new delay() function. 1996-05-17 15:38:08 +00:00
thorpej 91cb72e7ea remove the now unused MHz constants, add a declaration for vectab[],
and document some globals.
1996-05-17 15:37:07 +00:00
scottr a7b314774d doboot() takes no arguments (from Thorsten Frueauf) 1996-05-09 21:17:04 +00:00
thorpej 8591bb3346 Prototype doboot() and give it the __noreturn__ attribute, so that
machdep.c will compile.
1996-04-27 00:38:44 +00:00
cgd 18ec26aa21 add _MACHINE and _MACHINE_ARCH, which are like MACHINE and MACHINE_ARCH,
execpt without quotes.  meant to be __CONCAT()ted for easy #includes
of machine-dependent headers for MI code (e.g. for the MI ISA/EISA/PCI/TC
bus code).
1996-03-04 05:04:10 +00:00
thorpej b2c3f54207 Fix logic errors in new console probe code that caused framebuffers
outside of "internal i/o" space to not even have a chance at console-hood.
Fix tested by Thorsten Frueauf <frueauf@ira.uka.de>, and offered with
my sincerest apologies that the bug ever existed in the first place.
1996-03-03 16:48:52 +00:00
thorpej ee8a2c002f Copyright assigned to The NetBSD Foundation. 1996-02-28 01:01:17 +00:00
thorpej fa7bee29a5 Completely rework how the console is probed. Console probing no longer
requires pre-autoconfigured devices.  Fix up some prototypes.  Part of the
long journey towards new config.  (GETTING THERE!)
1996-02-24 00:54:53 +00:00
mycroft 88e512b693 LOCORE -> _LOCORE 1996-02-01 22:28:24 +00:00
thorpej d9bce7422e Move the obviously machine-dependent HP-UX compat code to hpux_machdep.{c,h}.
A fair bit of this, the m68k core dump and exec goo, can probably be
made into a generic m68k hpux module, eventually.

More to be placed in hpux_machdep.c - keep your eyes peeled...
1996-01-06 12:44:06 +00:00
mycroft ce000f04ef Remove deprecated cpu_setstack(). 1995-12-21 05:01:32 +00:00
thorpej 540dfebf15 Rather than using individual HP300 model names, map those model names to
properties such as "M68040" and "M68K_MMU_MOTOROLA", used to conditionally
compile code.  This is more in-line with now the other m68k ports do it,
and makes it much easier to find "common ground" among them.

In locore.s, use the MMU-type constants defined my <machine/cpu.h> rather
than "expanded" values.

Because HP300-model names are mapped to CPU/MMU combinations in
<machine/cpu.h>, no change to kernel configuration will be necessary.
1995-12-11 17:09:09 +00:00
thorpej b92924680d Garbage collect some stuff that isn't used. Rename the relocation info
structure to be consistent with the other m68k ports.  XXX that struct needs
to move to an m68k common file.
1995-11-20 01:15:26 +00:00
mycroft 54c9a1df90 Replace splnet() with splsoftnet(). Add splnet(). 1995-08-13 00:22:40 +00:00
cgd c83f9c5568 remove unused cpu_exec() definitions. moved "broken swap" markers, for
ports that still need it, to types.h.
1995-06-28 02:55:18 +00:00
cgd d4a54b73d2 kill user-land DELAY macro, as suggested by gwr. 1995-06-28 02:43:36 +00:00
cgd 2d49c3885b clean up definitions of ctod(), dtoc(), ctob(), btoc(), btodb(), and
dbtob().  remove unused definitions of ctos(), stoc(), and dtob().
1995-06-26 06:55:38 +00:00
cgd 1c0be437b1 define __BDEVSW_DUMP_OLD_TYPE for ports where it's true. clean up
some m68k ports inclusion of common header.
1995-06-26 05:13:37 +00:00
jtc 55fbbc705d Wrap with #ifndef _XXX_FLOAT_H_/#define _XXX_FLOAT_H_/ ... /#endif. 1995-06-20 20:45:22 +00:00
mycroft 9877d5d787 Eliminate the double mapping of the kernel stack. Enable swapping. 1995-05-12 12:54:44 +00:00
jtc 8aa6c376b6 KERNEL -> _KERNEL 1995-05-11 16:52:54 +00:00
cgd 8703076975 define BROKEN_SWAP and/or cpu_swapout as appropriate. 1995-05-05 03:41:51 +00:00
christos de42a28a1b - added sunos_machdep.c for sun3, atari, amiga and mac68k.
- changed machdep.c and trap.c to use struct emul.
- remove ep_setup references.
- added struct emul to all emulations.
1995-04-22 20:24:40 +00:00
jtc 4d37095e31 Fix typo: ieefp.h -> ieeefp.h. 1995-04-16 16:47:03 +00:00
mycroft 22cefc03bc Bring back pmap_kernel(), for now always inlined as a pointer to
kernel_pmap_store.
1995-04-10 12:41:29 +00:00
mycroft e957423a98 Move fp_except and fp_rnd definitions to machine/include. 1995-04-09 21:31:58 +00:00
jtc 71ab4ed9dc KERNEL -> _KERNEL 1995-03-28 18:13:48 +00:00