Home | History | Annotate | only in /src/sys/arch/sun68k
History log of /src/sys/arch/sun68k
RevisionDateAuthorComments
 1.2 29-Jan-2002  thorpej Descend into include.
 1.1 14-Jun-2001  fredette branches: 1.1.2; 1.1.8;
Added sources for the sun2 boot blocks and other
sun68k-ish code, all of which ought to eventually
be shared with the sun3.
 1.1.8.2 28-Feb-2002  nathanw Catch up to -current.
 1.1.8.1 14-Jun-2001  nathanw file Makefile was added on branch nathanw_sa on 2002-02-28 04:12:25 +0000
 1.1.2.1 11-Feb-2002  jdolecek Sync w/ -current.
 1.7 14-Jan-2024  thorpej Switch the sun68k platforms over to the common m68k interrupt dispatch code.
 1.6 13-Jan-2024  thorpej Switch the sun68k platforms over to the common m68k vector table.
 1.5 05-Oct-2006  tsutsui Make sun3 use common sun68k/sun68k/isr.c, sun68k/include/cpu.h and
sun68k/include/intr.h.

This also means now sun3 has GENERIC_SOFT_INTERRUPTS support,
so also adapt fd.c and zs.c to MI softintr(9) APIs.

(I'll also update related sources in yamt-splraiseipl branch later)
 1.4 01-Oct-2006  tsutsui First attempt at bus_space(9) support for sun3 with common sun68k/bus.c:
- make sun3 port use common sun68k files as much as possible
- add temporary options _SUN2_ in std.sun2 until sun3 can share all
sun68k files (autoconf.c and isr.c are not yet)
- move sun68kvme declaration temporary as well from files.sun68k to files.sun2
- rename and move sun68k_find_prom_map() function to MD sources since it
can't be shared with sun3
- add bus tag members to struct confargs and initilize them where appropriate

XXX1: MD bus_dma(9) backends are not implemented (yet).
XXX2: more code (obio etc.) should be shared among sun3, sun3x and sun2.
 1.3 30-Sep-2006  tsutsui - move m68k common stuff from files.sun2 to files.sun68k
- use common dev/sun/disksubr.c
 1.2 03-Nov-2002  chs branches: 1.2.22; 1.2.52; 1.2.54;
merge all the m68k copies of kgdb_machdep.c.
 1.1 27-Jun-2001  fredette branches: 1.1.8;
Added a kernel files/devices config file covering
the common sun68k code.
 1.1.8.2 11-Nov-2002  nathanw Catch up to -current
 1.1.8.1 27-Jun-2001  nathanw file files.sun68k was added on branch nathanw_sa on 2002-11-11 22:05:43 +0000
 1.2.54.1 06-Oct-2006  tsutsui Sync files of recent sun3 and sun68k merge and intersil7170(4) changes
with HEAD to build sun3 kernel on this branch.
 1.2.52.1 18-Nov-2006  ad Sync with head.
 1.2.22.1 30-Dec-2006  yamt sync with head.
 1.3 14-Jan-2024  thorpej Merge common sun68k types defns into <sun68k/types.h>.
 1.2 26-Nov-2002  lukem Remove KDIR=, since SYS_INCLUDE=symlinks and KDIR are not supported any more.
 1.1 27-Jun-2001  fredette branches: 1.1.8;
Added a Makefile to install sun68k common headers.
 1.1.8.2 11-Dec-2002  thorpej Sync with HEAD.
 1.1.8.1 27-Jun-2001  thorpej file Makefile was added on branch nathanw_sa on 2002-12-11 06:12:35 +0000
 1.10 01-Jul-2008  tsutsui Split device_t/softc with misc cosmetic changes.
 1.9 28-Apr-2008  martin branches: 1.9.2; 1.9.4;
Remove clause 3 and 4 from TNF licenses
 1.8 30-Sep-2006  tsutsui branches: 1.8.52; 1.8.54; 1.8.56;
Move declarations of mainbus_dma_tag and mainbus_space_tag
to <sun68k/autoconf.h>.
 1.7 11-Dec-2005  christos branches: 1.7.20; 1.7.22;
merge ktrace-lwp.
 1.6 26-Aug-2005  drochner s/locdesc_t/int/g
 1.5 30-Jun-2005  drochner branches: 1.5.2;
adaptions to config_search() change, and minor autoconf fixes, mostly from Havard Eidnes
 1.4 22-Jan-2005  chs de-__P, remove register, ansify, b* -> mem*, u_int*_t -> uint*_t.
 1.3 14-Dec-2004  chs branches: 1.3.2;
use the generated macros in locators.h rather than hard-coded numbers
to index the cf_loc[] array. reviewed by allen briggs.
 1.2 27-Jun-2001  fredette branches: 1.2.8; 1.2.24;
Now give at least the appearance of having bus-specific
attach args. In reality everything is still one structure,
now called mainbus_attach_args, and a series of macros
creates the illusion.
 1.1 14-Jun-2001  fredette Added sources for the sun2 boot blocks and other
sun68k-ish code, all of which ought to eventually
be shared with the sun3.
 1.2.24.3 10-Nov-2005  skrll Sync with HEAD. Here we go again...
 1.2.24.2 24-Jan-2005  skrll Sync with HEAD.
 1.2.24.1 18-Dec-2004  skrll Sync with HEAD.
 1.2.8.2 27-Jun-2001  fredette Now give at least the appearance of having bus-specific
attach args. In reality everything is still one structure,
now called mainbus_attach_args, and a series of macros
creates the illusion.
 1.2.8.1 27-Jun-2001  fredette file autoconf.h was added on branch nathanw_sa on 2001-06-27 02:53:08 +0000
 1.3.2.1 29-Apr-2005  kent sync with -current
 1.5.2.2 30-Dec-2006  yamt sync with head.
 1.5.2.1 21-Jun-2006  yamt sync with head.
 1.7.22.1 06-Oct-2006  tsutsui Sync files of recent sun3 and sun68k merge and intersil7170(4) changes
with HEAD to build sun3 kernel on this branch.
 1.7.20.1 18-Nov-2006  ad Sync with head.
 1.8.56.2 04-May-2009  yamt sync with head.
 1.8.56.1 16-May-2008  yamt sync with head.
 1.8.54.1 18-May-2008  yamt sync with head.
 1.8.52.2 02-Jul-2008  mjf Sync with HEAD.
 1.8.52.1 02-Jun-2008  mjf Sync with HEAD.
 1.9.4.1 03-Jul-2008  simonb Sync with head.
 1.9.2.1 18-Sep-2008  wrstuden Sync with wrstuden-revivesa-base-2.
 1.19 23-Sep-2019  skrll Provide PRIxBUSADDR, PRIxBUSSIZE, PRIuBUSSIZE, and PRIxBSH for all arches
to follow arm and (generic) mips.

Reviewed by christos.
 1.18 12-Jul-2011  mrg branches: 1.18.54;
mark bus functions as static inline, not just plain inline.
 1.17 01-Jul-2008  tsutsui - avoid extra offset calculation in region/multi ops
- fix swapped dist/src in copy_region ops
 1.16 28-Apr-2008  martin branches: 1.16.2; 1.16.4;
Remove clause 3 and 4 from TNF licenses
 1.15 04-Mar-2007  christos branches: 1.15.40; 1.15.42; 1.15.44;
Kill caddr_t; there will be some MI fallout, but it will be fixed shortly.
 1.14 21-Feb-2007  mrg add a pair of new bus_dma(9) functions:
int _bus_dmatag_subregion(bus_dma_tag_t tag,
bus_addr_t min_addr,
bus_addr_t max_addr,
bus_dma_tag_t *newtag,
int flags)
void _bus_dmatag_destroy(bus_dma_tag_t tag)

that allow a (normally broken/limited) device to restrict the bus address
range it can talk to. this is used by bce(4) to limit DMA addresses to
1GB range, the maximum the chip can address.

all this is from Yorick Hardy <yhardy@uj.ac.za> with input from several
people on tech-kern.

XXX: bus_dma(9) needs an update still.
 1.13 03-Oct-2006  tsutsui branches: 1.13.4;
- change find_prom_map() to take paddr_t and return vaddr_t rather than
bus_space_handle_t since bus space handle without bus space tag looks weird
- replace old sun3 obio_find_mapping() with new common find_prom_map()
- add bus_space_vaddr(), from hp300
 1.12 01-Oct-2006  tsutsui First attempt at bus_space(9) support for sun3 with common sun68k/bus.c:
- make sun3 port use common sun68k files as much as possible
- add temporary options _SUN2_ in std.sun2 until sun3 can share all
sun68k files (autoconf.c and isr.c are not yet)
- move sun68kvme declaration temporary as well from files.sun68k to files.sun2
- rename and move sun68k_find_prom_map() function to MD sources since it
can't be shared with sun3
- add bus tag members to struct confargs and initilize them where appropriate

XXX1: MD bus_dma(9) backends are not implemented (yet).
XXX2: more code (obio etc.) should be shared among sun3, sun3x and sun2.
 1.11 16-Feb-2006  perry branches: 1.11.14; 1.11.16;
Change "inline" back to "__inline" in .h files -- C99 is still too
new, and some apps compile things in C89 mode. C89 keywords stay.

As per core@.
 1.10 24-Dec-2005  perry branches: 1.10.2; 1.10.4; 1.10.6;
__asm__ -> __asm
__const__ -> const
__inline__ -> inline
__volatile__ -> volatile
 1.9 11-Dec-2005  christos merge ktrace-lwp.
 1.8 09-Mar-2005  matt branches: 1.8.4;
Add a dm_maxsegsz public member to bus_dmamap_t. This allows a user of the API
to select the maximum segment size for each bus_dmamap_load (up to the maxsegsz
supplied to bus_dmamap_create). dm_maxsegsz is reset to the value supplied to
bus_dmamap_create when the dmamap is unloaded.
 1.7 22-Jan-2005  chs branches: 1.7.2;
de-__P, remove register, ansify, b* -> mem*, u_int*_t -> uint*_t.
 1.6 21-Sep-2003  cl branches: 1.6.8;
make compile
 1.5 15-Jun-2003  fvdl branches: 1.5.2;
Handle 64bit DMA addresses on PCI for platforms that can (currently only
enabled on amd64). Add a dmat64 field to various PCI attach structures,
and pass it down where needed. Implement a simple new function called
pci_dma64_available(pa) to test if 64bit DMA addresses may be used.
This returns 1 iff _PCI_HAVE_DMA64 is defined in <machine/pci_machdep.h>,
and there is more than 4G of memory.
 1.4 28-Jan-2003  kent Introduce BUS_DMA_NOCACHE, and bus_dmamem_map() of i386 supports it.
 1.3 30-Nov-2001  fredette Implement bus_space_mmap.
 1.2 19-Jul-2001  thorpej branches: 1.2.6;
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.
 1.1 14-Jun-2001  fredette branches: 1.1.2;
Added sources for the sun2 boot blocks and other
sun68k-ish code, all of which ought to eventually
be shared with the sun3.
 1.1.2.2 10-Jan-2002  thorpej Sync kqueue branch with -current.
 1.1.2.1 03-Aug-2001  lukem update to -current
 1.2.6.2 08-Jan-2002  nathanw Catch up to -current.
 1.2.6.1 19-Jul-2001  nathanw file bus.h was added on branch nathanw_sa on 2002-01-08 00:28:21 +0000
 1.5.2.5 01-Apr-2005  skrll Sync with HEAD.
 1.5.2.4 24-Jan-2005  skrll Sync with HEAD.
 1.5.2.3 21-Sep-2004  skrll Fix the sync with head I botched.
 1.5.2.2 18-Sep-2004  skrll Sync with HEAD.
 1.5.2.1 03-Aug-2004  skrll Sync with HEAD
 1.6.8.1 29-Apr-2005  kent sync with -current
 1.7.2.1 19-Mar-2005  yamt sync with head. xen and whitespace. xen part is not finished.
 1.8.4.4 03-Sep-2007  yamt sync with head.
 1.8.4.3 26-Feb-2007  yamt sync with head.
 1.8.4.2 30-Dec-2006  yamt sync with head.
 1.8.4.1 21-Jun-2006  yamt sync with head.
 1.10.6.1 22-Apr-2006  simonb Sync with head.
 1.10.4.1 09-Sep-2006  rpaulo sync with head
 1.10.2.1 18-Feb-2006  yamt sync with head.
 1.11.16.1 06-Oct-2006  tsutsui Sync files of recent sun3 and sun68k merge and intersil7170(4) changes
with HEAD to build sun3 kernel on this branch.
 1.11.14.1 18-Nov-2006  ad Sync with head.
 1.13.4.2 12-Mar-2007  rmind Sync with HEAD.
 1.13.4.1 27-Feb-2007  yamt - sync with head.
- move sched_changepri back to kern_synch.c as it doesn't know PPQ anymore.
 1.15.44.2 04-May-2009  yamt sync with head.
 1.15.44.1 16-May-2008  yamt sync with head.
 1.15.42.1 18-May-2008  yamt sync with head.
 1.15.40.2 02-Jul-2008  mjf Sync with HEAD.
 1.15.40.1 02-Jun-2008  mjf Sync with HEAD.
 1.16.4.1 03-Jul-2008  simonb Sync with head.
 1.16.2.1 18-Sep-2008  wrstuden Sync with wrstuden-revivesa-base-2.
 1.18.54.1 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.28 20-Jan-2024  thorpej Largely unify the <machine/cpu.h> headers on the m68k platforms.
 1.27 19-Jan-2024  thorpej Consistently use "intr_depth" as the name of the interrupt depth counter
on m68k platforms.
 1.26 24-Nov-2019  ad Correction to previous.
 1.25 23-Nov-2019  ad cpu_need_resched():

- Remove all code that should be MI, leaving the bare minimum under arch/.
- Make the required actions very explicit.
- Pass in LWP pointer for convenience.
- When a trap is required on another CPU, have the IPI set it locally.
- Expunge cpu_did_resched().
 1.24 23-Aug-2018  msaitoh Remove inclusion of old m68k/sysctl.h
 1.23 19-Oct-2013  christos branches: 1.23.28; 1.23.30;
make cpu_need_resched() macros consistent; __USE flags
 1.22 22-Dec-2010  matt branches: 1.22.8; 1.22.18; 1.22.22;
Collect cpu_info and friends and move to m68k/include/cpu.h
Add a define __HAVE_CPU_DATA_FIRST which means that cpu_data is the first
member in struct cpu_info.
 1.21 21-Oct-2009  rmind branches: 1.21.4;
Remove uarea swap-out functionality:

- Addresses the issue described in PR/38828.
- Some simplification in threading and sleepq subsystems.
- Eliminates pmap_collect() and, as a side note, allows pmap optimisations.
- Eliminates XS_CTL_DATA_ONSTACK in scsipi code.
- Avoids few scans on LWP list and thus potentially long holds of proc_lock.
- Cuts ~1.5k lines of code. Reduces amd64 kernel size by ~4k.
- Removes __SWAP_BROKEN cases.

Tested on x86, mips, acorn32 (thanks <mpumford>) and partly tested on
acorn26 (thanks to <bjh21>).

Discussed on <tech-kern>, reviewed by <ad>.
 1.20 26-Jan-2008  tsutsui branches: 1.20.10;
Also account idepth in clock interrupt handlers
(which are registered directly by isr_add_custom())
and use the idepth value for CLKF_INTR().
 1.19 17-Oct-2007  garbled branches: 1.19.2;
Merge the ppcoea-renovation branch to HEAD.

This branch was a major cleanup and rototill of many of the various OEA
cpu based PPC ports that focused on sharing as much code as possible
between the various ports to eliminate near-identical copies of files in
every tree. Additionally there is a new PIC system that unifies the
interface to interrupt code for all different OEA ppc arches. The work
for this branch was done by a variety of people, too long to list here.

TODO:
bebox still needs work to complete the transition to -renovation.
ofppc still needs a bunch of work, which I will be looking at.
ev64260 still needs to be renovated
amigappc was not attempted.

NOTES:
pmppc was removed as an arch, and moved to a evbppc target.
 1.18 04-Aug-2007  ad branches: 1.18.2;
Add ci_cpuid where it's missing.
 1.17 21-May-2007  tsutsui branches: 1.17.2; 1.17.4; 1.17.8;
Move declarations of m68k common functions
from <machine/cpu.h> to <m68k/m68k.h>.
While here, remove some obsolete function decls.
 1.16 21-May-2007  tsutsui Make netintr() static since it's referred only in sun68k/isr.c.
 1.15 20-May-2007  mhitch Add missing call to lwp_startup() in lwp_trampoline() (which was renamed
from proc_trampoline to match the other ports).

A DIAGNOSTIC kernel will now boot and run. LOCKDEBUG still doesn't work yet.
Also, my amiga no longer loses time.
 1.14 18-May-2007  tsutsui Adapt sun68k ports to yamt-idlelwp.
Tested on TME (sun2 and sun3) and 3/80 (sun3x).
 1.13 16-Feb-2007  ad branches: 1.13.6; 1.13.8; 1.13.14;
Remove spllowersoftclock() and CLKF_BASEPRI(), and always dispatch callouts
via a soft interrupt. In the near future, softclock will be run from process
context.
 1.12 09-Feb-2007  ad Merge newlock2 to head.
 1.11 05-Oct-2006  tsutsui Minor cleanups before isr.c merge with sun3:
- include <m68k/cpu.h> rather than <m68k/m68k.h> in <sun68k/cpu.h>
- wrap M68K_VAC definition with #ifndef _SUN3X_ in <sun68k/cpu.h>
- move setsoftnet() macro from <sun68k/cpu.h> to <sun68k/intr.h>
- move declarations for isr_soft_request() and isr_soft_clear() from
sun2/include/intr.h to <sun68k/intr.h>
- remove extern keyword from function declarations
 1.10 11-Dec-2005  christos branches: 1.10.20; 1.10.22;
merge ktrace-lwp.
 1.9 22-Jan-2005  chs branches: 1.9.8;
de-__P, remove register, ansify, b* -> mem*, u_int*_t -> uint*_t.
 1.8 22-Sep-2004  yamt branches: 1.8.4;
move some per-cpu data definitions to MI place so that they can be modified
without touching all ports. discussed on tech-kern@.
 1.7 04-Jan-2004  jdolecek Rearrange process exit path to avoid need to free resources from different
process context ('reaper').

From within the exiting process context:
* deactivate pmap and free vmspace while we can still block
* introduce MD cpu_lwp_free() - this cleans all MD-specific context (such
as FPU state), and is the last potentially blocking operation;
all of cpu_wait(), and most of cpu_exit(), is now folded into cpu_lwp_free()
* process is now immediatelly marked as zombie and made available for pickup
by parent; the remaining last lwp continues the exit as fully detached
* MI (rather than MD) code bumps uvmexp.swtch, cpu_exit() is now same
for both 'process' and 'lwp' exit

uvm_lwp_exit() is modified to never block; the u-area memory is now
always just linked to the list of available u-areas. Introduce (blocking)
uvm_uarea_drain(), which is called to release the excessive u-area memory;
this is called by parent within wait4(), or by pagedaemon on memory shortage.
uvm_uarea_free() is now private function within uvm_glue.c.

MD process/lwp exit code now always calls lwp_exit2() immediatelly after
switching away from the exiting lwp.

g/c now unneeded routines and variables, including the reaper kernel thread
 1.6 21-Sep-2003  cl make compile
 1.5 07-Aug-2003  agc Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22364, verified by myself.
 1.4 18-Jan-2003  thorpej branches: 1.4.2;
Merge the nathanw_sa branch.
 1.3 20-Oct-2002  chs merge the 12 copies of vm_machdep.c on the m68k platforms.
clean up some other stuff along the way, including:
- use m68k/cacheops.*, remove duplicates from cpu.h.
- centralize a few declarations in (all the copies of) cpu.h.
- define M68K_VAC on platforms which have a VAC.
- switch the sun platforms to the (now common) proc_trampoline().
- do the phys_map thang on the sun platforms too, no reason not to.
 1.2 27-Jun-2001  fredette branches: 1.2.8;
Use _KERNEL_OPT.
 1.1 14-Jun-2001  fredette Added sources for the sun2 boot blocks and other
sun68k-ish code, all of which ought to eventually
be shared with the sun3.
 1.2.8.3 11-Nov-2002  nathanw Catch up to -current
 1.2.8.2 08-Dec-2001  thorpej Add a cpu_proc_fork(), called from uvm_proc_fork(), which takes care
of machine-dependent handling a fork() time (this is different from
forking the actual context in an LWP world). #define it away on
platforms which do not need it.

Problem noted by Gregory McGarry.
 1.2.8.1 27-Jun-2001  thorpej file cpu.h was added on branch nathanw_sa on 2001-12-08 08:22:44 +0000
 1.4.2.5 24-Jan-2005  skrll Sync with HEAD.
 1.4.2.4 24-Sep-2004  skrll Sync with HEAD.
 1.4.2.3 21-Sep-2004  skrll Fix the sync with head I botched.
 1.4.2.2 18-Sep-2004  skrll Sync with HEAD.
 1.4.2.1 03-Aug-2004  skrll Sync with HEAD
 1.8.4.1 29-Apr-2005  kent sync with -current
 1.9.8.4 04-Feb-2008  yamt sync with head.
 1.9.8.3 03-Sep-2007  yamt sync with head.
 1.9.8.2 26-Feb-2007  yamt sync with head.
 1.9.8.1 30-Dec-2006  yamt sync with head.
 1.10.22.1 06-Oct-2006  tsutsui Sync files of recent sun3 and sun68k merge and intersil7170(4) changes
with HEAD to build sun3 kernel on this branch.
 1.10.20.2 06-Feb-2007  ad Update m68k pasteware.
 1.10.20.1 18-Nov-2006  ad Sync with head.
 1.13.14.2 03-Oct-2007  garbled Sync with HEAD
 1.13.14.1 22-May-2007  matt Update to HEAD.
 1.13.8.1 11-Jul-2007  mjf Sync with head.
 1.13.6.2 20-Aug-2007  ad Sync with HEAD.
 1.13.6.1 27-May-2007  ad Sync with head.
 1.17.8.1 04-Aug-2007  jmcneill Sync with HEAD.
 1.17.4.1 15-Aug-2007  skrll Sync with HEAD.
 1.17.2.1 07-Aug-2007  matt Sync with HEAD.
 1.18.2.2 23-Mar-2008  matt sync with HEAD
 1.18.2.1 06-Nov-2007  matt sync with HEAD
 1.19.2.1 18-Feb-2008  mjf Sync with HEAD.
 1.20.10.1 11-Mar-2010  yamt sync with head
 1.21.4.1 05-Mar-2011  rmind sync with head
 1.22.22.1 18-May-2014  rmind sync with head
 1.22.18.1 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.22.8.1 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.23.30.2 08-Apr-2020  martin Merge changes from current as of 20200406
 1.23.30.1 10-Jun-2019  christos Sync with HEAD
 1.23.28.1 06-Sep-2018  pgoyette Sync with HEAD

Resolve a couple of conflicts (result of the uimin/uimax changes)
 1.4 30-Aug-2011  bouyer Add getlabelusesmbr(), as proposed in
http://mail-index.netbsd.org/tech-userlevel/2011/08/25/msg005404.html
This is used by disk tools such as disklabel(8) to dynamically decide is
the undelyling platform uses a disklabel-in-mbr-partition or not
(instead of using a compile-time list of ports).
getlabelusesmbr() reads the sysctl kern.labelusesmbr, takes its value from the
machdep #define LABELUSESMBR.
For evbmips, make LABELUSESMBR 1 if the platform uses pmon
as bootloader, and 0 (the previous value) otherwise.
 1.3 11-Dec-2005  christos merge ktrace-lwp.
 1.2 22-Jan-2005  chs de-__P, remove register, ansify, b* -> mem*, u_int*_t -> uint*_t.
 1.1 14-Jun-2001  fredette branches: 1.1.8; 1.1.24; 1.1.32;
Added sources for the sun2 boot blocks and other
sun68k-ish code, all of which ought to eventually
be shared with the sun3.
 1.1.32.1 29-Apr-2005  kent sync with -current
 1.1.24.1 24-Jan-2005  skrll Sync with HEAD.
 1.1.8.2 14-Jun-2001  fredette Added sources for the sun2 boot blocks and other
sun68k-ish code, all of which ought to eventually
be shared with the sun3.
 1.1.8.1 14-Jun-2001  fredette file disklabel.h was added on branch nathanw_sa on 2001-06-14 12:57:12 +0000
 1.5 28-Apr-2008  martin Remove clause 3 and 4 from TNF licenses
 1.4 11-Dec-2005  christos branches: 1.4.74; 1.4.76; 1.4.78;
merge ktrace-lwp.
 1.3 19-Jun-2005  thorpej Move common Sun ID PROM definitions into <dev/sun/idprom.h>.
 1.2 22-Jan-2005  chs de-__P, remove register, ansify, b* -> mem*, u_int*_t -> uint*_t.
 1.1 14-Jun-2001  fredette branches: 1.1.8; 1.1.24; 1.1.32;
Added sources for the sun2 boot blocks and other
sun68k-ish code, all of which ought to eventually
be shared with the sun3.
 1.1.32.1 29-Apr-2005  kent sync with -current
 1.1.24.2 10-Nov-2005  skrll Sync with HEAD. Here we go again...
 1.1.24.1 24-Jan-2005  skrll Sync with HEAD.
 1.1.8.2 14-Jun-2001  fredette Added sources for the sun2 boot blocks and other
sun68k-ish code, all of which ought to eventually
be shared with the sun3.
 1.1.8.1 14-Jun-2001  fredette file idprom.h was added on branch nathanw_sa on 2001-06-14 12:57:12 +0000
 1.4.78.1 16-May-2008  yamt sync with head.
 1.4.76.1 18-May-2008  yamt sync with head.
 1.4.74.1 02-Jun-2008  mjf Sync with HEAD.
 1.26 19-Jan-2024  thorpej Add _KERNEL guards around most of the definitions in these files.
 1.25 15-Jan-2024  thorpej G/C __HAVE_LEGACY_INTRCNT from the sun68k platforms.
 1.24 14-Jan-2024  thorpej Switch the sun68k platforms over to the common m68k interrupt dispatch code.
 1.23 14-Jan-2024  thorpej Don't bother with isr_add_custom(). It's just a thin wrapper around
vec_set_entry(), so just use vec_set_entry() directly.
 1.22 12-Jan-2024  thorpej Make getsr() an inline in <m68k/psl.h> and G/C all of the now-redudant
copies.
 1.21 11-Jul-2023  riastradh sun68k/intr.h: Expose ipl_cookie_t to _KMEMUSER for crash(8).
 1.20 22-Jun-2008  tsutsui branches: 1.20.114;
Make cpu_intr_p() inline.
 1.19 15-Jun-2008  tsutsui Unify splraiseipl(9) implementation among m68k ports as per
suggestion from isaki@ on port-m68k.

For sun68k (sun2, sun3 and sun3x):
- export ipl2psl_table[] and make it uint16_t
- make makeiplcookie(9) inline
- put PSL_S bit into ipl2psl_table[] rather than adding it in makeiplcookie(9)
 1.18 26-Jan-2008  tsutsui branches: 1.18.6; 1.18.8; 1.18.10; 1.18.12; 1.18.14;
Also account idepth in clock interrupt handlers
(which are registered directly by isr_add_custom())
and use the idepth value for CLKF_INTR().
 1.17 04-Dec-2007  tsutsui Adapt sun68k ports to recent interrupt handling changes.

XXX: sun2 (m68010) doesn't have CAS instructions.
 1.16 03-Dec-2007  ad branches: 1.16.2;
Interrupt handling changes, in discussion since February:

- Reduce available SPL levels for hardware devices to none, vm, sched, high.
- Acquire kernel_lock only for interrupts at IPL_VM.
- Implement threaded soft interrupts.
 1.15 07-Nov-2007  ad Merge tty changes from the vmlocking branch.
 1.14 11-Mar-2007  tsutsui branches: 1.14.16; 1.14.18; 1.14.22; 1.14.24;
- use splraise4(), which is defined in psl.h
- use splraise6() rather than spl6() for splzs() and splserial()
 1.13 11-Mar-2007  thorpej - Shrink ipl_cookie_t from 32-bits to 16-bits (large enough to hold
an SR value or an IPL_* constant).
- Take advange of the smaller ipl_cookie_t to shrink kmutex_t from
16 bytes to 8 bytes by overlapping storage where possible.
- Implement a RAS-based _lock_cas() for mc68010 systems (Sun2). See
sun68k/sun68k/isr.c.

Tested on various m68k platforms, but NOT Sun2. In any case, at least
Sun2 compiles now.
 1.12 16-Feb-2007  ad branches: 1.12.2; 1.12.6;
Remove spllowersoftclock() and CLKF_BASEPRI(), and always dispatch callouts
via a soft interrupt. In the near future, softclock will be run from process
context.
 1.11 23-Jan-2007  tsutsui Two fixes to avoid lost softintr (probably caused by some race condition):
- make sh_pending in struct softintr_handler volatile
- activate softintr unconditionally in softintr_schedule()
 1.10 21-Dec-2006  yamt merge yamt-splraiseipl branch.

- finish implementing splraiseipl (and makeiplcookie).
http://mail-index.NetBSD.org/tech-kern/2006/07/01/0000.html
- complete workqueue(9) and fix its ipl problem, which is reported
to cause audio skipping.
- fix netbt (at least compilation problems) for some ports.
- fix PR/33218.
 1.9 05-Oct-2006  tsutsui Minor cleanups before isr.c merge with sun3:
- include <m68k/cpu.h> rather than <m68k/m68k.h> in <sun68k/cpu.h>
- wrap M68K_VAC definition with #ifndef _SUN3X_ in <sun68k/cpu.h>
- move setsoftnet() macro from <sun68k/cpu.h> to <sun68k/intr.h>
- move declarations for isr_soft_request() and isr_soft_clear() from
sun2/include/intr.h to <sun68k/intr.h>
- remove extern keyword from function declarations
 1.8 07-Aug-2006  tsutsui branches: 1.8.4; 1.8.6;
Workaround fix for a problem caused after IPL_* macro changes.
Based on a patch from mrg on port-sun2.
 1.7 29-Mar-2006  yamt implement splraiseipl() for sun2 and sun3. reviewed by Izumi Tsutsui.
 1.6 16-Feb-2006  perry branches: 1.6.2; 1.6.4; 1.6.6;
Change "inline" back to "__inline" in .h files -- C99 is still too
new, and some apps compile things in C89 mode. C89 keywords stay.

As per core@.
 1.5 24-Dec-2005  perry branches: 1.5.2; 1.5.4; 1.5.6;
Remove leading __ from __(const|inline|signed|volatile) -- it is obsolete.
 1.4 11-Dec-2005  christos merge ktrace-lwp.
 1.3 23-Jan-2005  chs branches: 1.3.8;
move spl*() and IPL_* definitions from psl.h to intr.h.
 1.2 22-Jan-2005  chs de-__P, remove register, ansify, b* -> mem*, u_int*_t -> uint*_t.
 1.1 14-Jun-2001  fredette branches: 1.1.8; 1.1.24; 1.1.32;
Added sources for the sun2 boot blocks and other
sun68k-ish code, all of which ought to eventually
be shared with the sun3.
 1.1.32.1 29-Apr-2005  kent sync with -current
 1.1.24.1 24-Jan-2005  skrll Sync with HEAD.
 1.1.8.2 14-Jun-2001  fredette Added sources for the sun2 boot blocks and other
sun68k-ish code, all of which ought to eventually
be shared with the sun3.
 1.1.8.1 14-Jun-2001  fredette file intr.h was added on branch nathanw_sa on 2001-06-14 12:57:12 +0000
 1.3.8.7 04-Feb-2008  yamt sync with head.
 1.3.8.6 07-Dec-2007  yamt sync with head
 1.3.8.5 15-Nov-2007  yamt sync with head.
 1.3.8.4 03-Sep-2007  yamt sync with head.
 1.3.8.3 26-Feb-2007  yamt sync with head.
 1.3.8.2 30-Dec-2006  yamt sync with head.
 1.3.8.1 21-Jun-2006  yamt sync with head.
 1.5.6.1 22-Apr-2006  simonb Sync with head.
 1.5.4.1 09-Sep-2006  rpaulo sync with head
 1.5.2.1 18-Feb-2006  yamt sync with head.
 1.6.6.1 31-Mar-2006  tron Merge 2006-03-31 NetBSD-current into the "peter-altq" branch.
 1.6.4.1 19-Apr-2006  elad sync with head - hopefully this will work
 1.6.2.2 11-Aug-2006  yamt sync with head
 1.6.2.1 01-Apr-2006  yamt sync with head.
 1.8.6.4 23-Oct-2006  yamt add splsoftserial and splserial.
 1.8.6.3 06-Oct-2006  tsutsui Sync files of recent sun3 and sun68k merge and intersil7170(4) changes
with HEAD to build sun3 kernel on this branch.
 1.8.6.2 19-Sep-2006  yamt implement new api for sun2.
 1.8.6.1 19-Sep-2006  yamt revert old version of splraiseipl().
 1.8.4.3 01-Feb-2007  ad Sync with head.
 1.8.4.2 12-Jan-2007  ad Sync with head.
 1.8.4.1 18-Nov-2006  ad Sync with head.
 1.12.6.2 03-Dec-2007  ad Sync with HEAD.
 1.12.6.1 13-Mar-2007  ad Sync with head.
 1.12.2.1 12-Mar-2007  rmind Sync with HEAD.
 1.14.24.3 18-Feb-2008  mjf Sync with HEAD.
 1.14.24.2 08-Dec-2007  mjf Sync with HEAD.
 1.14.24.1 19-Nov-2007  mjf Sync with HEAD.
 1.14.22.1 13-Nov-2007  bouyer Sync with HEAD
 1.14.18.3 23-Mar-2008  matt sync with HEAD
 1.14.18.2 09-Jan-2008  matt sync with HEAD
 1.14.18.1 08-Nov-2007  matt sync with -HEAD
 1.14.16.2 09-Dec-2007  jmcneill Sync with HEAD.
 1.14.16.1 11-Nov-2007  joerg Sync with HEAD.
 1.16.2.1 08-Dec-2007  ad Sync with head.
 1.18.14.2 27-Jun-2008  simonb Sync with head.
 1.18.14.1 18-Jun-2008  simonb Sync with head.
 1.18.12.1 23-Jun-2008  wrstuden Sync w/ -current. 34 merge conflicts to follow.
 1.18.10.1 04-May-2009  yamt sync with head.
 1.18.8.1 17-Jun-2008  yamt sync with head.
 1.18.6.1 29-Jun-2008  mjf Sync with HEAD.
 1.20.114.1 09-Aug-2023  martin Pull up following revision(s) (requested by maya in ticket #316):

sys/arch/m68k/include/mutex.h: revision 1.13
sys/arch/arm/include/cpu.h: revision 1.125
sys/arch/sun68k/include/intr.h: revision 1.21
sys/arch/arm/include/mutex.h: revision 1.28
sys/sys/rwlock.h: revision 1.18
sys/arch/powerpc/include/mutex.h: revision 1.7
sys/arch/arm/include/mutex.h: revision 1.29
sys/arch/powerpc/include/mutex.h: revision 1.8
sys/uvm/uvm_param.h: revision 1.42
sys/sys/ksem.h: revision 1.16
sys/arch/x86/include/mutex.h: revision 1.10
sys/sys/proc.h: revision 1.372
sys/sys/ksem.h: revision 1.17
sys/arch/ia64/include/mutex.h: revision 1.8
sys/arch/evbarm/include/intr.h: revision 1.29
sys/sys/lua.h: revision 1.9
sys/arch/next68k/include/intr.h: revision 1.23
sys/arch/ia64/include/mutex.h: revision 1.9
sys/arch/hp300/include/intr.h: revision 1.35
sys/arch/hp300/include/intr.h: revision 1.36
sys/arch/sparc/include/cpu.h: revision 1.111
sys/arch/hppa/include/mutex.h: revision 1.16
sys/arch/vax/include/intr.h: revision 1.31
sys/arch/hppa/include/mutex.h: revision 1.17
sys/arch/news68k/include/intr.h: revision 1.28
sys/arch/hppa/include/mutex.h: revision 1.18
sys/arch/hppa/include/intr.h: revision 1.3
sys/arch/hppa/include/mutex.h: revision 1.19
sys/arch/hppa/include/intr.h: revision 1.4
sys/sys/sched.h: revision 1.92
sys/opencrypto/cryptodev.h: revision 1.51
sys/arch/vax/include/mutex.h: revision 1.20
sys/arch/sparc64/include/mutex.h: revision 1.10
sys/arch/ia64/include/sapicvar.h: revision 1.2
sys/arch/riscv/include/mutex.h: revision 1.5
sys/arch/amiga/dev/grfabs_cc.c: revision 1.39
sys/external/bsd/drm2/include/linux/idr.h: revision 1.11
sys/arch/riscv/include/mutex.h: revision 1.6
sys/ddb/files.ddb: revision 1.16
sys/arch/mac68k/include/intr.h: revision 1.32
share/man/man4/ddb.4: revision 1.203
sys/ddb/db_command.c: revision 1.183
sys/arch/mips/include/mutex.h: revision 1.10
sys/ddb/db_command.c: revision 1.184
sys/arch/x68k/include/intr.h: revision 1.22
sys/arch/sparc/include/psl.h: revision 1.51
sys/arch/or1k/include/mutex.h: revision 1.4
sys/arch/mips/include/mutex.h: revision 1.11
sys/arch/arm/xscale/pxa2x0_intr.h: revision 1.16
sys/arch/sparc64/include/cpu.h: revision 1.134
sys/arch/sparc/include/psl.h: revision 1.52
sys/arch/or1k/include/mutex.h: revision 1.5
sys/arch/mvme68k/include/intr.h: revision 1.22
sys/arch/luna68k/include/intr.h: revision 1.16
external/cddl/osnet/sys/sys/kcondvar.h: revision 1.6
sys/arch/sparc/include/mutex.h: revision 1.12
sys/arch/sparc/include/mutex.h: revision 1.13
sys/arch/usermode/include/mutex.h: revision 1.5
sys/arch/usermode/include/mutex.h: revision 1.6
sys/kern/kern_core.c: revision 1.38
usr.sbin/crash/Makefile: revision 1.49
sys/arch/amiga/include/intr.h: revision 1.23
sys/arch/alpha/include/mutex.h: revision 1.12
sys/arch/alpha/include/mutex.h: revision 1.13
sys/arch/evbarm/lubbock/sacc_obio.c: revision 1.16
sys/ddb/ddb.h: revision 1.6
sys/arch/sparc64/include/mutex.h: revision 1.8
sys/arch/sh3/include/mutex.h: revision 1.12
sys/arch/evbarm/lubbock/sacc_obio.c: revision 1.17
sys/ddb/db_syncobj.c: revision 1.1
sys/arch/vax/include/mutex.h: revision 1.18
sys/arch/sparc64/include/psl.h: revision 1.63
sys/arch/sparc64/include/mutex.h: revision 1.9
sys/arch/sh3/include/mutex.h: revision 1.13
sys/arch/evbarm/lubbock/obio.c: revision 1.13
sys/arch/atari/include/intr.h: revision 1.23
sys/ddb/db_syncobj.c: revision 1.2
sys/arch/vax/include/mutex.h: revision 1.19
sys/arch/evbarm/g42xxeb/obio.c: revision 1.14
sys/arch/evbarm/g42xxeb/obio.c: revision 1.15
sys/arch/cesfic/include/intr.h: revision 1.14
sys/ddb/db_syncobj.h: revision 1.1
sys/arch/x86/include/cpu.h: revision 1.134
sys/arch/evbarm/g42xxeb/obio.c: revision 1.16
sys/arch/cesfic/include/intr.h: revision 1.15
sys/arch/arm/xscale/pxa2x0_intr.c: revision 1.26
sys/sys/cpu_data.h: revision 1.54
sys/arch/m68k/include/mutex.h: revision 1.12
sys/arch/ia64/acpi/madt.c: revision 1.6

sys/rwlock.h: Make this more self-contained for bool.

machine/mutex.h: Sprinkle includes so this can be used by crash(8).

ddb: New `show all tstiles' command.
Shows who's waiting for which locks and what the owner is up to.

Include psl.h for ipl_cookie_t if __MUTEX_PRIVATE

sys: Rip <sys/resourcevar.h> out of <uvm/uvm_param.h>.

And thus out of <sys/param.h>, which is exceedingly overused and
fragile and delenda est.

Should fix (some) issues with the recent inclusion of machine/lock.h
in various machine/mutex.h files.

arm/mutex.h: Need machine/intr.h, machine/lock.h.

For ipl_cookie_t and __cpu_simple_lock_t.
evbarm/intr.h: Define ipl_cookie_t before including ARM_INTR_IMPL.

Otherwise arm/mutex.h doesn't work, due to a cyclic dependency which
should really be fixed.
opencrypto/cryptodev.h: Fix includes.
- Move sys/condvar.h under #ifdef _KERNEL.
- Add some other necessary includes and forward declarations.
- Sort.

hp300/intr.h: Fix missing includes.
linux/idr.h: Need <sys/mutex.h> for kmutex_t.
amiga/intr.h: Don't define spl*() functions if !_KERNEL.

This is used by crash(8) now, and what's important is ipl_cookie_t.
cesfic/intr.h: Expose ipl_cookie_t to userland for crash(8).
cesfic/intr.h: Expose ipl_cookie_t to userland only with _KMEMUSER.

Probably not necessary but let's be a little more cautious about
this.

atari/intr.h: Expose ipl_cookie_t with _KMEMUSER for crash(8).

arm/cpu.h: Need sys/param.h for COHERENCY_UNIT.

Nix machine/param.h -- not meant to be used directly, pulled in by
sys/param.h.

Move the definition of ipl_cookie_t out of the kernel-only sections,
some _KMEMUSER applications need it.

ddb: Cast pointer to uintptr_t first before db_expr_t.

hppa/intr.h: Expose ipl_cookie_t to _KMEMUSER for crash(8).

luna68k/intr.h: Expose ipl_cookie_t to _KMEMUSER for crash(8).

mvme68k/intr.h: Expose ipl_cookie_t to _KMEMUSER for crash(8).

news68k/intr.h: Fix includes. Put some definitions under _KERNEL.

next68k/intr.h: Expose ipl_cookie_t to _KMEMUSER for crash(8).

sys/ksem.h: Hack around fstat(8) abuse of _KERNEL.

sun68k/intr.h: Expose ipl_cookie_t to _KMEMUSER for crash(8).

vax/intr.h: Expose ipl_cookie_t to _KMEMUSER for crash(8).

x68k/intr.h: Put functions under _KERNEL so crash(8) can use this.

Make ipl_cookie_t visible for _KMEMUSER userland applications.

fix editor mishap in previous

Explicitly include <sys/mutex.h> for kmutex_t.

Replace kmutex_t * (which may be undefined here) with struct kmutex *,
suggested by Taylor.

hp300/intr.h: Put most of this under #ifdef _KERNEL.
Only ipl_cookie_t really needs to be exposed now, for crash(8).

mac68k/intr.h: Expose ipl_cookie_t to _KMEMUSER for crash(8).
Make inclusion of sys/intr.h explicit for spl*.

fix hppa and vax builds.

machine/lock.h isn't necessary for __cpu_simple_lock_t, it's in
sys/types.h. avoids cpu_data.h vs sched.h include order issues.

move the hppa ipl_t typedef with the moved usage of it.
machine/mutex.h: Sprinkle sys/types.h, omit machine/lock.h.

Turns out machine/lock.h is not needed for __cpu_simple_lock_t, which
always comes from sys/types.h. And, really, sys/types.h (or at least
sys/stdint.h) is needed for uintN_t and uintptr_t.

ddb: Cast pointer to uintptr_t, then to db_expr_t.
Avoids warnings about conversion between pointer and integer of
different size on some architectures.

re-fix hppa builds.

this file uses __cpu_simple_lock(), not just the underlying type,
so it does need machine/lock.h.

Break cycle by using `struct kmutex *' instead of `kmutex_t *'.
sys/sched.h included sys/mutex.h
which includes sys/intr.h
which includes machine/intr.h
which on cats includes arm/footbridge/footbridge_intr.h
which includes arm/cpu.h
which includes sys/cpu_data.h
which includes sys/sched.h

But there was never any real need for sys/mutex.h in sys/sched.h,
because it only uses pointers to the opaque struct kmutex. Cycle
broken by using `struct kmutex *' instead of pulling in sys/mutex.h
for the definition of kmutex_t.

Side effect: This revealed that sys/cpu_data.h needed sys/intr.h
(which was pulled in accidentally by sys/mutex.h via sys/sched.h) for
SOFTINT_COUNT. Also revealed some other machine/cpu.h header files
were missing includes of sys/mutex.h for kmutex_t.

ia64: Need sys/types.h for u_int, vaddr_t; sys/mutex.h for kmutex_t.

explicitly include no longer implicitly included sys/mutex.h.

arm/xscale: Use sys/bitops.h fls32 - 1 instead of 31 - __builtin_clz.
Sidesteps namespace collision with `#define bits ...' in net/zlib.c.

complete the previous - there were two calls to find_first_bit() to fix.

arm/xscale: Missed a spot with previous find_first_bit commit.

evbarm/g42xxeb: Fix off-by-one in previous.

The original find_first_bit(x) was 31 - __builtin_clz((uint32_t)x),
which is equivalent to fls32(x) - 1, not to fls32(x).

Note that fls32 is 1-based and returns 0 for x=0.
 1.5 06-Aug-2014  joerg Consistently define WARN in a way that passes format string checks, i.e.
always uses the same number of arguments as given in the format string.
 1.4 28-Apr-2008  martin branches: 1.4.44; 1.4.60;
Remove clause 3 and 4 from TNF licenses
 1.3 25-Jan-2006  christos branches: 1.3.72; 1.3.74; 1.3.76;
free -> dealloc
unsigned -> size_t for alloc/dealloc
 1.2 31-Oct-2001  thorpej branches: 1.2.2; 1.2.34; 1.2.46;
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.
 1.1 14-Jun-2001  fredette branches: 1.1.2; 1.1.6;
Added sources for the sun2 boot blocks and other
sun68k-ish code, all of which ought to eventually
be shared with the sun3.
 1.1.6.1 12-Nov-2001  thorpej Sync the thorpej-mips-cache branch with -current.
 1.1.2.1 10-Jan-2002  thorpej Sync kqueue branch with -current.
 1.2.46.1 01-Feb-2006  yamt sync with head.
 1.2.34.1 21-Jun-2006  yamt sync with head.
 1.2.2.2 31-Oct-2001  thorpej 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.
 1.2.2.1 31-Oct-2001  thorpej file loadfile_machdep.h was added on branch nathanw_sa on 2001-10-31 17:20:50 +0000
 1.3.76.1 16-May-2008  yamt sync with head.
 1.3.74.1 18-May-2008  yamt sync with head.
 1.3.72.1 02-Jun-2008  mjf Sync with HEAD.
 1.4.60.1 10-Aug-2014  tls Rebase.
 1.4.44.1 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.4 17-Sep-2006  tsutsui Make sun68k/stand build without installed ${DESTDIR} files.

Currently "machine" symlink points sys/arch/sun68k/include,
but this means some <machine/foo.h> files are taken from
sys/arch/sun68k/include but others (i.e. files not in sun68k/include)
are taken from ${DESTDIR}/usr/include/machine.

Instead, make "machine" symlink point sys/arch/${MACHINE}/include,
make "sun68k" symlink point sys/arch/sun68k/include (not sys/arch/sun68k),
add sys/arch to include path, and move some files where appropriate.
 1.3 03-Jun-2002  fredette branches: 1.3.22; 1.3.52;
Reverted previous commit. It was meant to fix a problem that
was already fixed by nathanw, had I bothered to check.
 1.2 03-Jun-2002  fredette Now make a machine/ directory with symlinks to a small number
of machine-specific headers. When ${MACHINE} is sun2, this
allows building the sun3 and sun3x parts of libsa, which need
things like <machine/param3.h> and <machine/param3x.h> to be
#includeable.
 1.1 14-Jun-2001  fredette branches: 1.1.2; 1.1.8; 1.1.16;
Added sources for the sun2 boot blocks and other
sun68k-ish code, all of which ought to eventually
be shared with the sun3.
 1.1.16.1 15-Jul-2002  gehenna catch up with -current.
 1.1.8.2 20-Jun-2002  nathanw Catch up to -current.
 1.1.8.1 14-Jun-2001  nathanw file mc68851.h was added on branch nathanw_sa on 2002-06-20 03:41:55 +0000
 1.1.2.1 23-Jun-2002  jdolecek catch up with -current on kqueue branch
 1.3.52.1 18-Nov-2006  ad Sync with head.
 1.3.22.1 30-Dec-2006  yamt sync with head.
 1.6 24-Jun-2023  msaitoh Fix typo in comment.
 1.5 28-Apr-2008  martin Remove clause 3 and 4 from TNF licenses
 1.4 11-Dec-2005  christos branches: 1.4.74; 1.4.76; 1.4.78;
merge ktrace-lwp.
 1.3 03-Jun-2005  tsutsui Add const.
 1.2 22-Jan-2005  chs de-__P, remove register, ansify, b* -> mem*, u_int*_t -> uint*_t.
 1.1 14-Jun-2001  fredette branches: 1.1.8; 1.1.24; 1.1.32;
Added sources for the sun2 boot blocks and other
sun68k-ish code, all of which ought to eventually
be shared with the sun3.
 1.1.32.1 29-Apr-2005  kent sync with -current
 1.1.24.2 10-Nov-2005  skrll Sync with HEAD. Here we go again...
 1.1.24.1 24-Jan-2005  skrll Sync with HEAD.
 1.1.8.2 14-Jun-2001  fredette Added sources for the sun2 boot blocks and other
sun68k-ish code, all of which ought to eventually
be shared with the sun3.
 1.1.8.1 14-Jun-2001  fredette file mon.h was added on branch nathanw_sa on 2001-06-14 12:57:12 +0000
 1.4.78.1 16-May-2008  yamt sync with head.
 1.4.76.1 18-May-2008  yamt sync with head.
 1.4.74.1 02-Jun-2008  mjf Sync with HEAD.
 1.2 09-Feb-2007  ad branches: 1.2.4;
Merge newlock2 to head.
 1.1 22-Dec-2006  ad branches: 1.1.2;
file mutex.h was initially added on branch newlock2.
 1.1.2.1 22-Dec-2006  ad Pull in CPU specific stubs.
 1.2.4.2 26-Feb-2007  yamt sync with head.
 1.2.4.1 09-Feb-2007  yamt file mutex.h was added on branch yamt-lazymbuf on 2007-02-26 09:08:38 +0000
 1.5 11-Dec-2005  christos merge ktrace-lwp.
 1.4 23-Jan-2005  chs move spl*() and IPL_* definitions from psl.h to intr.h.
 1.3 22-Jan-2005  chs de-__P, remove register, ansify, b* -> mem*, u_int*_t -> uint*_t.
 1.2 27-Jun-2001  fredette branches: 1.2.8; 1.2.24; 1.2.32;
Now define splzs() here.
 1.1 14-Jun-2001  fredette Added sources for the sun2 boot blocks and other
sun68k-ish code, all of which ought to eventually
be shared with the sun3.
 1.2.32.1 29-Apr-2005  kent sync with -current
 1.2.24.1 24-Jan-2005  skrll Sync with HEAD.
 1.2.8.2 27-Jun-2001  fredette Now define splzs() here.
 1.2.8.1 27-Jun-2001  fredette file psl.h was added on branch nathanw_sa on 2001-06-27 02:51:46 +0000
 1.2 09-Feb-2007  ad branches: 1.2.4;
Merge newlock2 to head.
 1.1 22-Dec-2006  ad branches: 1.1.2;
file rwlock.h was initially added on branch newlock2.
 1.1.2.1 22-Dec-2006  ad Pull in CPU specific stubs.
 1.2.4.2 26-Feb-2007  yamt sync with head.
 1.2.4.1 09-Feb-2007  yamt file rwlock.h was added on branch yamt-lazymbuf on 2007-02-26 09:08:38 +0000
 1.3 15-Jan-2024  thorpej G/C __HAVE_LEGACY_INTRCNT from the sun68k platforms.
 1.2 14-Jan-2024  thorpej Switch the sun68k platforms over to the common m68k interrupt dispatch code.
 1.1 14-Jan-2024  thorpej Merge common sun68k types defns into <sun68k/types.h>.
 1.2 14-Jan-2024  thorpej Switch the sun68k platforms over to the common m68k interrupt dispatch code.
 1.1 13-Jan-2024  thorpej Switch the sun68k platforms over to the common m68k vector table.
 1.4 11-Dec-2005  christos merge ktrace-lwp.
 1.3 02-Nov-2003  chs fix parallel build.
 1.2 22-Apr-2002  fredette branches: 1.2.10;
Removed the old installboot, we now use the new /usr/sbin/installboot.
Now install a raw binary version of bootxx, since that's what this
new installboot expects.
 1.1 14-Jun-2001  fredette branches: 1.1.2; 1.1.8;
Added sources for the sun2 boot blocks and other
sun68k-ish code, all of which ought to eventually
be shared with the sun3.
 1.1.8.2 20-Jun-2002  nathanw Catch up to -current.
 1.1.8.1 14-Jun-2001  nathanw file Makefile was added on branch nathanw_sa on 2002-06-20 03:41:55 +0000
 1.1.2.1 23-Jun-2002  jdolecek catch up with -current on kqueue branch
 1.2.10.3 21-Sep-2004  skrll Fix the sync with head I botched.
 1.2.10.2 18-Sep-2004  skrll Sync with HEAD.
 1.2.10.1 03-Aug-2004  skrll Sync with HEAD
 1.27 03-Sep-2016  christos NOSSP/NOPIE
 1.26 13-Mar-2016  mrg remove some more GCC 4.5 code. make GCC 5.3 be HAVE_GCC=53, so that,
for example, HAVE_GCC >= 48 works properly.
 1.25 26-Jul-2014  tsutsui branches: 1.25.4;
Move sun3 bootloader address to allow loading growing GENERIC kernels.
 1.24 12-Jan-2014  tsutsui branches: 1.24.2;
Add empty LIBCRTI= as LIBCRT0 to build sa programs without installed DESTDIR.

XXX: probabry we should have bsd.saprog.mk or something.
 1.23 04-Jan-2014  christos undo the ld script hack now that the default scripts have been modified to
do this.
 1.22 03-Jan-2014  christos Add a load script that puts text.unlikely after text so that the start
address stays where we are. This is copied from m68kelfnbsd.xbn
 1.21 07-Nov-2013  christos Revert previous change:
gcc-4.8.1 converts -mc68000 to -mcpu=68000 which breaks gas. gas even
breaks with -mcpu=68010, but works with -march=68010 so we'll go with that.
 1.20 07-Nov-2013  christos avoid confusion with 68010 and 68020. The sun3 always was a 68020, and
the code assumes that.
 1.19 12-Aug-2013  joerg Build boot loaders without unwind tables.
 1.18 29-May-2011  tsutsui branches: 1.18.4; 1.18.14; 1.18.18;
Use WARNS?=2 to pull warnings flags.
 1.17 29-May-2011  tsutsui Add ugly definitions to make standalone programs build without
installed DESTDIR binaries.
 1.16 20-Mar-2009  tsutsui branches: 1.16.4; 1.16.6;
Switch sun68k standalone programs to using MI libsa and libkern.
Bump version.

Tested bootxx + ufsboot on TME (sun2 and sun3) and 3/80 (sun3x).
 1.15 15-Mar-2009  tsutsui Use <bsd.klinks.mk> to create MD include dir symlinks.
 1.14 12-Jan-2009  tsutsui branches: 1.14.2;
WARNSfy.
 1.13 17-Sep-2006  tsutsui branches: 1.13.54; 1.13.58; 1.13.66;
Make sun68k/stand build without installed ${DESTDIR} files.

Currently "machine" symlink points sys/arch/sun68k/include,
but this means some <machine/foo.h> files are taken from
sys/arch/sun68k/include but others (i.e. files not in sun68k/include)
are taken from ${DESTDIR}/usr/include/machine.

Instead, make "machine" symlink point sys/arch/${MACHINE}/include,
make "sun68k" symlink point sys/arch/sun68k/include (not sys/arch/sun68k),
add sys/arch to include path, and move some files where appropriate.
 1.12 17-Sep-2006  tsutsui Always set CFLAGS, CPUFLAGS, and COPTS explicitly like i386/stand
to override settings in /etc/mk.conf, so that build won't fail
in sun68k which contains both sun2 and sun3 sources.

Suggested by thorpej, and closes PR toolchain/34528.
 1.11 11-Dec-2005  christos branches: 1.11.20;
merge ktrace-lwp.
 1.10 05-Aug-2005  skrll Don't make symlinks when doing obj, clean, or cleandir targets.
 1.9 12-May-2005  jmc branches: 1.9.2;
Don't need realall/realdepend now that .BEGIN works
 1.8 30-Nov-2003  tsutsui Specify 32bit daddr_t not only for ufsboot but also libsa and all SA_PROGs.
Now bootxx and ufsboot works again.
 1.7 27-Jul-2003  mrg need -ffreestanding
 1.6 17-Jun-2002  fredette branches: 1.6.6;
Compile all standalones for the 68010, which makes bootblocks
compiled for the sun3 also usable on a sun2. This enables
making a single filesystem that can boot on all of sun2, sun3,
and sun3x (say, like on a CD-ROM).
 1.5 03-Jun-2002  fredette Reverted previous commit. It was meant to fix a problem that
was already fixed by nathanw, had I bothered to check.
 1.4 03-Jun-2002  fredette Now make a machine/ directory with symlinks to a small number
of machine-specific headers. When ${MACHINE} is sun2, this
allows building the sun3 and sun3x parts of libsa, which need
things like <machine/param3.h> and <machine/param3x.h> to be
#includeable.
 1.3 15-May-2002  lukem branches: 1.3.2; 1.3.4;
- implement putstr(), and use in various places instead of printf()
- wrap more debug stuff in #ifdef DEBUG
- for bootxx, provide minimal panic() which uses putstr() instead of printf()

bootxx is now < 7.5KB
 1.2 09-Feb-2002  lukem use ${INSTALL_FILE} as appropriate
 1.1 14-Jun-2001  fredette branches: 1.1.2; 1.1.8;
Added sources for the sun2 boot blocks and other
sun68k-ish code, all of which ought to eventually
be shared with the sun3.
 1.1.8.3 20-Jun-2002  nathanw Catch up to -current.
 1.1.8.2 28-Feb-2002  nathanw Catch up to -current.
 1.1.8.1 14-Jun-2001  nathanw file Makefile.inc was added on branch nathanw_sa on 2002-02-28 04:12:25 +0000
 1.1.2.3 06-Sep-2002  jdolecek sync kqueue branch with HEAD
 1.1.2.2 23-Jun-2002  jdolecek catch up with -current on kqueue branch
 1.1.2.1 16-Mar-2002  jdolecek Catch up with -current.
 1.3.4.1 18-Jun-2002  lukem Pull up revision 1.6 (requested by fredette in ticket #297):
Compile all standalones for the 68010, which makes bootblocks
compiled for the sun3 also usable on a sun2. This enables
making a single filesystem that can boot on all of sun2, sun3,
and sun3x (say, like on a CD-ROM).
 1.3.2.1 15-Jul-2002  gehenna catch up with -current.
 1.6.6.4 10-Nov-2005  skrll Sync with HEAD. Here we go again...
 1.6.6.3 21-Sep-2004  skrll Fix the sync with head I botched.
 1.6.6.2 18-Sep-2004  skrll Sync with HEAD.
 1.6.6.1 03-Aug-2004  skrll Sync with HEAD
 1.9.2.2 30-Dec-2006  yamt sync with head.
 1.9.2.1 21-Jun-2006  yamt sync with head.
 1.11.20.1 18-Nov-2006  ad Sync with head.
 1.13.66.2 28-Apr-2009  skrll Sync with HEAD.
 1.13.66.1 19-Jan-2009  skrll Sync with HEAD.
 1.13.58.1 04-May-2009  yamt sync with head.
 1.13.54.1 17-Jan-2009  mjf Sync with HEAD.
 1.14.2.1 13-May-2009  jym Sync with HEAD.

Commit is split, to avoid a "too many arguments" protocol error.
 1.16.6.1 06-Jun-2011  jruoho Sync with HEAD.
 1.16.4.1 31-May-2011  rmind sync with head
 1.18.18.2 18-May-2014  rmind sync with head
 1.18.18.1 28-Aug-2013  rmind sync with head
 1.18.14.2 03-Dec-2017  jdolecek update from HEAD
 1.18.14.1 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.18.4.1 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.24.2.1 10-Aug-2014  tls Rebase.
 1.25.4.2 05-Oct-2016  skrll Sync with HEAD
 1.25.4.1 19-Mar-2016  skrll Sync with HEAD
 1.2 17-Aug-2021  andvar fix multiplei repetitive typos in comments, messages and documentation. mainly because copy paste code big amount of files are affected.
 1.1 14-Jun-2001  fredette branches: 1.1.8;
Added sources for the sun2 boot blocks and other
sun68k-ish code, all of which ought to eventually
be shared with the sun3.
 1.1.8.2 14-Jun-2001  fredette Added sources for the sun2 boot blocks and other
sun68k-ish code, all of which ought to eventually
be shared with the sun3.
 1.1.8.1 14-Jun-2001  fredette file README was added on branch nathanw_sa on 2001-06-14 12:57:13 +0000
 1.2 04-Jan-2014  christos undo the ld script hack now that the default scripts have been modified to
do this.
 1.1 03-Jan-2014  christos Add a load script that puts text.unlikely after text so that the start
address stays where we are. This is copied from m68kelfnbsd.xbn
 1.5 15-May-2002  lukem - implement putstr(), and use in various places instead of printf()
- wrap more debug stuff in #ifdef DEBUG
- for bootxx, provide minimal panic() which uses putstr() instead of printf()

bootxx is now < 7.5KB
 1.4 22-Apr-2002  fredette Removed the old installboot, we now use the new /usr/sbin/installboot.
Now install a raw binary version of bootxx, since that's what this
new installboot expects.
 1.3 09-Feb-2002  lukem use ${INSTALL_FILE} as appropriate
 1.2 12-Dec-2001  tv MKfoo=no -> NOfoo
 1.1 14-Jun-2001  fredette branches: 1.1.2; 1.1.8;
Added sources for the sun2 boot blocks and other
sun68k-ish code, all of which ought to eventually
be shared with the sun3.
 1.1.8.4 20-Jun-2002  nathanw Catch up to -current.
 1.1.8.3 28-Feb-2002  nathanw Catch up to -current.
 1.1.8.2 08-Jan-2002  nathanw Catch up to -current.
 1.1.8.1 14-Jun-2001  nathanw file Makefile was added on branch nathanw_sa on 2002-01-08 00:28:22 +0000
 1.1.2.3 23-Jun-2002  jdolecek catch up with -current on kqueue branch
 1.1.2.2 16-Mar-2002  jdolecek Catch up with -current.
 1.1.2.1 10-Jan-2002  thorpej Sync kqueue branch with -current.
 1.12 12-Jan-2009  tsutsui WARNSfy.
 1.11 28-Apr-2008  martin branches: 1.11.8;
Remove clause 3 and 4 from TNF licenses
 1.10 11-Dec-2005  christos branches: 1.10.74; 1.10.76; 1.10.78;
merge ktrace-lwp.
 1.9 22-Jan-2005  chs de-__P, remove register, ansify, b* -> mem*, u_int*_t -> uint*_t.
 1.8 15-May-2002  lukem branches: 1.8.10; 1.8.18;
bootblock.h:
- unify sparc_bbinfo (1064 bytes, with 256 block entries)
and sun68k_bbinfo (296 byte, with 64 block entries)
into shared_bbinfo (512 bytes, with 118 block entries),
which will be also shared by future bbinfo-using platforms
(including macppc)
- add datestamp to *_BBINFO_MAGIC strings, to prevent installboot vs
bootxx version skew.
- add macppc support

*/bootxx.c:
- migrate to new shared_bbinfo structure

installboot:
- add macppc support (still needs applepartmap support and testing)
- improve and add some more warnings & errors to installboot
- implement shared_bbinfo_clearboot() and shared_bbinfo_setboot(), which
perform the majority of the work for bbinfo-using back-ends
(rather than replicating that across multiple back-ends).
 1.7 15-May-2002  lukem - implement putstr(), and use in various places instead of printf()
- wrap more debug stuff in #ifdef DEBUG
- for bootxx, provide minimal panic() which uses putstr() instead of printf()

bootxx is now < 7.5KB
 1.6 06-May-2002  lukem s,<dev/sun/sun_boot.h>,<sys/bootblock.h>,
 1.5 06-May-2002  lukem fix previous more correctly; MAXBLOCKNUM was replaced by SUN68K_BBINFO_MAXBLOCKS
 1.4 05-May-2002  jdolecek avoid unnecessary use of MAXBLOCKNUM (which is not defined here)
 1.3 24-Apr-2002  lukem convert from "bbinfo.h" to <dev/sun/sun_boot.h>
 1.2 15-Dec-2001  fredette Rather than using nlist(3), use a magic structure with a magic
number that installboot(8) can search for. Suggested by cgd@netbsd.org.
 1.1 14-Jun-2001  fredette branches: 1.1.2; 1.1.8;
Added sources for the sun2 boot blocks and other
sun68k-ish code, all of which ought to eventually
be shared with the sun3.
 1.1.8.3 20-Jun-2002  nathanw Catch up to -current.
 1.1.8.2 08-Jan-2002  nathanw Catch up to -current.
 1.1.8.1 14-Jun-2001  nathanw file bootxx.c was added on branch nathanw_sa on 2002-01-08 00:28:22 +0000
 1.1.2.2 23-Jun-2002  jdolecek catch up with -current on kqueue branch
 1.1.2.1 10-Jan-2002  thorpej Sync kqueue branch with -current.
 1.8.18.1 29-Apr-2005  kent sync with -current
 1.8.10.1 24-Jan-2005  skrll Sync with HEAD.
 1.10.78.2 04-May-2009  yamt sync with head.
 1.10.78.1 16-May-2008  yamt sync with head.
 1.10.76.1 18-May-2008  yamt sync with head.
 1.10.74.2 17-Jan-2009  mjf Sync with HEAD.
 1.10.74.1 02-Jun-2008  mjf Sync with HEAD.
 1.11.8.1 19-Jan-2009  skrll Sync with HEAD.
 1.2 15-May-2002  lukem - implement putstr(), and use in various places instead of printf()
- wrap more debug stuff in #ifdef DEBUG
- for bootxx, provide minimal panic() which uses putstr() instead of printf()

bootxx is now < 7.5KB
 1.1 14-Jun-2001  fredette branches: 1.1.2; 1.1.8;
Added sources for the sun2 boot blocks and other
sun68k-ish code, all of which ought to eventually
be shared with the sun3.
 1.1.8.2 20-Jun-2002  nathanw Catch up to -current.
 1.1.8.1 14-Jun-2001  nathanw file conf.c was added on branch nathanw_sa on 2002-06-20 03:41:57 +0000
 1.1.2.1 23-Jun-2002  jdolecek catch up with -current on kqueue branch
 1.3 17-Jul-2011  joerg Retire varargs.h support. Move machine/stdarg.h logic into MI
sys/stdarg.h and expect compiler to provide proper builtins, defaulting
to the GCC interface. lint still has a special fallback.
Reduce abuse of _BSD_VA_LIST_ by defining __va_list by default and
derive va_list as required by standards.
 1.2 03-Jun-2002  fredette branches: 1.2.2; 1.2.4;
exit() is now declared in libsa's stand.h, and takes an int.
 1.1 15-May-2002  lukem branches: 1.1.2;
- implement putstr(), and use in various places instead of printf()
- wrap more debug stuff in #ifdef DEBUG
- for bootxx, provide minimal panic() which uses putstr() instead of printf()

bootxx is now < 7.5KB
 1.1.2.1 15-Jul-2002  gehenna catch up with -current.
 1.2.4.2 23-Jun-2002  jdolecek catch up with -current on kqueue branch
 1.2.4.1 03-Jun-2002  jdolecek file panic_putstr.c was added on branch kqueue on 2002-06-23 17:42:48 +0000
 1.2.2.2 20-Jun-2002  nathanw Catch up to -current.
 1.2.2.1 03-Jun-2002  nathanw file panic_putstr.c was added on branch nathanw_sa on 2002-06-20 03:41:57 +0000
 1.2 12-Dec-2001  tv MKfoo=no -> NOfoo
 1.1 14-Jun-2001  fredette branches: 1.1.2; 1.1.8;
Added sources for the sun2 boot blocks and other
sun68k-ish code, all of which ought to eventually
be shared with the sun3.
 1.1.8.2 08-Jan-2002  nathanw Catch up to -current.
 1.1.8.1 14-Jun-2001  nathanw file Makefile was added on branch nathanw_sa on 2002-01-08 00:28:22 +0000
 1.1.2.1 10-Jan-2002  thorpej Sync kqueue branch with -current.
 1.5 12-Jan-2009  tsutsui WARNSfy.
 1.4 28-Apr-2008  martin branches: 1.4.8;
Remove clause 3 and 4 from TNF licenses
 1.3 11-Dec-2005  christos branches: 1.3.74; 1.3.76; 1.3.78;
merge ktrace-lwp.
 1.2 22-Jan-2005  chs de-__P, remove register, ansify, b* -> mem*, u_int*_t -> uint*_t.
 1.1 14-Jun-2001  fredette branches: 1.1.8; 1.1.24; 1.1.32;
Added sources for the sun2 boot blocks and other
sun68k-ish code, all of which ought to eventually
be shared with the sun3.
 1.1.32.1 29-Apr-2005  kent sync with -current
 1.1.24.1 24-Jan-2005  skrll Sync with HEAD.
 1.1.8.2 14-Jun-2001  fredette Added sources for the sun2 boot blocks and other
sun68k-ish code, all of which ought to eventually
be shared with the sun3.
 1.1.8.1 14-Jun-2001  fredette file bootyy.c was added on branch nathanw_sa on 2001-06-14 12:57:14 +0000
 1.3.78.2 04-May-2009  yamt sync with head.
 1.3.78.1 16-May-2008  yamt sync with head.
 1.3.76.1 18-May-2008  yamt sync with head.
 1.3.74.2 17-Jan-2009  mjf Sync with HEAD.
 1.3.74.1 02-Jun-2008  mjf Sync with HEAD.
 1.4.8.1 19-Jan-2009  skrll Sync with HEAD.
 1.2 15-May-2002  lukem - implement putstr(), and use in various places instead of printf()
- wrap more debug stuff in #ifdef DEBUG
- for bootxx, provide minimal panic() which uses putstr() instead of printf()

bootxx is now < 7.5KB
 1.1 14-Jun-2001  fredette branches: 1.1.2; 1.1.8;
Added sources for the sun2 boot blocks and other
sun68k-ish code, all of which ought to eventually
be shared with the sun3.
 1.1.8.2 20-Jun-2002  nathanw Catch up to -current.
 1.1.8.1 14-Jun-2001  nathanw file conf.c was added on branch nathanw_sa on 2002-06-20 03:41:58 +0000
 1.1.2.1 23-Jun-2002  jdolecek catch up with -current on kqueue branch
 1.33 02-Feb-2018  mrg convert HAVE_GCC handling to modern GCC release numbering:
- HAVE_GCC=5 is now the default (vs. HAVE_GCC=53 we've been using for
GCC 5.4 and GCC 5.5.)
- remove some more GCC 4.8 code. we don't support GCC 4 here.
- adjust set lists to gcc=5 from gcc=53.

add some basic HAVE_GCC=6 handling (totally unused so far.)
 1.32 09-Apr-2017  christos no need fo clean vers.c
fix typo
 1.31 07-Nov-2013  christos branches: 1.31.6; 1.31.10; 1.31.14;
Revert previous change:
gcc-4.8.1 converts -mc68000 to -mcpu=68000 which breaks gas. gas even
breaks with -mcpu=68010, but works with -march=68010 so we'll go with that.
 1.30 07-Nov-2013  christos avoid confusion with 68010 and 68020. The sun3 always was a 68020, and
the code assumes that.
 1.29 12-Aug-2013  joerg Build boot loaders without unwind tables.
 1.28 27-May-2010  dholland branches: 1.28.8; 1.28.18; 1.28.22;
Introduce .WAIT into the cleandir rule for blasting the libsa/libkern/etc.
trees, because it can race with the libsa/libkern/etc. makefiles' own
cleandir rules. I think I've found all of the uses of the offending idiom...
Closes PR 43360.
 1.27 20-Mar-2009  tsutsui branches: 1.27.2; 1.27.4;
Switch sun68k standalone programs to using MI libsa and libkern.
Bump version.

Tested bootxx + ufsboot on TME (sun2 and sun3) and 3/80 (sun3x).
 1.26 19-Mar-2009  tsutsui Remove bcmp() from MD libsa.

XXX: These ports should be rewritten to use MI libsa for maintainability.
 1.25 12-Jan-2009  tsutsui branches: 1.25.2;
WARNSfy.
 1.24 17-Sep-2006  tsutsui branches: 1.24.54; 1.24.58; 1.24.66;
Make sun68k/stand build without installed ${DESTDIR} files.

Currently "machine" symlink points sys/arch/sun68k/include,
but this means some <machine/foo.h> files are taken from
sys/arch/sun68k/include but others (i.e. files not in sun68k/include)
are taken from ${DESTDIR}/usr/include/machine.

Instead, make "machine" symlink point sys/arch/${MACHINE}/include,
make "sun68k" symlink point sys/arch/sun68k/include (not sys/arch/sun68k),
add sys/arch to include path, and move some files where appropriate.
 1.23 17-Sep-2006  tsutsui Always set CFLAGS, CPUFLAGS, and COPTS explicitly like i386/stand
to override settings in /etc/mk.conf, so that build won't fail
in sun68k which contains both sun2 and sun3 sources.

Suggested by thorpej, and closes PR toolchain/34528.
 1.22 26-Jan-2006  he branches: 1.22.18;
Follow up the renaming of in_cksum.c to ip_cksum.c.
 1.21 24-Dec-2005  tsutsui branches: 1.21.2;
Adapt to transition from libkern to src/common/lib/libc. Tested on 3/80.

XXX: Is it simpler to build standard MI libsa/libkern libraries?
 1.20 11-Dec-2005  christos merge ktrace-lwp.
 1.19 30-Nov-2003  tsutsui branches: 1.19.16;
Specify 32bit daddr_t not only for ufsboot but also libsa and all SA_PROGs.
Now bootxx and ufsboot works again.
 1.18 26-Oct-2003  lukem Use ${HOST_SH} instead of `sh'.

If necessary, pull in <bsd.sys.mk> to get the definition of HOST_SH;
Makefiles that pull in one of (most of) <bsd.*.mk> will get this anyway.
 1.17 22-Aug-2003  dsl Fix same breakage as previous (need memmove for symlink handling in ufs.c)
but use (probably) smaller footprint code from libsa.
 1.16 21-Aug-2003  he Now that ufsboot / ufs.c uses memmove(), we need to include it here.
 1.15 27-Jul-2003  mrg need -ffreestanding
 1.14 30-Mar-2003  kristerw branches: 1.14.2;
Revert last change (dependance on divdi3.c, moddi3.c, and qdivrem.c) and
use 32bit daddr_t instead, as suggested by Izumi Tsutsui.
 1.13 16-Mar-2003  kristerw Add snprintf, divdi3, moddi3, and qdivrem so that ufsboot builds.
 1.12 30-May-2002  nathanw Always build the m68000 math routines, since we compile libsa in m68000 mode.
 1.11 15-May-2002  lukem branches: 1.11.2; 1.11.4;
- implement putstr(), and use in various places instead of printf()
- wrap more debug stuff in #ifdef DEBUG
- for bootxx, provide minimal panic() which uses putstr() instead of printf()

bootxx is now < 7.5KB
 1.10 22-Apr-2002  fredette To make things build correctly, rely totally .PATH and never
have source files be explicit paths.
 1.9 26-Mar-2002  fredette On the m68000, instead of extracting integer support from
libgcc, use bits from sys/lib/libkern.
 1.8 22-Mar-2002  fredette Added files.c to SRC_sa.
 1.7 15-Dec-2001  fredette On the sun2, added support for loading larger kernels,
and pull objects from the libgcc in DESTDIR.
 1.6 12-Dec-2001  tv MKfoo=no -> NOfoo
 1.5 14-Nov-2001  tv Work around <bsd.lib.mk> used for kernel libs in other places. Clean up
include paths.
 1.4 31-Oct-2001  thorpej branches: 1.4.2;
Build the loadfile() a.out, ECOFF, and ELF back-ends as separate
objects.
 1.3 02-Oct-2001  chs branches: 1.3.2;
add ashldi3.c, needed by ufs.c due to added cast in lblktosize().
 1.2 27-Aug-2001  fredette branches: 1.2.2;
adjust the hack to build the SRT*.o files.
 1.1 14-Jun-2001  fredette branches: 1.1.2;
Added sources for the sun2 boot blocks and other
sun68k-ish code, all of which ought to eventually
be shared with the sun3.
 1.1.2.3 23-Jun-2002  jdolecek catch up with -current on kqueue branch
 1.1.2.2 10-Jan-2002  thorpej Sync kqueue branch with -current.
 1.1.2.1 13-Sep-2001  thorpej Update the kqueue branch to HEAD.
 1.2.2.1 11-Oct-2001  fvdl Catch up with -current. Fix some bogons in the sparc64 kbd/ms
attach code. cd18xx conversion provided by mrg.
 1.3.2.1 12-Nov-2001  thorpej Sync the thorpej-mips-cache branch with -current.
 1.4.2.4 20-Jun-2002  nathanw Catch up to -current.
 1.4.2.3 01-Apr-2002  nathanw Catch up to -current.
(CVS: It's not just a program. It's an adventure!)
 1.4.2.2 08-Jan-2002  nathanw Catch up to -current.
 1.4.2.1 31-Oct-2001  nathanw file Makefile was added on branch nathanw_sa on 2002-01-08 00:28:24 +0000
 1.11.4.1 31-May-2002  tv Pull up revision 1.12 (requested by nathanw in ticket #102):
Always build the m68000 math routines, since we compile libsa in m68000 mode.
 1.11.2.1 15-Jul-2002  gehenna catch up with -current.
 1.14.2.3 21-Sep-2004  skrll Fix the sync with head I botched.
 1.14.2.2 18-Sep-2004  skrll Sync with HEAD.
 1.14.2.1 03-Aug-2004  skrll Sync with HEAD
 1.19.16.2 30-Dec-2006  yamt sync with head.
 1.19.16.1 21-Jun-2006  yamt sync with head.
 1.21.2.1 01-Feb-2006  yamt sync with head.
 1.22.18.1 18-Nov-2006  ad Sync with head.
 1.24.66.2 28-Apr-2009  skrll Sync with HEAD.
 1.24.66.1 19-Jan-2009  skrll Sync with HEAD.
 1.24.58.2 11-Aug-2010  yamt sync with head.
 1.24.58.1 04-May-2009  yamt sync with head.
 1.24.54.1 17-Jan-2009  mjf Sync with HEAD.
 1.25.2.1 13-May-2009  jym Sync with HEAD.

Commit is split, to avoid a "too many arguments" protocol error.
 1.27.4.1 30-May-2010  rmind sync with head
 1.27.2.1 17-Aug-2010  uebayasi Sync with HEAD.
 1.28.22.2 18-May-2014  rmind sync with head
 1.28.22.1 28-Aug-2013  rmind sync with head
 1.28.18.2 03-Dec-2017  jdolecek update from HEAD
 1.28.18.1 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.28.8.1 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.31.14.1 21-Apr-2017  bouyer Sync with HEAD
 1.31.10.1 26-Apr-2017  pgoyette Sync with HEAD
 1.31.6.1 28-Aug-2017  skrll Sync with HEAD
 1.7 11-Jan-2021  skrll Fix spelling of preferred in comments. While here improve grammar in
one of the comments.
 1.6 22-Apr-2020  rin branches: 1.6.2;
Restrict usage of m68k assembler versions of {,u}divsi3 and {,u}divsi3 to
kernel and bootloader for 68010.

They requires a special calling convention to udivsi3, and cannot to be
mixed up in normal routines provided by libgcc or compiler_rt. Although,
there's no problem for using them in a controlled situation, i.e., kernel
and standalone programs.

Note that this does not affect at all m68k ports other than sun2, since
codes generated by gcc do not call these routines.

Assembler files are moved from common/lib/libc/arch/m68k/gen to
sys/lib/libkern/arch/m68k in order not to be compiled in libc.

Revert hack introduced to lib/libc/compiler_rt/Makefile.inc rev 1.37:
http://cvsweb.netbsd.org/bsdweb.cgi/src/lib/libc/compiler_rt/Makefile.inc#rev1.37

Proposed on port-sun2@ with no response...
(Again, this does not affect m68k ports other than sun2.)
http://mail-index.netbsd.org/port-sun2/2020/03/10/msg000102.html
 1.5 09-Apr-2017  christos branches: 1.5.24;
no need fo clean vers.c
fix typo
 1.4 08-Apr-2017  christos centralize vers.c building for standalone programs.
 1.3 22-Jan-2011  joerg branches: 1.3.14; 1.3.32; 1.3.36; 1.3.40;
Drop bootprog_maker (formerly enabled by -M) and bootprog_date (formerly
disabled by -D) from the output of newvers_stand.sh. Change -D to the
inverted logic, so that it adds the date to bootprog_rev in ().

Change all platforms accordingly. -D is added if MKREPRO is not yes and
wasn't present before. Platforms that didn't use -D don't depend on
MKREPRO now either.
 1.2 25-Sep-2009  he branches: 1.2.4; 1.2.6; 1.2.8;
Use .PATH.S instead of giving a source file with fully qualified path.
This should avoid the sun3 port contaminating its source tree during build
with .d and .o files corresponding to ctrlsp.S.
 1.1 20-Mar-2009  tsutsui branches: 1.1.2; 1.1.4; 1.1.6;
Switch sun68k standalone programs to using MI libsa and libkern.
Bump version.

Tested bootxx + ufsboot on TME (sun2 and sun3) and 3/80 (sun3x).
 1.1.6.2 13-May-2009  jym Sync with HEAD.

Commit is split, to avoid a "too many arguments" protocol error.
 1.1.6.1 20-Mar-2009  jym file Makefile.inc was added on branch jym-xensuspend on 2009-05-13 17:18:40 +0000
 1.1.4.3 11-Mar-2010  yamt sync with head
 1.1.4.2 04-May-2009  yamt sync with head.
 1.1.4.1 20-Mar-2009  yamt file Makefile.inc was added on branch yamt-nfs-mp on 2009-05-04 08:12:02 +0000
 1.1.2.2 28-Apr-2009  skrll Sync with HEAD.
 1.1.2.1 20-Mar-2009  skrll file Makefile.inc was added on branch nick-hppapmap on 2009-04-28 07:34:49 +0000
 1.2.8.1 08-Feb-2011  bouyer Sync with HEAD
 1.2.6.1 06-Jun-2011  jruoho Sync with HEAD.
 1.2.4.1 05-Mar-2011  rmind sync with head
 1.3.40.1 21-Apr-2017  bouyer Sync with HEAD
 1.3.36.1 26-Apr-2017  pgoyette Sync with HEAD
 1.3.32.1 28-Aug-2017  skrll Sync with HEAD
 1.3.14.1 03-Dec-2017  jdolecek update from HEAD
 1.5.24.1 25-Apr-2020  bouyer Sync with bouyer-xenpvh-base2 (HEAD)
 1.6.2.1 03-Apr-2021  thorpej Sync with HEAD.
 1.2 04-May-2008  martin Move to 2 clause TNF license
 1.1 14-Jun-2001  fredette branches: 1.1.8; 1.1.126; 1.1.128; 1.1.130;
Added sources for the sun2 boot blocks and other
sun68k-ish code, all of which ought to eventually
be shared with the sun3.
 1.1.130.1 16-May-2008  yamt sync with head.
 1.1.128.1 18-May-2008  yamt sync with head.
 1.1.126.1 02-Jun-2008  mjf Sync with HEAD.
 1.1.8.2 14-Jun-2001  fredette Added sources for the sun2 boot blocks and other
sun68k-ish code, all of which ought to eventually
be shared with the sun3.
 1.1.8.1 14-Jun-2001  fredette file SRT0.S was added on branch nathanw_sa on 2001-06-14 12:57:14 +0000
 1.8 12-Jan-2009  tsutsui WARNSfy.
 1.7 28-Apr-2008  martin branches: 1.7.8;
Remove clause 3 and 4 from TNF licenses
 1.6 17-Sep-2006  tsutsui branches: 1.6.54; 1.6.56; 1.6.58;
Make sun68k/stand build without installed ${DESTDIR} files.

Currently "machine" symlink points sys/arch/sun68k/include,
but this means some <machine/foo.h> files are taken from
sys/arch/sun68k/include but others (i.e. files not in sun68k/include)
are taken from ${DESTDIR}/usr/include/machine.

Instead, make "machine" symlink point sys/arch/${MACHINE}/include,
make "sun68k" symlink point sys/arch/sun68k/include (not sys/arch/sun68k),
add sys/arch to include path, and move some files where appropriate.
 1.5 24-Dec-2005  perry branches: 1.5.20;
Remove leading __ from __(const|inline|signed|volatile) -- it is obsolete.
 1.4 11-Dec-2005  christos merge ktrace-lwp.
 1.3 22-Jan-2005  chs branches: 1.3.8;
de-__P, remove register, ansify, b* -> mem*, u_int*_t -> uint*_t.
 1.2 03-Jun-2002  fredette branches: 1.2.6; 1.2.14;
exit() is now declared in libsa's stand.h, and takes an int.
 1.1 14-Jun-2001  fredette branches: 1.1.2; 1.1.8; 1.1.16;
Added sources for the sun2 boot blocks and other
sun68k-ish code, all of which ought to eventually
be shared with the sun3.
 1.1.16.1 15-Jul-2002  gehenna catch up with -current.
 1.1.8.2 20-Jun-2002  nathanw Catch up to -current.
 1.1.8.1 14-Jun-2001  nathanw file SRT1.c was added on branch nathanw_sa on 2002-06-20 03:41:59 +0000
 1.1.2.1 23-Jun-2002  jdolecek catch up with -current on kqueue branch
 1.2.14.1 29-Apr-2005  kent sync with -current
 1.2.6.1 24-Jan-2005  skrll Sync with HEAD.
 1.3.8.2 30-Dec-2006  yamt sync with head.
 1.3.8.1 21-Jun-2006  yamt sync with head.
 1.5.20.1 18-Nov-2006  ad Sync with head.
 1.6.58.2 04-May-2009  yamt sync with head.
 1.6.58.1 16-May-2008  yamt sync with head.
 1.6.56.1 18-May-2008  yamt sync with head.
 1.6.54.2 17-Jan-2009  mjf Sync with HEAD.
 1.6.54.1 02-Jun-2008  mjf Sync with HEAD.
 1.7.8.1 19-Jan-2009  skrll Sync with HEAD.
 1.2 24-Apr-2002  lukem convert from "bbinfo.h" to <dev/sun/sun_boot.h>
 1.1 15-Dec-2001  fredette branches: 1.1.2; 1.1.4;
Rather than using nlist(3), use a magic structure with a magic
number that installboot(8) can search for. Suggested by cgd@netbsd.org.
 1.1.4.3 23-Jun-2002  jdolecek catch up with -current on kqueue branch
 1.1.4.2 10-Jan-2002  thorpej Sync kqueue branch with -current.
 1.1.4.1 15-Dec-2001  thorpej file bbinfo.h was added on branch kqueue on 2002-01-10 19:49:55 +0000
 1.1.2.3 20-Jun-2002  nathanw Catch up to -current.
 1.1.2.2 08-Jan-2002  nathanw Catch up to -current.
 1.1.2.1 15-Dec-2001  nathanw file bbinfo.h was added on branch nathanw_sa on 2002-01-08 00:28:24 +0000
 1.4 12-Jan-2009  tsutsui Replace time_t values in libsa sources with the following two types
to avoid unnecessary 64 bit ops which would make binaries larger:

satime_t (currently unsigned int):
numbers in seconds returned by the machine dependent getsecs() function
which are used to measure relative time

saseconds_t (currently int):
numbers in seconds used to specify timeout to network drivers

Per discussion on current-users.
 1.3 11-Dec-2005  christos branches: 1.3.74; 1.3.78; 1.3.86;
merge ktrace-lwp.
 1.2 22-Jan-2005  chs de-__P, remove register, ansify, b* -> mem*, u_int*_t -> uint*_t.
 1.1 14-Jun-2001  fredette branches: 1.1.8; 1.1.24; 1.1.32;
Added sources for the sun2 boot blocks and other
sun68k-ish code, all of which ought to eventually
be shared with the sun3.
 1.1.32.1 29-Apr-2005  kent sync with -current
 1.1.24.1 24-Jan-2005  skrll Sync with HEAD.
 1.1.8.2 14-Jun-2001  fredette Added sources for the sun2 boot blocks and other
sun68k-ish code, all of which ought to eventually
be shared with the sun3.
 1.1.8.1 14-Jun-2001  fredette file clock.c was added on branch nathanw_sa on 2001-06-14 12:57:15 +0000
 1.3.86.1 19-Jan-2009  skrll Sync with HEAD.
 1.3.78.1 04-May-2009  yamt sync with head.
 1.3.74.1 17-Jan-2009  mjf Sync with HEAD.
 1.5 17-Jul-2011  joerg Retire varargs.h support. Move machine/stdarg.h logic into MI
sys/stdarg.h and expect compiler to provide proper builtins, defaulting
to the GCC interface. lint still has a special fallback.
Reduce abuse of _BSD_VA_LIST_ by defining __va_list by default and
derive va_list as required by standards.
 1.4 28-Apr-2008  martin Remove clause 3 and 4 from TNF licenses
 1.3 11-Dec-2005  christos branches: 1.3.74; 1.3.76; 1.3.78;
merge ktrace-lwp.
 1.2 22-Jan-2005  chs de-__P, remove register, ansify, b* -> mem*, u_int*_t -> uint*_t.
 1.1 14-Jun-2001  fredette branches: 1.1.8; 1.1.24; 1.1.32;
Added sources for the sun2 boot blocks and other
sun68k-ish code, all of which ought to eventually
be shared with the sun3.
 1.1.32.1 29-Apr-2005  kent sync with -current
 1.1.24.1 24-Jan-2005  skrll Sync with HEAD.
 1.1.8.2 14-Jun-2001  fredette Added sources for the sun2 boot blocks and other
sun68k-ish code, all of which ought to eventually
be shared with the sun3.
 1.1.8.1 14-Jun-2001  fredette file dev_disk.c was added on branch nathanw_sa on 2001-06-14 12:57:15 +0000
 1.3.78.1 16-May-2008  yamt sync with head.
 1.3.76.1 18-May-2008  yamt sync with head.
 1.3.74.1 02-Jun-2008  mjf Sync with HEAD.
 1.3 11-Dec-2005  christos merge ktrace-lwp.
 1.2 22-Jan-2005  chs de-__P, remove register, ansify, b* -> mem*, u_int*_t -> uint*_t.
 1.1 14-Jun-2001  fredette branches: 1.1.8; 1.1.24; 1.1.32;
Added sources for the sun2 boot blocks and other
sun68k-ish code, all of which ought to eventually
be shared with the sun3.
 1.1.32.1 29-Apr-2005  kent sync with -current
 1.1.24.1 24-Jan-2005  skrll Sync with HEAD.
 1.1.8.2 14-Jun-2001  fredette Added sources for the sun2 boot blocks and other
sun68k-ish code, all of which ought to eventually
be shared with the sun3.
 1.1.8.1 14-Jun-2001  fredette file dev_disk.h was added on branch nathanw_sa on 2001-06-14 12:57:15 +0000
 1.3 11-Dec-2005  christos merge ktrace-lwp.
 1.2 22-Jan-2005  chs de-__P, remove register, ansify, b* -> mem*, u_int*_t -> uint*_t.
 1.1 14-Jun-2001  fredette branches: 1.1.8; 1.1.24; 1.1.32;
Added sources for the sun2 boot blocks and other
sun68k-ish code, all of which ought to eventually
be shared with the sun3.
 1.1.32.1 29-Apr-2005  kent sync with -current
 1.1.24.1 24-Jan-2005  skrll Sync with HEAD.
 1.1.8.2 14-Jun-2001  fredette Added sources for the sun2 boot blocks and other
sun68k-ish code, all of which ought to eventually
be shared with the sun3.
 1.1.8.1 14-Jun-2001  fredette file devopen.c was added on branch nathanw_sa on 2001-06-14 12:57:15 +0000
 1.4 28-Apr-2008  martin Remove clause 3 and 4 from TNF licenses
 1.3 11-Dec-2005  christos branches: 1.3.74; 1.3.76; 1.3.78;
merge ktrace-lwp.
 1.2 22-Jan-2005  chs de-__P, remove register, ansify, b* -> mem*, u_int*_t -> uint*_t.
 1.1 14-Jun-2001  fredette branches: 1.1.8; 1.1.24; 1.1.32;
Added sources for the sun2 boot blocks and other
sun68k-ish code, all of which ought to eventually
be shared with the sun3.
 1.1.32.1 29-Apr-2005  kent sync with -current
 1.1.24.1 24-Jan-2005  skrll Sync with HEAD.
 1.1.8.2 14-Jun-2001  fredette Added sources for the sun2 boot blocks and other
sun68k-ish code, all of which ought to eventually
be shared with the sun3.
 1.1.8.1 14-Jun-2001  fredette file dvma.h was added on branch nathanw_sa on 2001-06-14 12:57:15 +0000
 1.3.78.1 16-May-2008  yamt sync with head.
 1.3.76.1 18-May-2008  yamt sync with head.
 1.3.74.1 02-Jun-2008  mjf Sync with HEAD.
 1.5 11-Jun-2016  dholland PR 51200 gets in libsa considered harmful: change own gets() to kgets()
and use it.
 1.4 11-Dec-2005  christos branches: 1.4.122; 1.4.142;
merge ktrace-lwp.
 1.3 22-Jan-2005  chs de-__P, remove register, ansify, b* -> mem*, u_int*_t -> uint*_t.
 1.2 07-Aug-2003  agc branches: 1.2.8;
Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22364, verified by myself.
 1.1 14-Jun-2001  fredette branches: 1.1.8; 1.1.24;
Added sources for the sun2 boot blocks and other
sun68k-ish code, all of which ought to eventually
be shared with the sun3.
 1.1.24.4 24-Jan-2005  skrll Sync with HEAD.
 1.1.24.3 21-Sep-2004  skrll Fix the sync with head I botched.
 1.1.24.2 18-Sep-2004  skrll Sync with HEAD.
 1.1.24.1 03-Aug-2004  skrll Sync with HEAD
 1.1.8.2 14-Jun-2001  fredette Added sources for the sun2 boot blocks and other
sun68k-ish code, all of which ought to eventually
be shared with the sun3.
 1.1.8.1 14-Jun-2001  fredette file gets.c was added on branch nathanw_sa on 2001-06-14 12:57:15 +0000
 1.2.8.1 29-Apr-2005  kent sync with -current
 1.4.142.1 09-Jul-2016  skrll Sync with HEAD
 1.4.122.1 03-Dec-2017  jdolecek update from HEAD
 1.8 20-Jun-2020  riastradh Nix trailing whitespace.
 1.7 18-Jun-2020  tsutsui Make local functions static.

Tested on 3/60.
 1.6 12-Jan-2009  tsutsui WARNSfy.
 1.5 28-Apr-2008  martin branches: 1.5.8;
Remove clause 3 and 4 from TNF licenses
 1.4 11-Dec-2005  christos branches: 1.4.74; 1.4.76; 1.4.78;
merge ktrace-lwp.
 1.3 22-Jan-2005  chs de-__P, remove register, ansify, b* -> mem*, u_int*_t -> uint*_t.
 1.2 27-Sep-2002  provos branches: 1.2.6; 1.2.14;
remove trailing \n in panic(). approved perry.
 1.1 14-Jun-2001  fredette branches: 1.1.2; 1.1.8;
Added sources for the sun2 boot blocks and other
sun68k-ish code, all of which ought to eventually
be shared with the sun3.
 1.1.8.2 18-Oct-2002  nathanw Catch up to -current.
 1.1.8.1 14-Jun-2001  nathanw file idprom.c was added on branch nathanw_sa on 2002-10-18 02:40:27 +0000
 1.1.2.1 10-Oct-2002  jdolecek sync kqueue with -current; this includes merge of gehenna-devsw branch,
merge of i386 MP branch, and part of autoconf rototil work
 1.2.14.1 29-Apr-2005  kent sync with -current
 1.2.6.1 24-Jan-2005  skrll Sync with HEAD.
 1.4.78.2 04-May-2009  yamt sync with head.
 1.4.78.1 16-May-2008  yamt sync with head.
 1.4.76.1 18-May-2008  yamt sync with head.
 1.4.74.2 17-Jan-2009  mjf Sync with HEAD.
 1.4.74.1 02-Jun-2008  mjf Sync with HEAD.
 1.5.8.1 19-Jan-2009  skrll Sync with HEAD.
 1.7 12-Jan-2009  tsutsui Replace time_t values in libsa sources with the following two types
to avoid unnecessary 64 bit ops which would make binaries larger:

satime_t (currently unsigned int):
numbers in seconds returned by the machine dependent getsecs() function
which are used to measure relative time

saseconds_t (currently int):
numbers in seconds used to specify timeout to network drivers

Per discussion on current-users.
 1.6 12-Jan-2009  tsutsui WARNSfy.
 1.5 11-Dec-2005  christos branches: 1.5.74; 1.5.78; 1.5.86;
merge ktrace-lwp.
 1.4 22-Jan-2005  chs de-__P, remove register, ansify, b* -> mem*, u_int*_t -> uint*_t.
 1.3 03-Jun-2002  fredette branches: 1.3.6; 1.3.14;
exit() is now declared in libsa's stand.h, and takes an int.
 1.2 15-Dec-2001  fredette branches: 1.2.8;
On the sun2, added support for loading larger kernels,
and pull objects from the libgcc in DESTDIR.
 1.1 14-Jun-2001  fredette branches: 1.1.2; 1.1.8;
Added sources for the sun2 boot blocks and other
sun68k-ish code, all of which ought to eventually
be shared with the sun3.
 1.1.8.3 20-Jun-2002  nathanw Catch up to -current.
 1.1.8.2 08-Jan-2002  nathanw Catch up to -current.
 1.1.8.1 14-Jun-2001  nathanw file libsa.h was added on branch nathanw_sa on 2002-01-08 00:28:25 +0000
 1.1.2.2 23-Jun-2002  jdolecek catch up with -current on kqueue branch
 1.1.2.1 10-Jan-2002  thorpej Sync kqueue branch with -current.
 1.2.8.1 15-Jul-2002  gehenna catch up with -current.
 1.3.14.1 29-Apr-2005  kent sync with -current
 1.3.6.1 24-Jan-2005  skrll Sync with HEAD.
 1.5.86.1 19-Jan-2009  skrll Sync with HEAD.
 1.5.78.1 04-May-2009  yamt sync with head.
 1.5.74.1 17-Jan-2009  mjf Sync with HEAD.
 1.4 12-Jan-2009  tsutsui Replace time_t values in libsa sources with the following two types
to avoid unnecessary 64 bit ops which would make binaries larger:

satime_t (currently unsigned int):
numbers in seconds returned by the machine dependent getsecs() function
which are used to measure relative time

saseconds_t (currently int):
numbers in seconds used to specify timeout to network drivers

Per discussion on current-users.
 1.3 11-Dec-2005  christos branches: 1.3.74; 1.3.78; 1.3.86;
merge ktrace-lwp.
 1.2 22-Jan-2005  chs de-__P, remove register, ansify, b* -> mem*, u_int*_t -> uint*_t.
 1.1 14-Jun-2001  fredette branches: 1.1.8; 1.1.24; 1.1.32;
Added sources for the sun2 boot blocks and other
sun68k-ish code, all of which ought to eventually
be shared with the sun3.
 1.1.32.1 29-Apr-2005  kent sync with -current
 1.1.24.1 24-Jan-2005  skrll Sync with HEAD.
 1.1.8.2 14-Jun-2001  fredette Added sources for the sun2 boot blocks and other
sun68k-ish code, all of which ought to eventually
be shared with the sun3.
 1.1.8.1 14-Jun-2001  fredette file netif.h was added on branch nathanw_sa on 2001-06-14 12:57:15 +0000
 1.3.86.1 19-Jan-2009  skrll Sync with HEAD.
 1.3.78.1 04-May-2009  yamt sync with head.
 1.3.74.1 17-Jan-2009  mjf Sync with HEAD.
 1.11 12-Apr-2021  mrg use libsa/saerrno.h instead of our own errno definitions.
 1.10 07-Nov-2013  christos branches: 1.10.44;
fix unused variables
 1.9 17-Jan-2009  he branches: 1.9.14; 1.9.24; 1.9.28;
Correct typo in previous: seseconds_t -> saseconds_t.
 1.8 12-Jan-2009  tsutsui Replace time_t values in libsa sources with the following two types
to avoid unnecessary 64 bit ops which would make binaries larger:

satime_t (currently unsigned int):
numbers in seconds returned by the machine dependent getsecs() function
which are used to measure relative time

saseconds_t (currently int):
numbers in seconds used to specify timeout to network drivers

Per discussion on current-users.
 1.7 12-Jan-2009  tsutsui WARNSfy.
 1.6 28-Apr-2008  martin branches: 1.6.8;
Remove clause 3 and 4 from TNF licenses
 1.5 11-Dec-2005  christos branches: 1.5.74; 1.5.76; 1.5.78;
merge ktrace-lwp.
 1.4 26-Jan-2005  he The ANSIfication apparently revealed a use of netif_attach() with a
missing argument. (It doesn't appear to be used, though, so this should
be a functional NOOP, except for fixing the build problem.)
 1.3 22-Jan-2005  chs branches: 1.3.2;
de-__P, remove register, ansify, b* -> mem*, u_int*_t -> uint*_t.
 1.2 27-Sep-2002  provos branches: 1.2.6; 1.2.14;
remove trailing \n in panic(). approved perry.
 1.1 14-Jun-2001  fredette branches: 1.1.2; 1.1.8;
Added sources for the sun2 boot blocks and other
sun68k-ish code, all of which ought to eventually
be shared with the sun3.
 1.1.8.2 18-Oct-2002  nathanw Catch up to -current.
 1.1.8.1 14-Jun-2001  nathanw file netif_sun.c was added on branch nathanw_sa on 2002-10-18 02:40:27 +0000
 1.1.2.1 10-Oct-2002  jdolecek sync kqueue with -current; this includes merge of gehenna-devsw branch,
merge of i386 MP branch, and part of autoconf rototil work
 1.2.14.1 29-Apr-2005  kent sync with -current
 1.2.6.2 04-Feb-2005  skrll Sync with HEAD.
 1.2.6.1 24-Jan-2005  skrll Sync with HEAD.
 1.3.2.1 12-Feb-2005  yamt sync with head.
 1.5.78.2 04-May-2009  yamt sync with head.
 1.5.78.1 16-May-2008  yamt sync with head.
 1.5.76.1 18-May-2008  yamt sync with head.
 1.5.74.2 17-Jan-2009  mjf Sync with HEAD.
 1.5.74.1 02-Jun-2008  mjf Sync with HEAD.
 1.6.8.1 19-Jan-2009  skrll Sync with HEAD.
 1.9.28.1 18-May-2014  rmind sync with head
 1.9.24.1 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.9.14.1 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.10.44.1 17-Apr-2021  thorpej Sync with HEAD.
 1.4 17-Jul-2011  joerg Retire varargs.h support. Move machine/stdarg.h logic into MI
sys/stdarg.h and expect compiler to provide proper builtins, defaulting
to the GCC interface. lint still has a special fallback.
Reduce abuse of _BSD_VA_LIST_ by defining __va_list by default and
derive va_list as required by standards.
 1.3 03-Jun-2002  fredette exit() is now declared in libsa's stand.h, and takes an int.
 1.2 15-May-2002  lukem branches: 1.2.2;
- implement putstr(), and use in various places instead of printf()
- wrap more debug stuff in #ifdef DEBUG
- for bootxx, provide minimal panic() which uses putstr() instead of printf()

bootxx is now < 7.5KB
 1.1 14-Jun-2001  fredette branches: 1.1.2; 1.1.8;
Added sources for the sun2 boot blocks and other
sun68k-ish code, all of which ought to eventually
be shared with the sun3.
 1.1.8.2 20-Jun-2002  nathanw Catch up to -current.
 1.1.8.1 14-Jun-2001  nathanw file panic.c was added on branch nathanw_sa on 2002-06-20 03:42:00 +0000
 1.1.2.1 23-Jun-2002  jdolecek catch up with -current on kqueue branch
 1.2.2.1 15-Jul-2002  gehenna catch up with -current.
 1.4 11-Dec-2005  christos merge ktrace-lwp.
 1.3 22-Jan-2005  chs de-__P, remove register, ansify, b* -> mem*, u_int*_t -> uint*_t.
 1.2 15-May-2002  lukem branches: 1.2.10; 1.2.18;
- implement putstr(), and use in various places instead of printf()
- wrap more debug stuff in #ifdef DEBUG
- for bootxx, provide minimal panic() which uses putstr() instead of printf()

bootxx is now < 7.5KB
 1.1 14-Jun-2001  fredette branches: 1.1.2; 1.1.8;
Added sources for the sun2 boot blocks and other
sun68k-ish code, all of which ought to eventually
be shared with the sun3.
 1.1.8.2 20-Jun-2002  nathanw Catch up to -current.
 1.1.8.1 14-Jun-2001  nathanw file promboot.c was added on branch nathanw_sa on 2002-06-20 03:42:01 +0000
 1.1.2.1 23-Jun-2002  jdolecek catch up with -current on kqueue branch
 1.2.18.1 29-Apr-2005  kent sync with -current
 1.2.10.1 24-Jan-2005  skrll Sync with HEAD.
 1.4 12-Jan-2009  tsutsui WARNSfy.
 1.3 11-Dec-2005  christos branches: 1.3.74; 1.3.78; 1.3.86;
merge ktrace-lwp.
 1.2 22-Jan-2005  chs de-__P, remove register, ansify, b* -> mem*, u_int*_t -> uint*_t.
 1.1 14-Jun-2001  fredette branches: 1.1.8; 1.1.24; 1.1.32;
Added sources for the sun2 boot blocks and other
sun68k-ish code, all of which ought to eventually
be shared with the sun3.
 1.1.32.1 29-Apr-2005  kent sync with -current
 1.1.24.1 24-Jan-2005  skrll Sync with HEAD.
 1.1.8.2 14-Jun-2001  fredette Added sources for the sun2 boot blocks and other
sun68k-ish code, all of which ought to eventually
be shared with the sun3.
 1.1.8.1 14-Jun-2001  fredette file promcons.c was added on branch nathanw_sa on 2001-06-14 12:57:16 +0000
 1.3.86.1 19-Jan-2009  skrll Sync with HEAD.
 1.3.78.1 04-May-2009  yamt sync with head.
 1.3.74.1 17-Jan-2009  mjf Sync with HEAD.
 1.7 01-Feb-2017  christos PR/51935: David Binderman: bad call to printf
- fix debugging printfs in general.
- KNF
 1.6 07-Nov-2013  christos branches: 1.6.6; 1.6.10; 1.6.14;
fix unused variables
 1.5 12-Jan-2009  tsutsui branches: 1.5.14; 1.5.24; 1.5.28;
WARNSfy.
 1.4 11-Dec-2005  christos branches: 1.4.74; 1.4.78; 1.4.86;
merge ktrace-lwp.
 1.3 22-Jan-2005  chs de-__P, remove register, ansify, b* -> mem*, u_int*_t -> uint*_t.
 1.2 15-May-2002  lukem branches: 1.2.10; 1.2.18;
- implement putstr(), and use in various places instead of printf()
- wrap more debug stuff in #ifdef DEBUG
- for bootxx, provide minimal panic() which uses putstr() instead of printf()

bootxx is now < 7.5KB
 1.1 14-Jun-2001  fredette branches: 1.1.2; 1.1.8;
Added sources for the sun2 boot blocks and other
sun68k-ish code, all of which ought to eventually
be shared with the sun3.
 1.1.8.2 20-Jun-2002  nathanw Catch up to -current.
 1.1.8.1 14-Jun-2001  nathanw file promdev.c was added on branch nathanw_sa on 2002-06-20 03:42:01 +0000
 1.1.2.1 23-Jun-2002  jdolecek catch up with -current on kqueue branch
 1.2.18.1 29-Apr-2005  kent sync with -current
 1.2.10.1 24-Jan-2005  skrll Sync with HEAD.
 1.4.86.1 19-Jan-2009  skrll Sync with HEAD.
 1.4.78.1 04-May-2009  yamt sync with head.
 1.4.74.1 17-Jan-2009  mjf Sync with HEAD.
 1.5.28.1 18-May-2014  rmind sync with head
 1.5.24.2 03-Dec-2017  jdolecek update from HEAD
 1.5.24.1 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.5.14.1 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.6.14.1 21-Apr-2017  bouyer Sync with HEAD
 1.6.10.1 20-Mar-2017  pgoyette Sync with HEAD
 1.6.6.1 05-Feb-2017  skrll Sync with HEAD
 1.2 12-Jan-2009  tsutsui WARNSfy.
 1.1 15-May-2002  lukem branches: 1.1.6; 1.1.8; 1.1.116; 1.1.120; 1.1.128;
- implement putstr(), and use in various places instead of printf()
- wrap more debug stuff in #ifdef DEBUG
- for bootxx, provide minimal panic() which uses putstr() instead of printf()

bootxx is now < 7.5KB
 1.1.128.1 19-Jan-2009  skrll Sync with HEAD.
 1.1.120.1 04-May-2009  yamt sync with head.
 1.1.116.1 17-Jan-2009  mjf Sync with HEAD.
 1.1.8.2 23-Jun-2002  jdolecek catch up with -current on kqueue branch
 1.1.8.1 15-May-2002  jdolecek file putstr.c was added on branch kqueue on 2002-06-23 17:42:52 +0000
 1.1.6.2 20-Jun-2002  nathanw Catch up to -current.
 1.1.6.1 15-May-2002  nathanw file putstr.c was added on branch nathanw_sa on 2002-06-20 03:42:01 +0000
 1.3 12-Jan-2009  tsutsui WARNSfy.
 1.2 28-Apr-2008  martin branches: 1.2.8;
Remove clause 3 and 4 from TNF licenses
 1.1 14-Jun-2001  fredette branches: 1.1.8; 1.1.126; 1.1.128; 1.1.130;
Added sources for the sun2 boot blocks and other
sun68k-ish code, all of which ought to eventually
be shared with the sun3.
 1.1.130.2 04-May-2009  yamt sync with head.
 1.1.130.1 16-May-2008  yamt sync with head.
 1.1.128.1 18-May-2008  yamt sync with head.
 1.1.126.2 17-Jan-2009  mjf Sync with HEAD.
 1.1.126.1 02-Jun-2008  mjf Sync with HEAD.
 1.1.8.2 14-Jun-2001  fredette Added sources for the sun2 boot blocks and other
sun68k-ish code, all of which ought to eventually
be shared with the sun3.
 1.1.8.1 14-Jun-2001  fredette file saio.h was added on branch nathanw_sa on 2001-06-14 12:57:16 +0000
 1.2.8.1 19-Jan-2009  skrll Sync with HEAD.
 1.13 20-Jun-2020  riastradh Nix trailing whitespace.
 1.12 18-Jun-2020  tsutsui Make local functions static.

Tested on 3/60.
 1.11 11-Dec-2009  tsutsui Include pmap.h or pmap3.h instead of param.h for NBSG to handle MMU.
 1.10 12-Jan-2009  tsutsui WARNSfy.
 1.9 28-Apr-2008  martin branches: 1.9.8;
Remove clause 3 and 4 from TNF licenses
 1.8 04-Mar-2007  christos branches: 1.8.40; 1.8.42; 1.8.44;
Kill caddr_t; there will be some MI fallout, but it will be fixed shortly.
 1.7 11-Dec-2005  christos branches: 1.7.26;
merge ktrace-lwp.
 1.6 22-Jan-2005  chs branches: 1.6.8;
de-__P, remove register, ansify, b* -> mem*, u_int*_t -> uint*_t.
 1.5 27-Sep-2002  provos branches: 1.5.6; 1.5.14;
remove trailing \n in panic(). approved perry.
 1.4 23-May-2002  nathanw Deliberately #include the appropriate arch-specific param.h to get
the correct value for NBSG, even when building with a different sun68k
target.
 1.3 15-Dec-2001  fredette branches: 1.3.8; 1.3.10;
On the sun2, added support for loading larger kernels,
and pull objects from the libgcc in DESTDIR.
 1.2 30-Nov-2001  fredette vm_offset_t -> vaddr_t
 1.1 14-Jun-2001  fredette branches: 1.1.2; 1.1.8;
Added sources for the sun2 boot blocks and other
sun68k-ish code, all of which ought to eventually
be shared with the sun3.
 1.1.8.4 18-Oct-2002  nathanw Catch up to -current.
 1.1.8.3 20-Jun-2002  nathanw Catch up to -current.
 1.1.8.2 08-Jan-2002  nathanw Catch up to -current.
 1.1.8.1 14-Jun-2001  nathanw file sun2.c was added on branch nathanw_sa on 2002-01-08 00:28:25 +0000
 1.1.2.3 10-Oct-2002  jdolecek sync kqueue with -current; this includes merge of gehenna-devsw branch,
merge of i386 MP branch, and part of autoconf rototil work
 1.1.2.2 23-Jun-2002  jdolecek catch up with -current on kqueue branch
 1.1.2.1 10-Jan-2002  thorpej Sync kqueue branch with -current.
 1.3.10.1 28-May-2002  tv Pull up revision 1.4 (requested by nathanw in ticket #52):
Deliberately #include the appropriate arch-specific param.h to get
the correct value for NBSG, even when building with a different sun68k
target.
 1.3.8.1 30-May-2002  gehenna Catch up with -current.
 1.5.14.1 29-Apr-2005  kent sync with -current
 1.5.6.1 24-Jan-2005  skrll Sync with HEAD.
 1.6.8.1 03-Sep-2007  yamt sync with head.
 1.7.26.1 12-Mar-2007  rmind Sync with HEAD.
 1.8.44.3 11-Mar-2010  yamt sync with head
 1.8.44.2 04-May-2009  yamt sync with head.
 1.8.44.1 16-May-2008  yamt sync with head.
 1.8.42.1 18-May-2008  yamt sync with head.
 1.8.40.2 17-Jan-2009  mjf Sync with HEAD.
 1.8.40.1 02-Jun-2008  mjf Sync with HEAD.
 1.9.8.1 19-Jan-2009  skrll Sync with HEAD.
 1.11 20-Jun-2020  riastradh Nix trailing whitespace.
 1.10 18-Jun-2020  tsutsui Make local functions static.

Tested on 3/60.
 1.9 11-Dec-2009  tsutsui Include pmap.h or pmap3.h instead of param.h for NBSG to handle MMU.
 1.8 12-Jan-2009  tsutsui WARNSfy.
 1.7 28-Apr-2008  martin branches: 1.7.8;
Remove clause 3 and 4 from TNF licenses
 1.6 11-Dec-2005  christos branches: 1.6.74; 1.6.76; 1.6.78;
merge ktrace-lwp.
 1.5 22-Jan-2005  chs de-__P, remove register, ansify, b* -> mem*, u_int*_t -> uint*_t.
 1.4 27-Sep-2002  provos branches: 1.4.6; 1.4.14;
remove trailing \n in panic(). approved perry.
 1.3 23-May-2002  nathanw Deliberately #include the appropriate arch-specific param.h to get
the correct value for NBSG, even when building with a different sun68k
target.
 1.2 30-Nov-2001  fredette branches: 1.2.8; 1.2.10;
vm_offset_t -> vaddr_t
 1.1 14-Jun-2001  fredette branches: 1.1.2; 1.1.8;
Added sources for the sun2 boot blocks and other
sun68k-ish code, all of which ought to eventually
be shared with the sun3.
 1.1.8.4 18-Oct-2002  nathanw Catch up to -current.
 1.1.8.3 20-Jun-2002  nathanw Catch up to -current.
 1.1.8.2 08-Jan-2002  nathanw Catch up to -current.
 1.1.8.1 14-Jun-2001  nathanw file sun3.c was added on branch nathanw_sa on 2002-01-08 00:28:25 +0000
 1.1.2.3 10-Oct-2002  jdolecek sync kqueue with -current; this includes merge of gehenna-devsw branch,
merge of i386 MP branch, and part of autoconf rototil work
 1.1.2.2 23-Jun-2002  jdolecek catch up with -current on kqueue branch
 1.1.2.1 10-Jan-2002  thorpej Sync kqueue branch with -current.
 1.2.10.1 28-May-2002  tv Pull up revision 1.3 (requested by nathanw in ticket #52):
Deliberately #include the appropriate arch-specific param.h to get
the correct value for NBSG, even when building with a different sun68k
target.
 1.2.8.1 30-May-2002  gehenna Catch up with -current.
 1.4.14.1 29-Apr-2005  kent sync with -current
 1.4.6.1 24-Jan-2005  skrll Sync with HEAD.
 1.6.78.3 11-Mar-2010  yamt sync with head
 1.6.78.2 04-May-2009  yamt sync with head.
 1.6.78.1 16-May-2008  yamt sync with head.
 1.6.76.1 18-May-2008  yamt sync with head.
 1.6.74.2 17-Jan-2009  mjf Sync with HEAD.
 1.6.74.1 02-Jun-2008  mjf Sync with HEAD.
 1.7.8.1 19-Jan-2009  skrll Sync with HEAD.
 1.14 20-Jun-2020  riastradh Nix trailing whitespace.
 1.13 18-Jun-2020  tsutsui Make local functions static.

Tested on 3/60.
 1.12 11-Dec-2009  tsutsui NBSG is not used in this file so remove unnecessary comment and include.
 1.11 12-Jan-2009  tsutsui WARNSfy.
 1.10 28-Apr-2008  martin branches: 1.10.8;
Remove clause 3 and 4 from TNF licenses
 1.9 24-Dec-2005  perry branches: 1.9.74; 1.9.76; 1.9.78;
Remove leading __ from __(const|inline|signed|volatile) -- it is obsolete.
 1.8 11-Dec-2005  christos merge ktrace-lwp.
 1.7 26-Jan-2005  he branches: 1.7.6;
Make forward declaration and actual function definitions consistent.
Some of the functions changed signature in the previous commit.
 1.6 22-Jan-2005  chs branches: 1.6.2;
de-__P, remove register, ansify, b* -> mem*, u_int*_t -> uint*_t.
 1.5 27-Sep-2002  provos branches: 1.5.6; 1.5.14;
remove trailing \n in panic(). approved perry.
 1.4 30-May-2002  nathanw #include <arch/sun3/include/param.h>, not param3x.h, so that we get
appropriate multiple-inclusion protection. The #define _SUN3X_ ensures
that param3x.h is included by param.h.
 1.3 23-May-2002  nathanw Deliberately #include the appropriate arch-specific param.h to get
the correct value for NBSG, even when building with a different sun68k
target.
 1.2 30-Nov-2001  fredette branches: 1.2.8; 1.2.10;
vm_offset_t -> vaddr_t
 1.1 14-Jun-2001  fredette branches: 1.1.2; 1.1.8;
Added sources for the sun2 boot blocks and other
sun68k-ish code, all of which ought to eventually
be shared with the sun3.
 1.1.8.4 18-Oct-2002  nathanw Catch up to -current.
 1.1.8.3 20-Jun-2002  nathanw Catch up to -current.
 1.1.8.2 08-Jan-2002  nathanw Catch up to -current.
 1.1.8.1 14-Jun-2001  nathanw file sun3x.c was added on branch nathanw_sa on 2002-01-08 00:28:25 +0000
 1.1.2.3 10-Oct-2002  jdolecek sync kqueue with -current; this includes merge of gehenna-devsw branch,
merge of i386 MP branch, and part of autoconf rototil work
 1.1.2.2 23-Jun-2002  jdolecek catch up with -current on kqueue branch
 1.1.2.1 10-Jan-2002  thorpej Sync kqueue branch with -current.
 1.2.10.2 31-May-2002  tv Pull up revision 1.4 (requested by nathanw in ticket #102):
appropriate multiple-inclusion protection. The #define _SUN3X_ ensures
that param3x.h is included by param.h.
 1.2.10.1 28-May-2002  tv Pull up revision 1.3 (requested by nathanw in ticket #52):
Deliberately #include the appropriate arch-specific param.h to get
the correct value for NBSG, even when building with a different sun68k
target.
 1.2.8.2 15-Jul-2002  gehenna catch up with -current.
 1.2.8.1 30-May-2002  gehenna Catch up with -current.
 1.5.14.1 29-Apr-2005  kent sync with -current
 1.5.6.2 04-Feb-2005  skrll Sync with HEAD.
 1.5.6.1 24-Jan-2005  skrll Sync with HEAD.
 1.6.2.1 12-Feb-2005  yamt sync with head.
 1.7.6.1 21-Jun-2006  yamt sync with head.
 1.9.78.3 11-Mar-2010  yamt sync with head
 1.9.78.2 04-May-2009  yamt sync with head.
 1.9.78.1 16-May-2008  yamt sync with head.
 1.9.76.1 18-May-2008  yamt sync with head.
 1.9.74.2 17-Jan-2009  mjf Sync with HEAD.
 1.9.74.1 02-Jun-2008  mjf Sync with HEAD.
 1.10.8.1 19-Jan-2009  skrll Sync with HEAD.
 1.6 20-Mar-2009  tsutsui Switch sun68k standalone programs to using MI libsa and libkern.
Bump version.

Tested bootxx + ufsboot on TME (sun2 and sun3) and 3/80 (sun3x).
 1.5 11-Dec-2005  christos branches: 1.5.78; 1.5.86; 1.5.92;
merge ktrace-lwp.
 1.4 05-Aug-2003  fredette Bumped the version number to account for fixes in tapeboot.
 1.3 09-Nov-2001  scw branches: 1.3.2; 1.3.12; 1.3.18;
Bump the version numbers of all bootloaders which use loadfile_elfXX() now
that it tries hard to avoid backwards seeks.
 1.2 02-Aug-2001  bjh21 branches: 1.2.4;
Bump version numbers of all bootloaders that use loadfile/ELF, to account for
my changes to symbol loading. I should probably have done this at the time,
but it's better late than never.
 1.1 14-Jun-2001  fredette branches: 1.1.2;
Added sources for the sun2 boot blocks and other
sun68k-ish code, all of which ought to eventually
be shared with the sun3.
 1.1.2.2 10-Jan-2002  thorpej Sync kqueue branch with -current.
 1.1.2.1 03-Aug-2001  lukem update to -current
 1.2.4.1 12-Nov-2001  thorpej Sync the thorpej-mips-cache branch with -current.
 1.3.18.3 21-Sep-2004  skrll Fix the sync with head I botched.
 1.3.18.2 18-Sep-2004  skrll Sync with HEAD.
 1.3.18.1 03-Aug-2004  skrll Sync with HEAD
 1.3.12.1 10-Sep-2003  tron Pull up revision 1.4 (requested by fredette in ticket #1402):
Bumped the version number to account for fixes in tapeboot.
 1.3.2.2 09-Nov-2001  scw Bump the version numbers of all bootloaders which use loadfile_elfXX() now
that it tries hard to avoid backwards seeks.
 1.3.2.1 09-Nov-2001  scw file version was added on branch nathanw_sa on 2001-11-09 19:53:19 +0000
 1.5.92.1 13-May-2009  jym Sync with HEAD.

Commit is split, to avoid a "too many arguments" protocol error.
 1.5.86.1 28-Apr-2009  skrll Sync with HEAD.
 1.5.78.1 04-May-2009  yamt sync with head.
 1.7 11-Jun-2016  dholland PR 51200 gets in libsa considered harmful: change own gets() to kgets()
and use it.
 1.6 12-Jan-2009  tsutsui branches: 1.6.24; 1.6.42;
WARNSfy.
 1.5 11-Dec-2005  christos branches: 1.5.74; 1.5.78; 1.5.86;
merge ktrace-lwp.
 1.4 22-Jan-2005  chs de-__P, remove register, ansify, b* -> mem*, u_int*_t -> uint*_t.
 1.3 07-Aug-2003  agc branches: 1.3.8;
Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22364, verified by myself.
 1.2 15-Dec-2001  fredette branches: 1.2.16;
On the sun2, added support for loading larger kernels,
and pull objects from the libgcc in DESTDIR.
 1.1 14-Jun-2001  fredette branches: 1.1.2; 1.1.8;
Added sources for the sun2 boot blocks and other
sun68k-ish code, all of which ought to eventually
be shared with the sun3.
 1.1.8.2 08-Jan-2002  nathanw Catch up to -current.
 1.1.8.1 14-Jun-2001  nathanw file xxboot.c was added on branch nathanw_sa on 2002-01-08 00:28:26 +0000
 1.1.2.1 10-Jan-2002  thorpej Sync kqueue branch with -current.
 1.2.16.4 24-Jan-2005  skrll Sync with HEAD.
 1.2.16.3 21-Sep-2004  skrll Fix the sync with head I botched.
 1.2.16.2 18-Sep-2004  skrll Sync with HEAD.
 1.2.16.1 03-Aug-2004  skrll Sync with HEAD
 1.3.8.1 29-Apr-2005  kent sync with -current
 1.5.86.1 19-Jan-2009  skrll Sync with HEAD.
 1.5.78.1 04-May-2009  yamt sync with head.
 1.5.74.1 17-Jan-2009  mjf Sync with HEAD.
 1.6.42.1 09-Jul-2016  skrll Sync with HEAD
 1.6.24.1 03-Dec-2017  jdolecek update from HEAD
 1.2 12-Dec-2001  tv MKfoo=no -> NOfoo
 1.1 14-Jun-2001  fredette branches: 1.1.2; 1.1.8;
Added sources for the sun2 boot blocks and other
sun68k-ish code, all of which ought to eventually
be shared with the sun3.
 1.1.8.2 08-Jan-2002  nathanw Catch up to -current.
 1.1.8.1 14-Jun-2001  nathanw file Makefile was added on branch nathanw_sa on 2002-01-08 00:28:26 +0000
 1.1.2.1 10-Jan-2002  thorpej Sync kqueue branch with -current.
 1.6 29-Jul-2015  tsutsui Revert incorrect and broken kludge. PR/50101
 1.5 29-Jul-2015  christos XXX: add missing symbols.
 1.4 12-Jan-2009  tsutsui branches: 1.4.42;
WARNSfy.
 1.3 11-Dec-2005  christos branches: 1.3.74; 1.3.78; 1.3.86;
merge ktrace-lwp.
 1.2 23-Jun-2005  junyoung Use FS_OPS() macro.
 1.1 14-Jun-2001  fredette branches: 1.1.8; 1.1.24;
Added sources for the sun2 boot blocks and other
sun68k-ish code, all of which ought to eventually
be shared with the sun3.
 1.1.24.1 10-Nov-2005  skrll Sync with HEAD. Here we go again...
 1.1.8.2 14-Jun-2001  fredette Added sources for the sun2 boot blocks and other
sun68k-ish code, all of which ought to eventually
be shared with the sun3.
 1.1.8.1 14-Jun-2001  fredette file conf.c was added on branch nathanw_sa on 2001-06-14 12:57:17 +0000
 1.3.86.1 19-Jan-2009  skrll Sync with HEAD.
 1.3.78.1 04-May-2009  yamt sync with head.
 1.3.74.1 17-Jan-2009  mjf Sync with HEAD.
 1.4.42.1 22-Sep-2015  skrll Sync with HEAD
 1.4 11-Dec-2005  christos merge ktrace-lwp.
 1.3 02-Nov-2003  chs find libsa files.
 1.2 12-Dec-2001  tv branches: 1.2.16;
MKfoo=no -> NOfoo
 1.1 14-Jun-2001  fredette branches: 1.1.2; 1.1.8;
Added sources for the sun2 boot blocks and other
sun68k-ish code, all of which ought to eventually
be shared with the sun3.
 1.1.8.2 08-Jan-2002  nathanw Catch up to -current.
 1.1.8.1 14-Jun-2001  nathanw file Makefile was added on branch nathanw_sa on 2002-01-08 00:28:26 +0000
 1.1.2.1 10-Jan-2002  thorpej Sync kqueue branch with -current.
 1.2.16.3 21-Sep-2004  skrll Fix the sync with head I botched.
 1.2.16.2 18-Sep-2004  skrll Sync with HEAD.
 1.2.16.1 03-Aug-2004  skrll Sync with HEAD
 1.8 11-Jun-2016  dholland PR 51200 gets in libsa considered harmful: change own gets() to kgets()
and use it.
 1.7 29-May-2011  tsutsui branches: 1.7.14; 1.7.32;
Disable LOAD_BACKWARDS on tapeboot which can't seek backwards.
Fixes bootstrap tapeboot installation failure on TME reported from ryoon@.

Should be pulled up to netbsd-5.
(note netbsd-5 uses LOAD_NOTE instead of LOAD_BACKWARDS)
 1.6 12-Jan-2009  tsutsui branches: 1.6.6; 1.6.8;
WARNSfy.
 1.5 11-Dec-2005  christos branches: 1.5.74; 1.5.78; 1.5.86; 1.5.88;
merge ktrace-lwp.
 1.4 22-Jan-2005  chs de-__P, remove register, ansify, b* -> mem*, u_int*_t -> uint*_t.
 1.3 07-Aug-2003  agc branches: 1.3.8;
Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22364, verified by myself.
 1.2 05-Aug-2003  fredette Added seek support for tape files. Before, seeking a tape file
would silently fail, causing loadfile to load file contents into
the wrong addresses.

On the sun3/sun3x, MARK_START was incorrectly set too. Also
added support for booting a sun2.
 1.1 14-Jun-2001  fredette branches: 1.1.8; 1.1.18; 1.1.24;
Added sources for the sun2 boot blocks and other
sun68k-ish code, all of which ought to eventually
be shared with the sun3.
 1.1.24.4 24-Jan-2005  skrll Sync with HEAD.
 1.1.24.3 21-Sep-2004  skrll Fix the sync with head I botched.
 1.1.24.2 18-Sep-2004  skrll Sync with HEAD.
 1.1.24.1 03-Aug-2004  skrll Sync with HEAD
 1.1.18.1 09-Sep-2003  tron Pull up revision 1.2 (requested by fredette in ticket #1402):
Added seek support for tape files. Before, seeking a tape file
would silently fail, causing loadfile to load file contents into
the wrong addresses.
On the sun3/sun3x, MARK_START was incorrectly set too. Also
added support for booting a sun2.
 1.1.8.2 14-Jun-2001  fredette Added sources for the sun2 boot blocks and other
sun68k-ish code, all of which ought to eventually
be shared with the sun3.
 1.1.8.1 14-Jun-2001  fredette file boot.c was added on branch nathanw_sa on 2001-06-14 12:57:17 +0000
 1.3.8.1 29-Apr-2005  kent sync with -current
 1.5.88.1 15-Jul-2011  riz Pull up following revision(s) (requested by tsutsui in ticket #1639):
sys/arch/sun68k/stand/tapeboot/boot.c: revision 1.7 via patch
sys/arch/mvme68k/stand/libsa/exec_mvme.c: revision 1.16 via patch
Disable LOAD_BACKWARDS on tapeboot which can't seek backwards.
Fixes bootstrap tapeboot installation failure on TME reported from ryoon@.
Should be pulled up to netbsd-5.
(note netbsd-5 uses LOAD_NOTE instead of LOAD_BACKWARDS)
Avoid backward seek on tape boot.
 1.5.86.1 19-Jan-2009  skrll Sync with HEAD.
 1.5.78.1 04-May-2009  yamt sync with head.
 1.5.74.1 17-Jan-2009  mjf Sync with HEAD.
 1.6.8.1 06-Jun-2011  jruoho Sync with HEAD.
 1.6.6.1 31-May-2011  rmind sync with head
 1.7.32.1 09-Jul-2016  skrll Sync with HEAD
 1.7.14.1 03-Dec-2017  jdolecek update from HEAD
 1.4 11-Dec-2005  christos merge ktrace-lwp.
 1.3 23-Jun-2005  junyoung Use FS_OPS() macro.
 1.2 15-May-2002  lukem branches: 1.2.10;
- implement putstr(), and use in various places instead of printf()
- wrap more debug stuff in #ifdef DEBUG
- for bootxx, provide minimal panic() which uses putstr() instead of printf()

bootxx is now < 7.5KB
 1.1 14-Jun-2001  fredette branches: 1.1.2; 1.1.8;
Added sources for the sun2 boot blocks and other
sun68k-ish code, all of which ought to eventually
be shared with the sun3.
 1.1.8.2 20-Jun-2002  nathanw Catch up to -current.
 1.1.8.1 14-Jun-2001  nathanw file conf.c was added on branch nathanw_sa on 2002-06-20 03:42:03 +0000
 1.1.2.1 23-Jun-2002  jdolecek catch up with -current on kqueue branch
 1.2.10.1 10-Nov-2005  skrll Sync with HEAD. Here we go again...
 1.6 17-Jul-2011  joerg Retire varargs.h support. Move machine/stdarg.h logic into MI
sys/stdarg.h and expect compiler to provide proper builtins, defaulting
to the GCC interface. lint still has a special fallback.
Reduce abuse of _BSD_VA_LIST_ by defining __va_list by default and
derive va_list as required by standards.
 1.5 12-Jan-2009  tsutsui WARNSfy.
 1.4 28-Apr-2008  martin branches: 1.4.8;
Remove clause 3 and 4 from TNF licenses
 1.3 11-Dec-2005  christos branches: 1.3.74; 1.3.76; 1.3.78;
merge ktrace-lwp.
 1.2 22-Jan-2005  chs de-__P, remove register, ansify, b* -> mem*, u_int*_t -> uint*_t.
 1.1 14-Jun-2001  fredette branches: 1.1.8; 1.1.24; 1.1.32;
Added sources for the sun2 boot blocks and other
sun68k-ish code, all of which ought to eventually
be shared with the sun3.
 1.1.32.1 29-Apr-2005  kent sync with -current
 1.1.24.1 24-Jan-2005  skrll Sync with HEAD.
 1.1.8.2 14-Jun-2001  fredette Added sources for the sun2 boot blocks and other
sun68k-ish code, all of which ought to eventually
be shared with the sun3.
 1.1.8.1 14-Jun-2001  fredette file dev_tape.c was added on branch nathanw_sa on 2001-06-14 12:57:18 +0000
 1.3.78.2 04-May-2009  yamt sync with head.
 1.3.78.1 16-May-2008  yamt sync with head.
 1.3.76.1 18-May-2008  yamt sync with head.
 1.3.74.2 17-Jan-2009  mjf Sync with HEAD.
 1.3.74.1 02-Jun-2008  mjf Sync with HEAD.
 1.4.8.1 19-Jan-2009  skrll Sync with HEAD.
 1.3 11-Dec-2005  christos merge ktrace-lwp.
 1.2 22-Jan-2005  chs de-__P, remove register, ansify, b* -> mem*, u_int*_t -> uint*_t.
 1.1 14-Jun-2001  fredette branches: 1.1.8; 1.1.24; 1.1.32;
Added sources for the sun2 boot blocks and other
sun68k-ish code, all of which ought to eventually
be shared with the sun3.
 1.1.32.1 29-Apr-2005  kent sync with -current
 1.1.24.1 24-Jan-2005  skrll Sync with HEAD.
 1.1.8.2 14-Jun-2001  fredette Added sources for the sun2 boot blocks and other
sun68k-ish code, all of which ought to eventually
be shared with the sun3.
 1.1.8.1 14-Jun-2001  fredette file dev_tape.h was added on branch nathanw_sa on 2001-06-14 12:57:18 +0000
 1.8 21-Oct-2009  snj Drop 3rd and 4th clauses. Approved by gwr@ (copyright holder).
 1.7 12-Jan-2009  tsutsui WARNSfy.
 1.6 25-Jan-2006  christos branches: 1.6.72; 1.6.76; 1.6.84;
free -> dealloc
unsigned -> size_t for alloc/dealloc
 1.5 11-Dec-2005  christos branches: 1.5.2;
merge ktrace-lwp.
 1.4 22-Jan-2005  chs branches: 1.4.8;
de-__P, remove register, ansify, b* -> mem*, u_int*_t -> uint*_t.
 1.3 21-Aug-2003  he branches: 1.3.8;
Adapt to const'ing of the first argument of the open function in fs_ops.
 1.2 05-Aug-2003  fredette Added seek support for tape files. Before, seeking a tape file
would silently fail, causing loadfile to load file contents into
the wrong addresses.

On the sun3/sun3x, MARK_START was incorrectly set too. Also
added support for booting a sun2.
 1.1 14-Jun-2001  fredette branches: 1.1.8; 1.1.18; 1.1.24;
Added sources for the sun2 boot blocks and other
sun68k-ish code, all of which ought to eventually
be shared with the sun3.
 1.1.24.4 24-Jan-2005  skrll Sync with HEAD.
 1.1.24.3 21-Sep-2004  skrll Fix the sync with head I botched.
 1.1.24.2 18-Sep-2004  skrll Sync with HEAD.
 1.1.24.1 03-Aug-2004  skrll Sync with HEAD
 1.1.18.1 09-Sep-2003  tron Pull up revision 1.2 (requested by fredette in ticket #1402):
Added seek support for tape files. Before, seeking a tape file
would silently fail, causing loadfile to load file contents into
the wrong addresses.
On the sun3/sun3x, MARK_START was incorrectly set too. Also
added support for booting a sun2.
 1.1.8.2 14-Jun-2001  fredette Added sources for the sun2 boot blocks and other
sun68k-ish code, all of which ought to eventually
be shared with the sun3.
 1.1.8.1 14-Jun-2001  fredette file rawfs.c was added on branch nathanw_sa on 2001-06-14 12:57:18 +0000
 1.3.8.1 29-Apr-2005  kent sync with -current
 1.4.8.1 21-Jun-2006  yamt sync with head.
 1.5.2.1 01-Feb-2006  yamt sync with head.
 1.6.84.1 19-Jan-2009  skrll Sync with HEAD.
 1.6.76.2 11-Mar-2010  yamt sync with head
 1.6.76.1 04-May-2009  yamt sync with head.
 1.6.72.1 17-Jan-2009  mjf Sync with HEAD.
 1.4 11-Dec-2005  christos merge ktrace-lwp.
 1.3 22-Jan-2005  chs de-__P, remove register, ansify, b* -> mem*, u_int*_t -> uint*_t.
 1.2 21-Aug-2003  he branches: 1.2.8;
Adapt to const'ing of the first argument of the open function in fs_ops.
 1.1 14-Jun-2001  fredette branches: 1.1.8; 1.1.24;
Added sources for the sun2 boot blocks and other
sun68k-ish code, all of which ought to eventually
be shared with the sun3.
 1.1.24.4 24-Jan-2005  skrll Sync with HEAD.
 1.1.24.3 21-Sep-2004  skrll Fix the sync with head I botched.
 1.1.24.2 18-Sep-2004  skrll Sync with HEAD.
 1.1.24.1 03-Aug-2004  skrll Sync with HEAD
 1.1.8.2 14-Jun-2001  fredette Added sources for the sun2 boot blocks and other
sun68k-ish code, all of which ought to eventually
be shared with the sun3.
 1.1.8.1 14-Jun-2001  fredette file rawfs.h was added on branch nathanw_sa on 2001-06-14 12:57:18 +0000
 1.2.8.1 29-Apr-2005  kent sync with -current
 1.5 11-Dec-2005  christos merge ktrace-lwp.
 1.4 30-Nov-2003  tsutsui Specify 32bit daddr_t not only for ufsboot but also libsa and all SA_PROGs.
Now bootxx and ufsboot works again.
 1.3 30-Mar-2003  kristerw branches: 1.3.2;
Revert last change (dependance on divdi3.c, moddi3.c, and qdivrem.c) and
use 32bit daddr_t instead, as suggested by Izumi Tsutsui.
 1.2 12-Dec-2001  tv MKfoo=no -> NOfoo
 1.1 14-Jun-2001  fredette branches: 1.1.2; 1.1.8;
Added sources for the sun2 boot blocks and other
sun68k-ish code, all of which ought to eventually
be shared with the sun3.
 1.1.8.2 08-Jan-2002  nathanw Catch up to -current.
 1.1.8.1 14-Jun-2001  nathanw file Makefile was added on branch nathanw_sa on 2002-01-08 00:28:27 +0000
 1.1.2.1 10-Jan-2002  thorpej Sync kqueue branch with -current.
 1.3.2.3 21-Sep-2004  skrll Fix the sync with head I botched.
 1.3.2.2 18-Sep-2004  skrll Sync with HEAD.
 1.3.2.1 03-Aug-2004  skrll Sync with HEAD
 1.5 12-Jan-2009  tsutsui WARNSfy.
 1.4 11-Dec-2005  christos branches: 1.4.74; 1.4.78; 1.4.86;
merge ktrace-lwp.
 1.3 23-Jun-2005  junyoung Use FS_OPS() macro.
 1.2 22-Jan-2005  chs de-__P, remove register, ansify, b* -> mem*, u_int*_t -> uint*_t.
 1.1 14-Jun-2001  fredette branches: 1.1.8; 1.1.24; 1.1.32;
Added sources for the sun2 boot blocks and other
sun68k-ish code, all of which ought to eventually
be shared with the sun3.
 1.1.32.1 29-Apr-2005  kent sync with -current
 1.1.24.2 10-Nov-2005  skrll Sync with HEAD. Here we go again...
 1.1.24.1 24-Jan-2005  skrll Sync with HEAD.
 1.1.8.2 14-Jun-2001  fredette Added sources for the sun2 boot blocks and other
sun68k-ish code, all of which ought to eventually
be shared with the sun3.
 1.1.8.1 14-Jun-2001  fredette file conf.c was added on branch nathanw_sa on 2001-06-14 12:57:18 +0000
 1.4.86.1 19-Jan-2009  skrll Sync with HEAD.
 1.4.78.1 04-May-2009  yamt sync with head.
 1.4.74.1 17-Jan-2009  mjf Sync with HEAD.
 1.32 07-Aug-2021  thorpej Merge thorpej-cfargs2.
 1.31 24-Apr-2021  thorpej branches: 1.31.8;
Merge thorpej-cfargs branch:

Simplify and make extensible the config_search() / config_found() /
config_attach() interfaces: rather than having different variants for
which arguments you want pass along, just have a single call that
takes a variadic list of tag-value arguments.

Adjust all call sites:
- Simplify wherever possible; don't pass along arguments that aren't
actually needed.
- Don't be explicit about what interface attribute is attaching if
the device only has one. (More simplification.)
- Add a config_probe() function to be used in indirect configuiration
situations, making is visibly easier to see when indirect config is
in play, and allowing for future change in semantics. (As of now,
this is just a wrapper around config_match(), but that is an
implementation detail.)

Remove unnecessary or redundant interface attributes where they're not
needed.

There are currently 5 "cfargs" defined:
- CFARG_SUBMATCH (submatch function for direct config)
- CFARG_SEARCH (search function for indirect config)
- CFARG_IATTR (interface attribte)
- CFARG_LOCATORS (locators array)
- CFARG_DEVHANDLE (devhandle_t - wraps OFW, ACPI, etc. handles)

...and a sentinel value CFARG_EOL.

Add some extra sanity checking to ensure that interface attributes
aren't ambiguous.

Use CFARG_DEVHANDLE in MI FDT, OFW, and ACPI code, and macppc and shark
ports to associate those device handles with device_t instance. This
will trickle trough to more places over time (need back-end for pre-OFW
Sun OBP; any others?).
 1.30 13-Oct-2012  tsutsui branches: 1.30.52;
use device_xname() (from chs@)
 1.29 29-Jul-2012  mlelstv branches: 1.29.2;
Do not call setroot() from MD code and from MI code, which has
unwanted sideeffects in the RB_ASKNAME case. This fixes PR/46732.

No longer wrap MD cpu_rootconf(), as hp300 port stores reboot information
as a side effect. Instead call MI rootconf() from MD code which makes
rootconf() now a wrapper to setroot().

Adjust several MD routines to set the global booted_device,booted_partition
variables instead of passing partial information to setroot().

Make cpu_rootconf(9) describe the calling order.
 1.28 01-Jul-2008  tsutsui branches: 1.28.30; 1.28.36;
Split device_t/softc with misc cosmetic changes.
 1.27 28-Apr-2008  martin branches: 1.27.2; 1.27.4;
Remove clause 3 and 4 from TNF licenses
 1.26 27-Apr-2008  tsutsui Fix a botch in rev 1.21.
 1.25 18-Feb-2008  joerg branches: 1.25.6; 1.25.8; 1.25.10;
Return NULL if no scsibus was found to fix compilation.
 1.24 12-Feb-2008  joerg Convert to device_find_by_driver_unit.
 1.23 05-Dec-2007  tsutsui Use TAILQ_FIRST(3) and TAILQ_NEXT(3) macro.
 1.22 04-Dec-2007  tsutsui Adapt sun68k ports to recent interrupt handling changes.

XXX: sun2 (m68010) doesn't have CAS instructions.
 1.21 01-Dec-2007  tsutsui branches: 1.21.2;
- update a comment
- use __func__ to print function names
- some KNF
 1.20 30-Sep-2006  tsutsui branches: 1.20.8; 1.20.26; 1.20.28; 1.20.34;
Move declarations of mainbus_dma_tag and mainbus_space_tag
to <sun68k/autoconf.h>.
 1.19 21-Feb-2006  thorpej branches: 1.19.14; 1.19.16;
Use device_class() instead of accessing dv_class directly.
 1.18 11-Dec-2005  christos branches: 1.18.2; 1.18.4; 1.18.6;
merge ktrace-lwp.
 1.17 26-Aug-2005  drochner s/locdesc_t/int/g
 1.16 30-Jun-2005  drochner branches: 1.16.2;
adaptions to config_search() change, and minor autoconf fixes, mostly from Havard Eidnes
 1.15 03-Jun-2005  tsutsui Add const.
 1.14 22-Jan-2005  chs de-__P, remove register, ansify, b* -> mem*, u_int*_t -> uint*_t.
 1.13 14-Dec-2004  chs branches: 1.13.2;
use the generated macros in locators.h rather than hard-coded numbers
to index the cf_loc[] array. reviewed by allen briggs.
 1.12 15-Jul-2003  lukem __KERNEL_RCSID()
 1.11 01-Jan-2003  thorpej branches: 1.11.2;
Use aprint_normal() for cfprint routines.
 1.10 02-Oct-2002  thorpej Add trailing ; to CFATTACH_DECL.
 1.9 01-Oct-2002  thorpej Use CFATTACH_DECL().
 1.8 27-Sep-2002  thorpej Declare all cfattach structures const.
 1.7 27-Sep-2002  provos remove trailing \n in panic(). approved perry.
 1.6 27-Sep-2002  thorpej Introduce a new routine, config_match(), which invokes the
cfattach->ca_match function in behalf of the caller. Use it
rather than invoking cfattach->ca_match directly.
 1.5 27-Sep-2002  thorpej Rather than referencing the cfdriver directly in the cfdata entries,
instead use a string naming the driver. The cfdriver is then looked
up in a list which is built at run-time.
 1.4 24-May-2002  lukem only include scsi support if NSCSIBUS > 0
fixes sun2 (and probably sun3) DISKLESS kernel build
 1.3 16-May-2002  thorpej branches: 1.3.2;
Don't access a scsipi channel's periph table directly; use
scsipi_lookup_periph().
 1.2 15-Dec-2001  fredette branches: 1.2.8;
Fixed a bug where we weren't checking for required or
forbidden locators correctly, especially physical addresses.
 1.1 27-Jun-2001  fredette branches: 1.1.2; 1.1.8;
Added common sun68k autoconfiguration and bus_space
related code. Currently used by sun2.
 1.1.8.5 03-Jan-2003  thorpej Sync with HEAD.
 1.1.8.4 18-Oct-2002  nathanw Catch up to -current.
 1.1.8.3 20-Jun-2002  nathanw Catch up to -current.
 1.1.8.2 08-Jan-2002  nathanw Catch up to -current.
 1.1.8.1 27-Jun-2001  nathanw file autoconf.c was added on branch nathanw_sa on 2002-01-08 00:28:27 +0000
 1.1.2.3 10-Oct-2002  jdolecek sync kqueue with -current; this includes merge of gehenna-devsw branch,
merge of i386 MP branch, and part of autoconf rototil work
 1.1.2.2 23-Jun-2002  jdolecek catch up with -current on kqueue branch
 1.1.2.1 10-Jan-2002  thorpej Sync kqueue branch with -current.
 1.2.8.1 30-May-2002  gehenna Catch up with -current.
 1.3.2.1 24-May-2002  perry resolve 1.6 pullup ticket #15 by lukem.
pulls up revision 1.4
original commit message:

> only include scsi support if NSCSIBUS > 0
> fixes sun2 (and probably sun3) DISKLESS kernel build
 1.11.2.6 10-Nov-2005  skrll Sync with HEAD. Here we go again...
 1.11.2.5 24-Jan-2005  skrll Sync with HEAD.
 1.11.2.4 18-Dec-2004  skrll Sync with HEAD.
 1.11.2.3 21-Sep-2004  skrll Fix the sync with head I botched.
 1.11.2.2 18-Sep-2004  skrll Sync with HEAD.
 1.11.2.1 03-Aug-2004  skrll Sync with HEAD
 1.13.2.1 29-Apr-2005  kent sync with -current
 1.16.2.4 27-Feb-2008  yamt sync with head.
 1.16.2.3 07-Dec-2007  yamt sync with head
 1.16.2.2 30-Dec-2006  yamt sync with head.
 1.16.2.1 21-Jun-2006  yamt sync with head.
 1.18.6.1 22-Apr-2006  simonb Sync with head.
 1.18.4.1 09-Sep-2006  rpaulo sync with head
 1.18.2.1 01-Mar-2006  yamt sync with head.
 1.19.16.1 06-Oct-2006  tsutsui Sync files of recent sun3 and sun68k merge and intersil7170(4) changes
with HEAD to build sun3 kernel on this branch.
 1.19.14.1 18-Nov-2006  ad Sync with head.
 1.20.34.2 18-Feb-2008  mjf Sync with HEAD.
 1.20.34.1 08-Dec-2007  mjf Sync with HEAD.
 1.20.28.2 23-Mar-2008  matt sync with HEAD
 1.20.28.1 09-Jan-2008  matt sync with HEAD
 1.20.26.2 09-Dec-2007  jmcneill Sync with HEAD.
 1.20.26.1 03-Dec-2007  joerg Sync with HEAD.
 1.20.8.1 03-Dec-2007  ad Sync with HEAD.
 1.21.2.1 08-Dec-2007  ad Sync with head.
 1.25.10.2 04-May-2009  yamt sync with head.
 1.25.10.1 16-May-2008  yamt sync with head.
 1.25.8.1 18-May-2008  yamt sync with head.
 1.25.6.2 02-Jul-2008  mjf Sync with HEAD.
 1.25.6.1 02-Jun-2008  mjf Sync with HEAD.
 1.27.4.1 03-Jul-2008  simonb Sync with head.
 1.27.2.1 18-Sep-2008  wrstuden Sync with wrstuden-revivesa-base-2.
 1.28.36.1 08-Aug-2012  martin Pull up following revision(s) (requested by mlelstv in ticket #466):
sys/arch/amiga/amiga/autoconf.c: revision 1.113
sys/arch/rs6000/rs6000/autoconf.c: revision 1.4
sys/arch/emips/emips/autoconf.c: revision 1.6
sys/arch/sandpoint/sandpoint/autoconf.c: revision 1.27
sys/arch/evbmips/alchemy/autoconf.c: revision 1.18
sys/arch/sgimips/sgimips/autoconf.c: revision 1.43
sys/arch/atari/atari/autoconf.c: revision 1.63
sys/arch/powerpc/oea/ofw_autoconf.c: revision 1.17
sys/arch/mmeye/mmeye/autoconf.c: revision 1.9
distrib/sets/lists/comp/mi: revision 1.1771
sys/arch/mipsco/mipsco/autoconf.c: revision 1.25
sys/arch/iyonix/iyonix/autoconf.c: revision 1.14
sys/arch/hp300/hp300/autoconf.c: revision 1.100
sys/kern/init_main.c: revision 1.445
sys/arch/pmax/pmax/autoconf.c: revision 1.79
sys/arch/netwinder/netwinder/autoconf.c: revision 1.11
sys/arch/dreamcast/dreamcast/autoconf.c: revision 1.10
sys/arch/ibmnws/ibmnws/autoconf.c: revision 1.12
sys/arch/evbppc/ev64260/autoconf.c: revision 1.17
sys/arch/evbmips/gdium/autoconf.c: revision 1.5
sys/arch/algor/algor/autoconf.c: revision 1.21
share/man/man9/Makefile: revision 1.367
sys/arch/ews4800mips/ews4800mips/autoconf.c: revision 1.9
sys/arch/amigappc/amigappc/autoconf.c: revision 1.5
sys/arch/x86/x86/x86_autoconf.c: revision 1.65
sys/arch/acorn26/acorn26/autoconf.c: revision 1.9
sys/arch/mvmeppc/mvmeppc/autoconf.c: revision 1.13
sys/arch/vax/vax/autoconf.c: revision 1.94
sys/arch/usermode/dev/cpu.c: revision 1.72
sys/arch/evbppc/virtex/autoconf.c: revision 1.5
sys/arch/next68k/next68k/autoconf.c: revision 1.26
sys/arch/mac68k/mac68k/autoconf.c: revision 1.73
sys/arch/ia64/ia64/autoconf.c: revision 1.6
sys/arch/evbppc/obs405/obs405_autoconf.c: revision 1.6
share/man/man9/cpu_rootconf.9: revision 1.7
sys/arch/landisk/landisk/autoconf.c: revision 1.6
sys/arch/evbmips/malta/autoconf.c: revision 1.16
sys/arch/sun3/sun3/autoconf.c: revision 1.76
sys/arch/evbppc/explora/autoconf.c: revision 1.13
sys/arch/sun3/sun3/autoconf.c: revision 1.77
sys/arch/evbmips/loongson/autoconf.c: revision 1.3
sys/arch/evbmips/atheros/autoconf.c: revision 1.11
sys/arch/sparc64/sparc64/autoconf.c: revision 1.188
sys/arch/acorn32/acorn32/autoconf.c: revision 1.18
sys/arch/evbarm/evbarm/autoconf.c: revision 1.13
sys/arch/cobalt/cobalt/autoconf.c: revision 1.30
sys/arch/mvme68k/mvme68k/autoconf.c: revision 1.46
sys/arch/hp700/hp700/autoconf.c: revision 1.48
sys/arch/evbmips/adm5120/autoconf.c: revision 1.5
sys/arch/hpcmips/hpcmips/autoconf.c: revision 1.25
sys/arch/alpha/alpha/autoconf.c: revision 1.52
sys/arch/sparc/sparc/autoconf.c: revision 1.244
sys/arch/evbppc/pmppc/autoconf.c: revision 1.7
sys/arch/bebox/bebox/autoconf.c: revision 1.25
sys/arch/luna68k/luna68k/autoconf.c: revision 1.13
sys/arch/hpcarm/hpcarm/autoconf.c: revision 1.20
sys/arch/evbppc/walnut/autoconf.c: revision 1.21
sys/arch/cesfic/cesfic/autoconf.c: revision 1.26
sys/arch/cats/cats/autoconf.c: revision 1.17
sys/arch/x68k/x68k/autoconf.c: revision 1.67
sys/arch/news68k/news68k/autoconf.c: revision 1.21
sys/arch/arc/arc/autoconf.c: revision 1.34
sys/arch/evbsh3/evbsh3/autoconf.c: revision 1.11
sys/sys/conf.h: revision 1.143
sys/arch/evbmips/rasoc/autoconf.c: revision 1.3
sys/arch/hpcsh/hpcsh/autoconf.c: revision 1.26
sys/arch/sun68k/sun68k/autoconf.c: revision 1.29
sys/arch/evbmips/rmixl/autoconf.c: revision 1.6
sys/arch/zaurus/zaurus/autoconf.c: revision 1.12
sys/arch/xen/x86/autoconf.c: revision 1.15
sys/arch/evbppc/mpc85xx/autoconf.c: revision 1.6
sys/arch/shark/shark/autoconf.c: revision 1.18
sys/arch/prep/prep/autoconf.c: revision 1.25
sys/arch/newsmips/newsmips/autoconf.c: revision 1.36
sys/arch/sbmips/sbmips/autoconf.c: revision 1.8
Do not call setroot() from MD code and from MI code, which has
unwanted sideeffects in the RB_ASKNAME case. This fixes PR/46732.
No longer wrap MD cpu_rootconf(), as hp300 port stores reboot information
as a side effect. Instead call MI rootconf() from MD code which makes
rootconf() now a wrapper to setroot().
Adjust several MD routines to set the global booted_device,booted_partition
variables instead of passing partial information to setroot().
Make cpu_rootconf(9) describe the calling order.
add rootconf(9) as a link to cpu_rootconf(9)
make this compile again
 1.28.30.1 30-Oct-2012  yamt sync with head
 1.29.2.1 20-Nov-2012  tls Resync to 2012-11-19 00:00:00 UTC
 1.30.52.4 05-Apr-2021  thorpej Treat config_probe() as if it were a boolean function; don't compare
return value > 0... except for the odd balls, which are now really easy
to spot.
 1.30.52.3 05-Apr-2021  thorpej config_match() -> config_probe() for the straight-forward indirect config
cases. There are still a few odd balls using config_match() which should
be sorted out later.
 1.30.52.2 03-Apr-2021  thorpej Give config_attach() the tagged variadic argument treatment and
mechanically convert all call sites.
 1.30.52.1 21-Mar-2021  thorpej Give config_found() the same variadic arguments treatment as
config_search(). This commit only adds the CFARG_EOL sentinel
to the existing config_found() calls. Conversion of config_found_sm_loc()
and config_found_ia() call sites will be in subsequent commits.
 1.31.8.1 04-Aug-2021  thorpej Adapt to CFARGS().
 1.25 26-Jul-2022  andvar s/functin/function/ in copy pasted comment.
 1.24 21-Nov-2020  thorpej malloc(9) -> kmem(9)
 1.23 07-Jul-2016  msaitoh branches: 1.23.30;
KNF. Remove extra spaces. No functional change.
 1.22 21-Sep-2014  christos branches: 1.22.2;
fix leak
 1.21 04-Jun-2008  ad branches: 1.21.42; 1.21.60;
vm_page: put TAILQ_ENTRY into a union with LIST_ENTRY, so we can use both.
 1.20 28-Apr-2008  martin branches: 1.20.2;
Remove clause 3 and 4 from TNF licenses
 1.19 04-Mar-2007  christos branches: 1.19.40; 1.19.42; 1.19.44;
Kill caddr_t; there will be some MI fallout, but it will be fixed shortly.
 1.18 03-Oct-2006  tsutsui branches: 1.18.4;
- change find_prom_map() to take paddr_t and return vaddr_t rather than
bus_space_handle_t since bus space handle without bus space tag looks weird
- replace old sun3 obio_find_mapping() with new common find_prom_map()
- add bus_space_vaddr(), from hp300
 1.17 01-Oct-2006  tsutsui First attempt at bus_space(9) support for sun3 with common sun68k/bus.c:
- make sun3 port use common sun68k files as much as possible
- add temporary options _SUN2_ in std.sun2 until sun3 can share all
sun68k files (autoconf.c and isr.c are not yet)
- move sun68kvme declaration temporary as well from files.sun68k to files.sun2
- rename and move sun68k_find_prom_map() function to MD sources since it
can't be shared with sun3
- add bus tag members to struct confargs and initilize them where appropriate

XXX1: MD bus_dma(9) backends are not implemented (yet).
XXX2: more code (obio etc.) should be shared among sun3, sun3x and sun2.
 1.16 30-Sep-2006  tsutsui cosmetics
 1.15 24-Nov-2005  yamt branches: 1.15.20; 1.15.22;
bus_dmamem_map: honour BUS_DMA_NOWAIT. noted by Manuel Bouyer.
bus_space_map: always do NOWAIT allocation as it used to be before yamt-km.

we have too many copies!
 1.14 01-Apr-2005  yamt branches: 1.14.2; 1.14.8;
merge yamt-km branch.
- don't use managed mappings/backing objects for wired memory allocations.
save some resources like pv_entry. also fix (most of) PR/27030.
- simplify kernel memory management API.
- simplify pmap bootstrap of some ports.
- some related cleanups.
 1.13 09-Mar-2005  matt Add a dm_maxsegsz public member to bus_dmamap_t. This allows a user of the API
to select the maximum segment size for each bus_dmamap_load (up to the maxsegsz
supplied to bus_dmamap_create). dm_maxsegsz is reset to the value supplied to
bus_dmamap_create when the dmamap is unloaded.
 1.12 22-Jan-2005  chs branches: 1.12.2;
de-__P, remove register, ansify, b* -> mem*, u_int*_t -> uint*_t.
 1.11 07-Aug-2003  agc branches: 1.11.8;
Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22364, verified by myself.
 1.10 15-Jul-2003  lukem __KERNEL_RCSID()
 1.9 03-May-2003  wiz branches: 1.9.2;
DMA, not dma nor Dma.
 1.8 01-Apr-2003  thorpej Use PAGE_SIZE rather than NBPG.
 1.7 27-Sep-2002  provos remove trailing \n in panic(). approved perry.
 1.6 25-Sep-2002  thorpej Don't include <sys/map.h>.
 1.5 02-Jun-2002  drochner move initialization of the "struct pglist" returned by uvm_pglistalloc()
from the calling code into uvm_pglistalloc() itself for consistency
and easier error handling
 1.4 30-Nov-2001  fredette branches: 1.4.8;
vm_offset_t -> paddr_t
Implement bus_space_mmap.
 1.3 10-Sep-2001  chris branches: 1.3.4;
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.
 1.2 15-Jul-2001  fredette branches: 1.2.2;
Replace vm_page_t with struct vm_page *.
 1.1 27-Jun-2001  fredette branches: 1.1.2;
Added common sun68k autoconfiguration and bus_space
related code. Currently used by sun2.
 1.1.2.5 10-Oct-2002  jdolecek sync kqueue with -current; this includes merge of gehenna-devsw branch,
merge of i386 MP branch, and part of autoconf rototil work
 1.1.2.4 23-Jun-2002  jdolecek catch up with -current on kqueue branch
 1.1.2.3 10-Jan-2002  thorpej Sync kqueue branch with -current.
 1.1.2.2 13-Sep-2001  thorpej Update the kqueue branch to HEAD.
 1.1.2.1 03-Aug-2001  lukem update to -current
 1.2.2.1 01-Oct-2001  fvdl Catch up with -current.
 1.3.4.4 18-Oct-2002  nathanw Catch up to -current.
 1.3.4.3 20-Jun-2002  nathanw Catch up to -current.
 1.3.4.2 08-Jan-2002  nathanw Catch up to -current.
 1.3.4.1 10-Sep-2001  nathanw file bus.c was added on branch nathanw_sa on 2002-01-08 00:28:27 +0000
 1.4.8.1 15-Jul-2002  gehenna catch up with -current.
 1.9.2.6 11-Dec-2005  christos Sync with head.
 1.9.2.5 01-Apr-2005  skrll Sync with HEAD.
 1.9.2.4 24-Jan-2005  skrll Sync with HEAD.
 1.9.2.3 21-Sep-2004  skrll Fix the sync with head I botched.
 1.9.2.2 18-Sep-2004  skrll Sync with HEAD.
 1.9.2.1 03-Aug-2004  skrll Sync with HEAD
 1.11.8.1 29-Apr-2005  kent sync with -current
 1.12.2.2 19-Mar-2005  yamt sync with head. xen and whitespace. xen part is not finished.
 1.12.2.1 11-Feb-2005  yamt use new apis.
desupport "skew" of _bus_dma_valloc_skewed for now,
as it doesn't seem to be used.
 1.14.8.1 29-Nov-2005  yamt sync with head.
 1.14.2.3 03-Sep-2007  yamt sync with head.
 1.14.2.2 30-Dec-2006  yamt sync with head.
 1.14.2.1 21-Jun-2006  yamt sync with head.
 1.15.22.1 06-Oct-2006  tsutsui Sync files of recent sun3 and sun68k merge and intersil7170(4) changes
with HEAD to build sun3 kernel on this branch.
 1.15.20.1 18-Nov-2006  ad Sync with head.
 1.18.4.1 12-Mar-2007  rmind Sync with HEAD.
 1.19.44.2 04-May-2009  yamt sync with head.
 1.19.44.1 16-May-2008  yamt sync with head.
 1.19.42.2 17-Jun-2008  yamt sync with head.
 1.19.42.1 18-May-2008  yamt sync with head.
 1.19.40.2 05-Jun-2008  mjf Sync with HEAD.

Also fix build.
 1.19.40.1 02-Jun-2008  mjf Sync with HEAD.
 1.20.2.1 23-Jun-2008  wrstuden Sync w/ -current. 34 merge conflicts to follow.
 1.21.60.1 10-Nov-2014  snj Pull up following revision(s) (requested by maxv in ticket #195):
sys/arch/arm/iomd/iomd_irqhandler.c: revision 1.21
sys/arch/arm/ofw/ofw_irqhandler.c: revision 1.21
sys/arch/atari/atari/intr.c: revision 1.24-1.25
sys/arch/ews4800mips/sbd/fb_sbdio.c: revision 1.14
sys/arch/hpcmips/tx/tx39icu.c: revision 1.34
sys/arch/shark/isa/isa_irqhandler.c: revision 1.27
sys/arch/sparc/sparc/machdep.c: revision 1.327
sys/arch/sparc64/dev/psycho.c: revision 1.119
sys/arch/sparc64/dev/schizo.c: revision 1.32
sys/arch/sparc64/sparc64/machdep.c: revision 1.279
sys/arch/sun68k/sun68k/bus.c: revision 1.22
sys/arch/x86/x86/ipmi.c: revision 1.58
sys/arch/xen/xen/privcmd.c: revision 1.46-1.49
Fix several memory leaks.
 1.21.42.1 03-Dec-2017  jdolecek update from HEAD
 1.22.2.1 09-Jul-2016  skrll Sync with HEAD
 1.23.30.1 14-Dec-2020  thorpej Sync w/ HEAD.
 1.5 28-Apr-2008  martin Remove clause 3 and 4 from TNF licenses
 1.4 11-Dec-2005  christos branches: 1.4.74; 1.4.76; 1.4.78;
merge ktrace-lwp.
 1.3 22-Jan-2005  chs de-__P, remove register, ansify, b* -> mem*, u_int*_t -> uint*_t.
 1.2 30-Nov-2001  fredette branches: 1.2.16; 1.2.24;
vm_offset_t -> vaddr_t
Removed register qualifiers.
 1.1 14-Jun-2001  fredette branches: 1.1.2; 1.1.8;
Added sources for the sun2 boot blocks and other
sun68k-ish code, all of which ought to eventually
be shared with the sun3.
 1.1.8.2 08-Jan-2002  nathanw Catch up to -current.
 1.1.8.1 14-Jun-2001  nathanw file control.h was added on branch nathanw_sa on 2002-01-08 00:28:28 +0000
 1.1.2.1 10-Jan-2002  thorpej Sync kqueue branch with -current.
 1.2.24.1 29-Apr-2005  kent sync with -current
 1.2.16.1 24-Jan-2005  skrll Sync with HEAD.
 1.4.78.1 16-May-2008  yamt sync with head.
 1.4.76.1 18-May-2008  yamt sync with head.
 1.4.74.1 02-Jun-2008  mjf Sync with HEAD.
 1.2 28-Apr-2008  martin Remove clause 3 and 4 from TNF licenses
 1.1 14-Jun-2001  fredette branches: 1.1.8; 1.1.126; 1.1.128; 1.1.130;
Added sources for the sun2 boot blocks and other
sun68k-ish code, all of which ought to eventually
be shared with the sun3.
 1.1.130.1 16-May-2008  yamt sync with head.
 1.1.128.1 18-May-2008  yamt sync with head.
 1.1.126.1 02-Jun-2008  mjf Sync with HEAD.
 1.1.8.2 14-Jun-2001  fredette Added sources for the sun2 boot blocks and other
sun68k-ish code, all of which ought to eventually
be shared with the sun3.
 1.1.8.1 14-Jun-2001  fredette file ctrlsp.S was added on branch nathanw_sa on 2001-06-14 12:57:18 +0000
 1.12 30-Sep-2006  tsutsui - move m68k common stuff from files.sun2 to files.sun68k
- use common dev/sun/disksubr.c
 1.11 11-Dec-2005  christos branches: 1.11.20; 1.11.22;
merge ktrace-lwp.
 1.10 03-Jun-2005  tsutsui branches: 1.10.2;
Add const.
 1.9 22-Jan-2005  chs de-__P, remove register, ansify, b* -> mem*, u_int*_t -> uint*_t.
 1.8 10-Dec-2003  agc branches: 1.8.8;
Modify the licences of code written by Theo De Raadt from a 4-clause
to a 2-clause licence (retaining UCB clauses (1) and (2)), per PR
22409 from Joel Baker, approved by Theo de Raadt, and ratified by
myself - the only discrepancy being the handling of the original
clause 3 in src/usr.sbin/yppoll/yppoll.c.
 1.7 07-Aug-2003  agc Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22364, verified by myself.
 1.6 15-Jul-2003  lukem __KERNEL_RCSID()
 1.5 10-May-2003  thorpej branches: 1.5.2;
Change bounds_check_with_label() to take a pointer to the disk structure,
rather than the label itself. This paves the way for some future changes.
 1.4 02-May-2003  dsl Change return type of readdisklabel() to const char *
I hope I've found all the correct places!
 1.3 19-Feb-2002  wiz strategy should have an 'r'. Inspired by similar change in OpenBSD.
 1.2 30-Nov-2001  fredette Make sure that an unlabeled device gets at least RAW_PART
in the default in-core disklabel, instead of only a single
partition, so that applying a new disklabel can work normally.
bcopy() -> memcpy(), bzero() -> memset()
 1.1 14-Jun-2001  fredette branches: 1.1.2; 1.1.4; 1.1.8;
Added some kernel sources that can be shared between
sun2 and sun3.
 1.1.8.3 28-Feb-2002  nathanw Catch up to -current.
 1.1.8.2 08-Jan-2002  nathanw Catch up to -current.
 1.1.8.1 14-Jun-2001  nathanw file disksubr.c was added on branch nathanw_sa on 2002-01-08 00:28:28 +0000
 1.1.4.1 10-Oct-2001  fvdl Convert all remaining devices.
 1.1.2.2 16-Mar-2002  jdolecek Catch up with -current.
 1.1.2.1 10-Jan-2002  thorpej Sync kqueue branch with -current.
 1.5.2.5 10-Nov-2005  skrll Sync with HEAD. Here we go again...
 1.5.2.4 24-Jan-2005  skrll Sync with HEAD.
 1.5.2.3 21-Sep-2004  skrll Fix the sync with head I botched.
 1.5.2.2 18-Sep-2004  skrll Sync with HEAD.
 1.5.2.1 03-Aug-2004  skrll Sync with HEAD
 1.8.8.1 29-Apr-2005  kent sync with -current
 1.10.2.1 30-Dec-2006  yamt sync with head.
 1.11.22.1 06-Oct-2006  tsutsui Sync files of recent sun3 and sun68k merge and intersil7170(4) changes
with HEAD to build sun3 kernel on this branch.
 1.11.20.1 18-Nov-2006  ad Sync with head.
 1.32 14-Jan-2024  thorpej Switch the sun68k platforms over to the common m68k interrupt dispatch code.
 1.31 14-Jan-2024  thorpej Don't bother with isr_add_custom(). It's just a thin wrapper around
vec_set_entry(), so just use vec_set_entry() directly.
 1.30 14-Jan-2024  thorpej Use NAUTOVECTORS and NUSERVECTORS constants from <m68k/vectors.h>
 1.29 13-Jan-2024  thorpej Switch the sun68k platforms over to the common m68k vector table.
 1.28 12-Jan-2024  thorpej Make getsr() an inline in <m68k/psl.h> and G/C all of the now-redudant
copies.
 1.27 02-Sep-2022  thorpej Remove unnecessary inclusion of <net/netisr.h>.
 1.26 21-Nov-2020  thorpej malloc(9) -> kmem(9)
 1.25 10-Nov-2019  chs branches: 1.25.8;
in many device attach paths, allocate memory with M_WAITOK instead of M_NOWAIT
and remove code to handle failures that can no longer happen.
 1.24 20-Dec-2010  matt branches: 1.24.60;
Move counting of faults, traps, intrs, soft[intr]s, syscalls, and nswtch
from uvmexp to per-cpu cpu_data and move them to 64bits. Remove unneeded
includes of <uvm/uvm_extern.h> and/or <uvm/uvm.h>.
 1.23 22-Jun-2008  tsutsui branches: 1.23.18;
Make cpu_intr_p() inline.
 1.22 15-Jun-2008  tsutsui Unify splraiseipl(9) implementation among m68k ports as per
suggestion from isaki@ on port-m68k.

For sun68k (sun2, sun3 and sun3x):
- export ipl2psl_table[] and make it uint16_t
- make makeiplcookie(9) inline
- put PSL_S bit into ipl2psl_table[] rather than adding it in makeiplcookie(9)
 1.21 28-Apr-2008  martin branches: 1.21.2; 1.21.4;
Remove clause 3 and 4 from TNF licenses
 1.20 05-Apr-2008  tsutsui branches: 1.20.2; 1.20.4;
Use generic atomic_cas_uint() for mutex(9) and rwlock(9), and
remodel old RAS based _lock_cas() implementation for m68010
into genereic atomic_cas_32().
Now sun2 kernel compiles and even works on multiuser. (hehe)

Tested on tme (emulationg 2/120 and 3/150) and (real) 3/80.
 1.19 11-Jan-2008  tsutsui branches: 1.19.6;
Always account idepth for cpu_intr_p(), which is now
mandatory for sys/kern/vfs_bio.c:biodone().

Comments from Andrew Doran, and fixes mutex errors on sun3.
 1.18 04-Dec-2007  tsutsui branches: 1.18.4;
Adapt sun68k ports to recent interrupt handling changes.

XXX: sun2 (m68010) doesn't have CAS instructions.
 1.17 17-Oct-2007  garbled branches: 1.17.2; 1.17.4;
Merge the ppcoea-renovation branch to HEAD.

This branch was a major cleanup and rototill of many of the various OEA
cpu based PPC ports that focused on sharing as much code as possible
between the various ports to eliminate near-identical copies of files in
every tree. Additionally there is a new PIC system that unifies the
interface to interrupt code for all different OEA ppc arches. The work
for this branch was done by a variety of people, too long to list here.

TODO:
bebox still needs work to complete the transition to -renovation.
ofppc still needs a bunch of work, which I will be looking at.
ev64260 still needs to be renovated
amigappc was not attempted.

NOTES:
pmppc was removed as an arch, and moved to a evbppc target.
 1.16 21-May-2007  tsutsui branches: 1.16.8; 1.16.10;
Wrap sanity checks with #ifdef DIAGNOSTIC.
 1.15 21-May-2007  tsutsui Make netintr() static since it's referred only in sun68k/isr.c.
 1.14 12-Mar-2007  thorpej branches: 1.14.2; 1.14.8;
- Define LOCK_CAS_CHECK() in m68k/frame.h (there because it operates on
a clockframe).
- Call LOCK_CAS_CHECK() in clock_intr() (noted by Izumi Tsutsui).
 1.13 11-Mar-2007  thorpej - Shrink ipl_cookie_t from 32-bits to 16-bits (large enough to hold
an SR value or an IPL_* constant).
- Take advange of the smaller ipl_cookie_t to shrink kmutex_t from
16 bytes to 8 bytes by overlapping storage where possible.
- Implement a RAS-based _lock_cas() for mc68010 systems (Sun2). See
sun68k/sun68k/isr.c.

Tested on various m68k platforms, but NOT Sun2. In any case, at least
Sun2 compiles now.
 1.12 18-Feb-2007  tsutsui branches: 1.12.4;
KNF a bit.
 1.11 21-Dec-2006  yamt branches: 1.11.2;
merge yamt-splraiseipl branch.

- finish implementing splraiseipl (and makeiplcookie).
http://mail-index.NetBSD.org/tech-kern/2006/07/01/0000.html
- complete workqueue(9) and fix its ipl problem, which is reported
to cause audio skipping.
- fix netbt (at least compilation problems) for some ports.
- fix PR/33218.
 1.10 10-Oct-2006  tsutsui Clear pending flags before calling handers otherwise possibly some softintr
could be lost.
 1.9 07-Aug-2006  tsutsui branches: 1.9.4; 1.9.6;
Workaround fix for a problem caused after IPL_* macro changes.
Based on a patch from mrg on port-sun2.
 1.8 29-Mar-2006  yamt implement splraiseipl() for sun2 and sun3. reviewed by Izumi Tsutsui.
 1.7 11-Dec-2005  christos branches: 1.7.4; 1.7.6; 1.7.8; 1.7.10; 1.7.12;
merge ktrace-lwp.
 1.6 22-Jan-2005  chs branches: 1.6.8;
de-__P, remove register, ansify, b* -> mem*, u_int*_t -> uint*_t.
 1.5 15-Jul-2003  lukem branches: 1.5.8;
__KERNEL_RCSID()
 1.4 06-Jan-2003  wiz branches: 1.4.2;
interrupt with two rs.
 1.3 27-Sep-2002  provos remove trailing \n in panic(). approved perry.
 1.2 30-Nov-2001  fredette vm_offset_t -> vaddr_t
Removed register qualifiers.
 1.1 27-Jun-2001  fredette branches: 1.1.2; 1.1.8;
Added common sun68k autoconfiguration and bus_space
related code. Currently used by sun2.
 1.1.8.4 07-Jan-2003  thorpej Sync with HEAD.
 1.1.8.3 18-Oct-2002  nathanw Catch up to -current.
 1.1.8.2 08-Jan-2002  nathanw Catch up to -current.
 1.1.8.1 27-Jun-2001  nathanw file isr.c was added on branch nathanw_sa on 2002-01-08 00:28:28 +0000
 1.1.2.2 10-Oct-2002  jdolecek sync kqueue with -current; this includes merge of gehenna-devsw branch,
merge of i386 MP branch, and part of autoconf rototil work
 1.1.2.1 10-Jan-2002  thorpej Sync kqueue branch with -current.
 1.4.2.4 24-Jan-2005  skrll Sync with HEAD.
 1.4.2.3 21-Sep-2004  skrll Fix the sync with head I botched.
 1.4.2.2 18-Sep-2004  skrll Sync with HEAD.
 1.4.2.1 03-Aug-2004  skrll Sync with HEAD
 1.5.8.1 29-Apr-2005  kent sync with -current
 1.6.8.6 21-Jan-2008  yamt sync with head
 1.6.8.5 07-Dec-2007  yamt sync with head
 1.6.8.4 03-Sep-2007  yamt sync with head.
 1.6.8.3 26-Feb-2007  yamt sync with head.
 1.6.8.2 30-Dec-2006  yamt sync with head.
 1.6.8.1 21-Jun-2006  yamt sync with head.
 1.7.12.1 31-Mar-2006  tron Merge 2006-03-31 NetBSD-current into the "peter-altq" branch.
 1.7.10.1 19-Apr-2006  elad sync with head - hopefully this will work
 1.7.8.2 11-Aug-2006  yamt sync with head
 1.7.8.1 01-Apr-2006  yamt sync with head.
 1.7.6.1 22-Apr-2006  simonb Sync with head.
 1.7.4.1 09-Sep-2006  rpaulo sync with head
 1.9.6.4 10-Oct-2006  tsutsui Sync with HEAD:
> Clear pending flags before calling handers otherwise possibly some softintr
> could be lost.
 1.9.6.3 06-Oct-2006  tsutsui Accept IPL_BIO in softintr_establish(9).
 1.9.6.2 19-Sep-2006  yamt implement new api for sun2.
 1.9.6.1 19-Sep-2006  yamt revert old version of splraiseipl().
 1.9.4.2 12-Jan-2007  ad Sync with head.
 1.9.4.1 18-Nov-2006  ad Sync with head.
 1.11.2.2 12-Mar-2007  rmind Sync with HEAD.
 1.11.2.1 27-Feb-2007  yamt - sync with head.
- move sched_changepri back to kern_synch.c as it doesn't know PPQ anymore.
 1.12.4.2 27-May-2007  ad Sync with head.
 1.12.4.1 13-Mar-2007  ad Sync with head.
 1.14.8.1 22-May-2007  matt Update to HEAD.
 1.14.2.1 11-Jul-2007  mjf Sync with head.
 1.16.10.3 23-Mar-2008  matt sync with HEAD
 1.16.10.2 09-Jan-2008  matt sync with HEAD
 1.16.10.1 06-Nov-2007  matt sync with HEAD
 1.16.8.1 09-Dec-2007  jmcneill Sync with HEAD.
 1.17.4.1 08-Dec-2007  ad Sync with head.
 1.17.2.2 18-Feb-2008  mjf Sync with HEAD.
 1.17.2.1 08-Dec-2007  mjf Sync with HEAD.
 1.18.4.1 11-Jan-2008  bouyer Sync with HEAD
 1.19.6.2 29-Jun-2008  mjf Sync with HEAD.
 1.19.6.1 02-Jun-2008  mjf Sync with HEAD.
 1.20.4.2 04-May-2009  yamt sync with head.
 1.20.4.1 16-May-2008  yamt sync with head.
 1.20.2.2 17-Jun-2008  yamt sync with head.
 1.20.2.1 18-May-2008  yamt sync with head.
 1.21.4.2 27-Jun-2008  simonb Sync with head.
 1.21.4.1 18-Jun-2008  simonb Sync with head.
 1.21.2.1 23-Jun-2008  wrstuden Sync w/ -current. 34 merge conflicts to follow.
 1.23.18.1 05-Mar-2011  rmind sync with head
 1.24.60.1 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.25.8.1 14-Dec-2020  thorpej Sync w/ HEAD.
 1.3 03-Nov-2002  chs merge all the m68k copies of kgdb_machdep.c.
 1.2 30-Nov-2001  fredette vm_offset_t -> vaddr_t
Removed register qualifiers.
 1.1 14-Jun-2001  fredette branches: 1.1.2; 1.1.8;
Added some kernel sources that can be shared between
sun2 and sun3.
 1.1.8.3 11-Nov-2002  nathanw Catch up to -current
 1.1.8.2 08-Jan-2002  nathanw Catch up to -current.
 1.1.8.1 14-Jun-2001  nathanw file kgdb_machdep.c was added on branch nathanw_sa on 2002-01-08 00:28:28 +0000
 1.1.2.1 10-Jan-2002  thorpej Sync kqueue branch with -current.
 1.2 15-Jul-2001  fredette Removed. It's easier to keep this file with MACHINE-specific
sources.
 1.1 27-Jun-2001  fredette branches: 1.1.2;
Added common sun68k autoconfiguration and bus_space
related code. Currently used by sun2.
 1.1.2.1 03-Aug-2001  lukem update to -current
 1.6 28-Apr-2008  martin Remove clause 3 and 4 from TNF licenses
 1.5 24-Jan-2007  hubertf branches: 1.5.44; 1.5.46; 1.5.48;
Remove duplicate #includes, patch contributed in private mail
by Slava Semushin <slava.semushin@gmail.com>.

To verify that no nasty side effects of duplicate includes (or their
removal) have an effect here, I've compiled an i386/ALL kernel with
and without the patch, and the only difference in the resulting .o
files was in shifted line numbers in some assert() calls.
The comparison of the .o files was based on the output of "objdump -D".

Thanks to martin@ for the input on testing.
 1.4 11-Dec-2005  christos branches: 1.4.20;
merge ktrace-lwp.
 1.3 22-Jan-2005  chs branches: 1.3.8;
de-__P, remove register, ansify, b* -> mem*, u_int*_t -> uint*_t.
 1.2 15-Jul-2003  lukem branches: 1.2.8;
__KERNEL_RCSID()
 1.1 14-Jun-2001  fredette branches: 1.1.8; 1.1.24;
Added some kernel sources that can be shared between
sun2 and sun3.
 1.1.24.4 24-Jan-2005  skrll Sync with HEAD.
 1.1.24.3 21-Sep-2004  skrll Fix the sync with head I botched.
 1.1.24.2 18-Sep-2004  skrll Sync with HEAD.
 1.1.24.1 03-Aug-2004  skrll Sync with HEAD
 1.1.8.2 14-Jun-2001  fredette Added some kernel sources that can be shared between
sun2 and sun3.
 1.1.8.1 14-Jun-2001  fredette file stub.c was added on branch nathanw_sa on 2001-06-14 13:08:12 +0000
 1.2.8.1 29-Apr-2005  kent sync with -current
 1.3.8.1 26-Feb-2007  yamt sync with head.
 1.4.20.1 01-Feb-2007  ad Sync with head.
 1.5.48.1 16-May-2008  yamt sync with head.
 1.5.46.1 18-May-2008  yamt sync with head.
 1.5.44.1 02-Jun-2008  mjf Sync with HEAD.
 1.8 13-Jan-2024  thorpej Switch the sun68k platforms over to the common m68k vector table.
 1.7 28-Apr-2008  martin Remove clause 3 and 4 from TNF licenses
 1.6 30-Sep-2006  tsutsui branches: 1.6.52; 1.6.54; 1.6.56;
Update a comment and some cosmetics.
 1.5 11-Dec-2005  christos branches: 1.5.20; 1.5.22;
merge ktrace-lwp.
 1.4 22-Sep-2003  cl branches: 1.4.16;
SA_SIGINFO support for m68k (port specific changes)
 1.3 15-Jul-2003  lukem __KERNEL_RCSID()
 1.2 26-Nov-2001  fredette branches: 1.2.16;
trap1 also needs to be handled under COMPAT_SUNOS.
 1.1 14-Jun-2001  fredette branches: 1.1.2; 1.1.8;
Added some kernel sources that can be shared between
sun2 and sun3.
 1.1.8.2 08-Jan-2002  nathanw Catch up to -current.
 1.1.8.1 14-Jun-2001  nathanw file vector.c was added on branch nathanw_sa on 2002-01-08 00:28:28 +0000
 1.1.2.1 10-Jan-2002  thorpej Sync kqueue branch with -current.
 1.2.16.3 21-Sep-2004  skrll Fix the sync with head I botched.
 1.2.16.2 18-Sep-2004  skrll Sync with HEAD.
 1.2.16.1 03-Aug-2004  skrll Sync with HEAD
 1.4.16.1 30-Dec-2006  yamt sync with head.
 1.5.22.1 06-Oct-2006  tsutsui Sync files of recent sun3 and sun68k merge and intersil7170(4) changes
with HEAD to build sun3 kernel on this branch.
 1.5.20.1 18-Nov-2006  ad Sync with head.
 1.6.56.1 16-May-2008  yamt sync with head.
 1.6.54.1 18-May-2008  yamt sync with head.
 1.6.52.1 02-Jun-2008  mjf Sync with HEAD.
 1.5 13-Jan-2024  thorpej Switch the sun68k platforms over to the common m68k vector table.
 1.4 28-Apr-2008  martin Remove clause 3 and 4 from TNF licenses
 1.3 11-Dec-2005  christos branches: 1.3.74; 1.3.76; 1.3.78;
merge ktrace-lwp.
 1.2 22-Jan-2005  chs de-__P, remove register, ansify, b* -> mem*, u_int*_t -> uint*_t.
 1.1 14-Jun-2001  fredette branches: 1.1.8; 1.1.24; 1.1.32;
Added some kernel sources that can be shared between
sun2 and sun3.
 1.1.32.1 29-Apr-2005  kent sync with -current
 1.1.24.1 24-Jan-2005  skrll Sync with HEAD.
 1.1.8.2 14-Jun-2001  fredette Added some kernel sources that can be shared between
sun2 and sun3.
 1.1.8.1 14-Jun-2001  fredette file vector.h was added on branch nathanw_sa on 2001-06-14 13:08:12 +0000
 1.3.78.1 16-May-2008  yamt sync with head.
 1.3.76.1 18-May-2008  yamt sync with head.
 1.3.74.1 02-Jun-2008  mjf Sync with HEAD.
 1.19 07-Aug-2021  thorpej Merge thorpej-cfargs2.
 1.18 24-Apr-2021  thorpej branches: 1.18.8;
Merge thorpej-cfargs branch:

Simplify and make extensible the config_search() / config_found() /
config_attach() interfaces: rather than having different variants for
which arguments you want pass along, just have a single call that
takes a variadic list of tag-value arguments.

Adjust all call sites:
- Simplify wherever possible; don't pass along arguments that aren't
actually needed.
- Don't be explicit about what interface attribute is attaching if
the device only has one. (More simplification.)
- Add a config_probe() function to be used in indirect configuiration
situations, making is visibly easier to see when indirect config is
in play, and allowing for future change in semantics. (As of now,
this is just a wrapper around config_match(), but that is an
implementation detail.)

Remove unnecessary or redundant interface attributes where they're not
needed.

There are currently 5 "cfargs" defined:
- CFARG_SUBMATCH (submatch function for direct config)
- CFARG_SEARCH (search function for indirect config)
- CFARG_IATTR (interface attribte)
- CFARG_LOCATORS (locators array)
- CFARG_DEVHANDLE (devhandle_t - wraps OFW, ACPI, etc. handles)

...and a sentinel value CFARG_EOL.

Add some extra sanity checking to ensure that interface attributes
aren't ambiguous.

Use CFARG_DEVHANDLE in MI FDT, OFW, and ACPI code, and macppc and shark
ports to associate those device handles with device_t instance. This
will trickle trough to more places over time (need back-end for pre-OFW
Sun OBP; any others?).
 1.17 21-Nov-2020  thorpej branches: 1.17.2;
malloc(9) -> kmem(9)
 1.16 10-Nov-2019  chs branches: 1.16.8;
in many device attach paths, allocate memory with M_WAITOK instead of M_NOWAIT
and remove code to handle failures that can no longer happen.
 1.15 27-Nov-2009  rmind branches: 1.15.64;
- Use uvm_lwp_setuarea() instead of directly setting address to lwp_t::l_addr.
- Replace most remaining uses of l_addr with uvm_lwp_getuarea() or lwp_getpcb().
- Amend assembly in ports where it accesses PCB via struct user.
- Rename L_ADDR to L_PCB in few places. Reduce sys/user.h inclusions.
 1.14 01-Jul-2008  tsutsui Split device_t/softc with misc cosmetic changes.
 1.13 28-Apr-2008  martin branches: 1.13.2; 1.13.4;
Remove clause 3 and 4 from TNF licenses
 1.12 04-Mar-2007  christos branches: 1.12.40; 1.12.42; 1.12.44;
Kill caddr_t; there will be some MI fallout, but it will be fixed shortly.
 1.11 11-Dec-2005  christos branches: 1.11.26;
merge ktrace-lwp.
 1.10 22-Jan-2005  chs branches: 1.10.8;
de-__P, remove register, ansify, b* -> mem*, u_int*_t -> uint*_t.
 1.9 13-Dec-2004  chs branches: 1.9.2;
for drivers that support only one instance, use a global variable to ensure
that only one instance is configured rather than requiring that its
unit number be zero.
 1.8 28-Oct-2003  mrg NULL -> 0 bogon.
 1.7 15-Jul-2003  lukem __KERNEL_RCSID()
 1.6 02-Oct-2002  thorpej branches: 1.6.6;
Add trailing ; to CFATTACH_DECL.
 1.5 01-Oct-2002  thorpej Use CFATTACH_DECL().
 1.4 27-Sep-2002  thorpej Declare all cfattach structures const.
 1.3 27-Sep-2002  thorpej Rather than referencing the cfdriver directly in the cfdata entries,
instead use a string naming the driver. The cfdriver is then looked
up in a list which is built at run-time.
 1.2 30-Nov-2001  fredette vm_offset_t -> paddr_t
Implement bus_space_mmap.
 1.1 27-Jun-2001  fredette branches: 1.1.2; 1.1.8;
Added common sun68k autoconfiguration and bus_space
related code. Currently used by sun2.
 1.1.8.3 18-Oct-2002  nathanw Catch up to -current.
 1.1.8.2 08-Jan-2002  nathanw Catch up to -current.
 1.1.8.1 27-Jun-2001  nathanw file vme_sun68k.c was added on branch nathanw_sa on 2002-01-08 00:28:29 +0000
 1.1.2.2 10-Oct-2002  jdolecek sync kqueue with -current; this includes merge of gehenna-devsw branch,
merge of i386 MP branch, and part of autoconf rototil work
 1.1.2.1 10-Jan-2002  thorpej Sync kqueue branch with -current.
 1.6.6.5 24-Jan-2005  skrll Sync with HEAD.
 1.6.6.4 18-Dec-2004  skrll Sync with HEAD.
 1.6.6.3 21-Sep-2004  skrll Fix the sync with head I botched.
 1.6.6.2 18-Sep-2004  skrll Sync with HEAD.
 1.6.6.1 03-Aug-2004  skrll Sync with HEAD
 1.9.2.1 29-Apr-2005  kent sync with -current
 1.10.8.1 03-Sep-2007  yamt sync with head.
 1.11.26.1 12-Mar-2007  rmind Sync with HEAD.
 1.12.44.3 11-Mar-2010  yamt sync with head
 1.12.44.2 04-May-2009  yamt sync with head.
 1.12.44.1 16-May-2008  yamt sync with head.
 1.12.42.1 18-May-2008  yamt sync with head.
 1.12.40.2 02-Jul-2008  mjf Sync with HEAD.
 1.12.40.1 02-Jun-2008  mjf Sync with HEAD.
 1.13.4.1 03-Jul-2008  simonb Sync with head.
 1.13.2.1 18-Sep-2008  wrstuden Sync with wrstuden-revivesa-base-2.
 1.15.64.1 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.16.8.1 14-Dec-2020  thorpej Sync w/ HEAD.
 1.17.2.1 21-Mar-2021  thorpej Give config_found() the same variadic arguments treatment as
config_search(). This commit only adds the CFARG_EOL sentinel
to the existing config_found() calls. Conversion of config_found_sm_loc()
and config_found_ia() call sites will be in subsequent commits.
 1.18.8.1 04-Aug-2021  thorpej Adapt to CFARGS().
 1.4 28-Apr-2008  martin Remove clause 3 and 4 from TNF licenses
 1.3 11-Dec-2005  christos branches: 1.3.74; 1.3.76; 1.3.78;
merge ktrace-lwp.
 1.2 22-Jan-2005  chs de-__P, remove register, ansify, b* -> mem*, u_int*_t -> uint*_t.
 1.1 27-Jun-2001  fredette branches: 1.1.8; 1.1.24; 1.1.32;
Added common sun68k autoconfiguration and bus_space
related code. Currently used by sun2.
 1.1.32.1 29-Apr-2005  kent sync with -current
 1.1.24.1 24-Jan-2005  skrll Sync with HEAD.
 1.1.8.2 27-Jun-2001  fredette Added common sun68k autoconfiguration and bus_space
related code. Currently used by sun2.
 1.1.8.1 27-Jun-2001  fredette file vme_sun68k.h was added on branch nathanw_sa on 2001-06-27 02:48:33 +0000
 1.3.78.1 16-May-2008  yamt sync with head.
 1.3.76.1 18-May-2008  yamt sync with head.
 1.3.74.1 02-Jun-2008  mjf Sync with HEAD.

RSS XML Feed