Home | History | Annotate | only in /src/sys/arch/prep/include
History log of /src/sys/arch/prep/include
RevisionDateAuthorComments
 1.22 21-Dec-2015  christos Add mips fenv.h (From FreeBSD)
 1.21 23-Jul-2014  alnsn branches: 1.21.4;
Rename sljitarch.h to sljit_machdep.h.
 1.20 17-Nov-2013  alnsn branches: 1.20.2;
Enable sljit and bpfjit on powerpc.
 1.19 26-Feb-2007  garbled branches: 1.19.80; 1.19.90; 1.19.96;
Finish the code in the prep nvram driver that makes it an actual device
(/dev/nvram) and implement all the associated ioctls fully. Tested with
a hacked up copy of eeprom(8). Right now it can only be used to see the
nvram GEV contents, not actually edit them. Will do that later some day.
 1.18 11-Dec-2005  christos branches: 1.18.24; 1.18.26;
merge ktrace-lwp.
 1.17 24-Oct-2003  matt branches: 1.17.16;
Add back spkr.h
 1.16 20-Oct-2003  matt Reorganize the way powerpc port install machine specific headers.
Use <powerpc/oea/bat.h> exclusively and remove <machine/bat.h> and
<powerpc/bat.h>. Remove unneeded <machine/cpufunc.h>. To insure
1:1 correspondence of <powerpc/FOO.h> to <machine/FOO.h> include
"../../powerpc/include/Makefile" in "arch/FOO/include/Makefile".
Incororpate <byte_swap.h> into <bswap.h> and then byte_swap.h
 1.15 15-May-2003  wiz branches: 1.15.2;
Don't install machine/mouse.h on i386 and prep; there are no users for
the old busmouse interface any longer, we use wsmouse now.
 1.14 18-Jan-2003  thorpej Merge the nathanw_sa branch.
 1.13 26-Nov-2002  lukem Remove KDIR=, since SYS_INCLUDE=symlinks and KDIR are not supported any more.
 1.12 06-Sep-2002  gehenna Merge the gehenna-devsw branch into the trunk.

This merge changes the device switch tables from static array to
dynamically generated by config(8).

- All device switches is defined as a constant structure in device drivers.

- The new grammer ``device-major'' is introduced to ``files''.

device-major <prefix> char <num> [block <num>] [<rules>]

- All device major numbers must be listed up in port dependent majors.<arch>
by using this grammer.

- Added the new naming convention.
The name of the device switch must be <prefix>_[bc]devsw for auto-generation
of device switch tables.

- The backward compatibility of loading block/character device
switch by LKM framework is broken. This is necessary to convert
from block/character device major to device name in runtime and vice versa.

- The restriction to assign device major by LKM is completely removed.
We don't need to reserve LKM entries for dynamic loading of device switch.

- In compile time, device major numbers list is packed into the kernel and
the LKM framework will refer it to assign device major number dynamically.
 1.11 07-Aug-2002  briggs Implement pmc(9) -- An interface to hardware performance monitoring
counters. These counters do not exist on all CPUs, but where they
do exist, can be used for counting events such as dcache misses that
would otherwise be difficult or impossible to instrument by code
inspection or hardware simulation.

pmc(9) is meant to be a general interface. Initially, the Intel XScale
counters are the only ones supported.
 1.10 21-Nov-2001  soren branches: 1.10.8;
prep has no special dependencies on pccons; remove.
 1.9 03-May-2001  soren branches: 1.9.2; 1.9.8;
PPC machine type tags haven't been used for a while.
 1.8 15-Apr-2001  kleink Add definitions of C99 integer format conversion macros.
XXX Fastest minimum-width integer types haven't been decided upon yet.
 1.7 15-Apr-2001  kleink Add definitions of C99 specified-width integer type limits.
XXX Fastest minimum-width integer types haven't been decided upon yet.
 1.6 14-Apr-2001  kleink Add definitions of C99 integer constant macros.
Tidy Makefiles up a little.
 1.5 14-Apr-2001  kleink Add definitions of C99 minimum-width and greatest-width integer types.
XXX Fastest minimum-width integer types haven't been decided upon yet.
 1.4 26-Jun-2000  kleink branches: 1.4.2; 1.4.4;
Add <machine/int_types.h>, which provides namespace-pure definitions
of exact-width integer types.
 1.3 29-Apr-2000  thorpej Require that each each MACHINE/MACHINE_ARCH supply a lock.h. This file
contains the values __SIMPLELOCK_LOCKED and __SIMPLELOCK_UNLOCKED, which
replace the old SIMPLELOCK_LOCKED and SIMPLELOCK_UNLOCKED. These files
are also required to supply inline functions __cpu_simple_lock(),
__cpu_simple_lock_try(), and __cpu_simple_unlock() if locking is to be
supported on that platform (i.e. if MULTIPROCESSOR is defined in the
_KERNEL case). Change these functions to take an int * (&alp->lock_data)
rather than the struct simplelock * itself.

These changes make it possible for userland to use the locking primitives
by including <machine/lock.h>.
 1.2 17-Mar-2000  tron Install "machineendian_machdep.h".
 1.1 29-Feb-2000  nonaka Initial import prep port.
 1.4.4.1 21-Jun-2001  nathanw Catch up to -current.
 1.4.2.3 21-Apr-2001  bouyer Sync with HEAD
 1.4.2.2 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.4.2.1 26-Jun-2000  bouyer file Makefile was added on branch thorpej_scsipi on 2000-11-20 20:22:56 +0000
 1.9.8.6 11-Dec-2002  thorpej Sync with HEAD.
 1.9.8.5 17-Sep-2002  nathanw Catch up to -current.
 1.9.8.4 13-Aug-2002  nathanw Catch up to -current.
 1.9.8.3 08-Jan-2002  nathanw Catch up to -current.
 1.9.8.2 05-Nov-2001  briggs Initial SA support for ppc. Test-booted on sandpoint, macppc, & walnut.
mcontext and cpu_getmcontext()/cpu_setmcontext() from Klaus Klein
<kleink@netbsd.org>.
 1.9.8.1 03-May-2001  briggs file Makefile was added on branch nathanw_sa on 2001-11-05 19:46:19 +0000
 1.9.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.9.2.2 06-Sep-2002  jdolecek sync kqueue branch with HEAD
 1.9.2.1 10-Jan-2002  thorpej Sync kqueue branch with -current.
 1.10.8.2 31-Aug-2002  gehenna catch up with -current.
 1.10.8.1 19-May-2002  gehenna Remove port-dependent conf.h.
 1.15.2.3 21-Sep-2004  skrll Fix the sync with head I botched.
 1.15.2.2 18-Sep-2004  skrll Sync with HEAD.
 1.15.2.1 03-Aug-2004  skrll Sync with HEAD
 1.17.16.1 03-Sep-2007  yamt sync with head.
 1.18.26.1 27-Feb-2007  yamt - sync with head.
- move sched_changepri back to kern_synch.c as it doesn't know PPQ anymore.
 1.18.24.1 04-Mar-2007  bouyer Pull up following revision(s) (requested by garbled in ticket #482):
share/man/man4/man4.prep/intro.4: revision 1.1
usr.sbin/eeprom/eeprom.8: revision 1.12
usr.sbin/eeprom/prephandlers.c: revision 1.1
distrib/sets/lists/base/md.prep: revision 1.13
distrib/sets/lists/comp/md.prep: revision 1.22
sys/arch/prep/conf/majors.prep: revision 1.19
share/man/man4/man4.prep/Makefile: revision 1.1
share/man/man4/Makefile: revision 1.421
usr.sbin/eeprom/defs.h: revision 1.10
share/man/man4/man4.prep/nvram.4: revision 1.1
sys/arch/prep/pnpbus/nvram_pnpbus.c: revision 1.6
usr.sbin/eeprom/Makefile: revision 1.14
etc/mtree/NetBSD.dist: revision 1.333
usr.sbin/eeprom/main.c: revision 1.17
etc/etc.prep/MAKEDEV.conf: revision 1.5
distrib/sets/lists/man/mi: revision 1.978
usr.sbin/eeprom/pathnames.h: revision 1.3
sys/arch/prep/include/Makefile: revision 1.19
sys/arch/prep/include/nvram.h: revision 1.3
Finish the code in the prep nvram driver that makes it an actual device
(/dev/nvram) and implement all the associated ioctls fully. Tested with
a hacked up copy of eeprom(8). Right now it can only be used to see the
nvram GEV contents, not actually edit them. Will do that later some day.
 1.19.96.1 18-May-2014  rmind sync with head
 1.19.90.2 03-Dec-2017  jdolecek update from HEAD
 1.19.90.1 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.19.80.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.20.2.1 10-Aug-2014  tls Rebase.
 1.21.4.1 27-Dec-2015  skrll Sync with HEAD (as of 26th Dec)
 1.1 29-Feb-2000  nonaka branches: 1.1.6;
Initial import prep port.
 1.1.6.2 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.1.6.1 29-Feb-2000  bouyer file ansi.h was added on branch thorpej_scsipi on 2000-11-20 20:22:56 +0000
 1.1 29-Feb-2000  nonaka branches: 1.1.6;
Initial import prep port.
 1.1.6.2 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.1.6.1 29-Feb-2000  bouyer file aout_machdep.h was added on branch thorpej_scsipi on 2000-11-20 20:22:56 +0000
 1.1 29-Feb-2000  nonaka branches: 1.1.6;
Initial import prep port.
 1.1.6.2 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.1.6.1 29-Feb-2000  bouyer file asm.h was added on branch thorpej_scsipi on 2000-11-20 20:22:56 +0000
 1.3 05-Jun-2011  matt Remove <machine/atomic.h>; use <sys/atomic.h> instead.
Add <powerpc/cpuset.h> (for mpc85xx pmap).
Add some initial MP code for mpc85xx
Rework ipi code to be common across all ppcs
Change PPC to keep curlwp in %r13 while in the kernel.
Move astpending from cpu_info to mdlwp
Improve cpu_need_resched to be more MP friendly.
 1.2 11-Dec-2005  christos branches: 1.2.100; 1.2.106; 1.2.110;
merge ktrace-lwp.
 1.1 20-Oct-2003  matt branches: 1.1.4;
Reorganize the way powerpc port install machine specific headers.
Use <powerpc/oea/bat.h> exclusively and remove <machine/bat.h> and
<powerpc/bat.h>. Remove unneeded <machine/cpufunc.h>. To insure
1:1 correspondence of <powerpc/FOO.h> to <machine/FOO.h> include
"../../powerpc/include/Makefile" in "arch/FOO/include/Makefile".
Incororpate <byte_swap.h> into <bswap.h> and then byte_swap.h
 1.1.4.4 21-Sep-2004  skrll Fix the sync with head I botched.
 1.1.4.3 18-Sep-2004  skrll Sync with HEAD.
 1.1.4.2 03-Aug-2004  skrll Sync with HEAD
 1.1.4.1 20-Oct-2003  skrll file atomic.h was added on branch ktrace-lwp on 2004-08-03 10:39:48 +0000
 1.2.110.1 23-Jun-2011  cherry Catchup with rmind-uvmplock merge.
 1.2.106.1 06-Jun-2011  jruoho Sync with HEAD.
 1.2.100.1 12-Jun-2011  rmind sync with head
 1.9 30-Jun-2011  matt Modify mapiodev to take a third argument indicating whether the space
should be prefetchable (true) or not (false).
 1.8 17-Oct-2007  garbled 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.7 04-Mar-2007  christos branches: 1.7.2; 1.7.10; 1.7.18; 1.7.20; 1.7.22; 1.7.24;
Kill caddr_t; there will be some MI fallout, but it will be fixed shortly.
 1.6 09-May-2006  garbled branches: 1.6.14;
de-__P these files.
 1.5 03-May-2006  garbled Generic soft interrupt support for prep. Mostly copied from macppc,
tested on 7248 and 7043.
 1.4 11-Dec-2005  christos branches: 1.4.4; 1.4.6; 1.4.8; 1.4.10; 1.4.12;
merge ktrace-lwp.
 1.3 05-Jun-2005  he branches: 1.3.2;
Adapt to compiling with -Wcast-qual and -Wshadow.
 1.2 05-Jul-2002  matt branches: 1.2.6;
Peform a rototill over the powerpc-based ports.

Move the trap/vector initialization for MPC6xx ports to mpc6xx_machdep.c
Also move softnet, install_extintr, mapiodev, kvtop. Add common BAT
initialization code.

Add user Altivec support.

Fix calls to OF_call_method in macppc/macppc/machdep.c.

Use ci_fpuproc in cpu_info instead of separate fpuproc.

Add separate syscall.c and defined __HAVE_SYSCALL_INTERN.
 1.1 29-Feb-2000  nonaka branches: 1.1.6; 1.1.10; 1.1.14; 1.1.22;
Initial import prep port.
 1.1.22.1 16-Jul-2002  gehenna catch up with -current.
 1.1.14.1 01-Aug-2002  nathanw Catch up to -current.
 1.1.10.1 06-Sep-2002  jdolecek sync kqueue branch with HEAD
 1.1.6.2 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.1.6.1 29-Feb-2000  bouyer file autoconf.h was added on branch thorpej_scsipi on 2000-11-20 20:22:56 +0000
 1.2.6.1 10-Nov-2005  skrll Sync with HEAD. Here we go again...
 1.3.2.3 27-Oct-2007  yamt sync with head.
 1.3.2.2 03-Sep-2007  yamt sync with head.
 1.3.2.1 21-Jun-2006  yamt sync with head.
 1.4.12.1 24-May-2006  tron Merge 2006-05-24 NetBSD-current into the "peter-altq" branch.
 1.4.10.1 11-May-2006  elad sync with head
 1.4.8.1 24-May-2006  yamt sync with head.
 1.4.6.1 01-Jun-2006  kardel Sync with head.
 1.4.4.1 09-Sep-2006  rpaulo sync with head
 1.6.14.1 12-Mar-2007  rmind Sync with HEAD.
 1.7.24.1 25-Oct-2007  bouyer Sync with HEAD.
 1.7.22.1 18-Oct-2007  yamt sync with head.
 1.7.20.1 06-Nov-2007  matt sync with HEAD
 1.7.18.1 26-Oct-2007  joerg Sync with HEAD.

Follow the merge of pmap.c on i386 and amd64 and move
pmap_init_tmp_pgtbl into arch/x86/x86/pmap.c. Modify the ACPI wakeup
code to restore CR4 before jumping back into kernel space as the large
page option might cover that.
 1.7.10.1 09-May-2007  garbled More prep rototill. Utilize the functions provided in
powerpc/oea/prep_machdep.c. While here, clean up some unused functions
and prototypes.
 1.7.2.1 23-Oct-2007  ad Sync with head.
 1.2 20-Oct-2003  matt Reorganize the way powerpc port install machine specific headers.
Use <powerpc/oea/bat.h> exclusively and remove <machine/bat.h> and
<powerpc/bat.h>. Remove unneeded <machine/cpufunc.h>. To insure
1:1 correspondence of <powerpc/FOO.h> to <machine/FOO.h> include
"../../powerpc/include/Makefile" in "arch/FOO/include/Makefile".
Incororpate <byte_swap.h> into <bswap.h> and then byte_swap.h
 1.1 29-Feb-2000  nonaka branches: 1.1.6; 1.1.30;
Initial import prep port.
 1.1.30.1 03-Aug-2004  skrll Sync with HEAD
 1.1.6.2 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.1.6.1 29-Feb-2000  bouyer file bat.h was added on branch thorpej_scsipi on 2000-11-20 20:22:57 +0000
 1.6 09-May-2006  garbled de-__P these files.
 1.5 11-Dec-2005  christos branches: 1.5.4; 1.5.6; 1.5.8; 1.5.10; 1.5.12;
merge ktrace-lwp.
 1.4 24-Mar-2004  drochner branches: 1.4.16;
remove license clauses 3 and 4 from my cpoyright notices
 1.3 19-Jun-2001  nonaka branches: 1.3.8; 1.3.24;
Back out last changes.
 1.2 17-Jun-2001  nonaka identified prep model.
 1.1 29-Feb-2000  nonaka branches: 1.1.6; 1.1.8;
Initial import prep port.
 1.1.8.1 21-Jun-2001  nathanw Catch up to -current.
 1.1.6.2 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.1.6.1 29-Feb-2000  bouyer file bootinfo.h was added on branch thorpej_scsipi on 2000-11-20 20:22:57 +0000
 1.3.24.3 21-Sep-2004  skrll Fix the sync with head I botched.
 1.3.24.2 18-Sep-2004  skrll Sync with HEAD.
 1.3.24.1 03-Aug-2004  skrll Sync with HEAD
 1.3.8.2 19-Jun-2001  nonaka Back out last changes.
 1.3.8.1 19-Jun-2001  nonaka file bootinfo.h was added on branch nathanw_sa on 2001-06-19 11:56:28 +0000
 1.4.16.1 21-Jun-2006  yamt sync with head.
 1.5.12.1 24-May-2006  tron Merge 2006-05-24 NetBSD-current into the "peter-altq" branch.
 1.5.10.1 11-May-2006  elad sync with head
 1.5.8.1 24-May-2006  yamt sync with head.
 1.5.6.1 01-Jun-2006  kardel Sync with head.
 1.5.4.1 09-Sep-2006  rpaulo sync with head
 1.1 29-Feb-2000  nonaka branches: 1.1.6;
Initial import prep port.
 1.1.6.2 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.1.6.1 29-Feb-2000  bouyer file bswap.h was added on branch thorpej_scsipi on 2000-11-20 20:22:57 +0000
 1.14 28-Apr-2008  martin Remove clause 3 and 4 from TNF licenses
 1.13 17-Oct-2007  garbled branches: 1.13.16; 1.13.18; 1.13.20;
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.12 23-Feb-2006  garbled branches: 1.12.24; 1.12.32; 1.12.42; 1.12.44; 1.12.46; 1.12.48;
Commit support for the IBM Model 7024 E20 and E30. (E30 not tested).

Changes:
Added a pci-EISA bridge device and associated glue to the prep port.
Adapted from i386.
Change pci_intr_fixup_*() to pass the pin argument on all platforms.
Make PCI_NETBSD_CONFIGURE leave the MPIC alone. We map it separately.

7024 kernel was also succ. tested on an IBM 7043, so no regression there.
 1.11 11-Dec-2005  christos branches: 1.11.2; 1.11.4; 1.11.6;
merge ktrace-lwp.
 1.10 28-Jul-2003  scw branches: 1.10.16;
Make these build with recent tweaks to powerpc's bus_space(9) by moving
the inclusion of <powerpc/bus.h> to *after* the definitions of
PHYS_TO_BUS_MEM() and BUS_MEM_TO_PHYS().
 1.9 18-Mar-2003  matt branches: 1.9.2;
Switch/adapt to new bus space infrastructure.
 1.8 06-Mar-2003  matt Adapt to powerpc/bus.h changes.
 1.7 26-Aug-2001  matt branches: 1.7.6;
Make all powerpc ports use a common Makefile.powerpc (except walnut)
Enforce -Wmissing-prototypes -Wstrict-prototypes for all ppc ports.
Split out macppc cpu support and make common to mpc6xx ports. Make
other mpc6xx ports use it. Add evcnts for mpc6xx traps.
 1.6 15-Jun-2001  nonaka branches: 1.6.2;
Use new common bus.h framework.
 1.5 07-Mar-2001  thorpej Add the BUS_DMA_STREAMING flag.
 1.4 27-Nov-2000  matt branches: 1.4.2;
Rework bus_space to conform the PReP I/O & MEM limits. Add a few debugging
printfs concerning interrupts.
 1.3 26-Jun-2000  simonb branches: 1.3.2;
Change the kernel mmap interface so that the offset to map is an
"off_t" and the return value is a "paddr_t" to allow mappings
at offsets past 2^31 bytes. Somewhat inspired by FreeBSD, which
only changed the offset to a "vm_offset_t".

Includes updates for the i386, pc532 and sh3 mmmmap from Jason Thorpe.
 1.2 27-Mar-2000  nonaka branches: 1.2.4;
rewrite some bus_space functions like port-i386.
 1.1 29-Feb-2000  nonaka Initial import prep port.
 1.2.4.1 30-Jun-2000  simonb Pull up mmap paddr_t/off_t changes from trunk.
 1.3.2.4 12-Mar-2001  bouyer Sync with HEAD.
 1.3.2.3 08-Dec-2000  bouyer Sync with HEAD.
 1.3.2.2 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.3.2.1 26-Jun-2000  bouyer file bus.h was added on branch thorpej_scsipi on 2000-11-20 20:22:57 +0000
 1.4.2.2 21-Jun-2001  nathanw Catch up to -current.
 1.4.2.1 09-Apr-2001  nathanw Catch up with -current.
 1.6.2.1 13-Sep-2001  thorpej Update the kqueue branch to HEAD.
 1.7.6.2 26-Aug-2001  matt Make all powerpc ports use a common Makefile.powerpc (except walnut)
Enforce -Wmissing-prototypes -Wstrict-prototypes for all ppc ports.
Split out macppc cpu support and make common to mpc6xx ports. Make
other mpc6xx ports use it. Add evcnts for mpc6xx traps.
 1.7.6.1 26-Aug-2001  matt file bus.h was added on branch nathanw_sa on 2001-08-26 02:47:35 +0000
 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.10.16.2 27-Oct-2007  yamt sync with head.
 1.10.16.1 21-Jun-2006  yamt sync with head.
 1.11.6.1 22-Apr-2006  simonb Sync with head.
 1.11.4.1 09-Sep-2006  rpaulo sync with head
 1.11.2.1 01-Mar-2006  yamt sync with head.
 1.12.48.1 25-Oct-2007  bouyer Sync with HEAD.
 1.12.46.1 18-Oct-2007  yamt sync with head.
 1.12.44.1 06-Nov-2007  matt sync with HEAD
 1.12.42.1 26-Oct-2007  joerg Sync with HEAD.

Follow the merge of pmap.c on i386 and amd64 and move
pmap_init_tmp_pgtbl into arch/x86/x86/pmap.c. Modify the ACPI wakeup
code to restore CR4 before jumping back into kernel space as the large
page option might cover that.
 1.12.32.2 09-May-2007  garbled More prep rototill. Utilize the functions provided in
powerpc/oea/prep_machdep.c. While here, clean up some unused functions
and prototypes.
 1.12.32.1 01-May-2007  garbled Rename the prep isa io and mem bus space tags to genppc_* to promote
sharing of isa functionality.
 1.12.24.1 23-Oct-2007  ad Sync with head.
 1.13.20.1 16-May-2008  yamt sync with head.
 1.13.18.1 18-May-2008  yamt sync with head.
 1.13.16.1 02-Jun-2008  mjf Sync with HEAD.
 1.1 01-Jul-2011  dyoung Per discussion at
<http://mail-index.netbsd.org/tech-kern/2010/04/02/msg007941.html>,
divide each machine's bus.h into bus_defs.h (constants & data types)
and bus_funcs.h (macro implementations of bus_space(9) routines and MD
prototypes).

Note that some bus_space(9) routines' implementation will move to .c
files from inline subroutines or macros in .h files.

I've only made the split for machine architectures where there is PCI.
All of the non-PCI-having architectures will require a similar split.

These #include files are not referenced by any (committed) Makefiles or
header files, yet. Changes to Makefiles, to <sys/bus.h>, and to some
more machine-dependent files will dribble in before I throw the switch.
 1.1 01-Jul-2011  dyoung Per discussion at
<http://mail-index.netbsd.org/tech-kern/2010/04/02/msg007941.html>,
divide each machine's bus.h into bus_defs.h (constants & data types)
and bus_funcs.h (macro implementations of bus_space(9) routines and MD
prototypes).

Note that some bus_space(9) routines' implementation will move to .c
files from inline subroutines or macros in .h files.

I've only made the split for machine architectures where there is PCI.
All of the non-PCI-having architectures will require a similar split.

These #include files are not referenced by any (committed) Makefiles or
header files, yet. Changes to Makefiles, to <sys/bus.h>, and to some
more machine-dependent files will dribble in before I throw the switch.
 1.1 29-Feb-2000  nonaka branches: 1.1.6;
Initial import prep port.
 1.1.6.2 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.1.6.1 29-Feb-2000  bouyer file cdefs.h was added on branch thorpej_scsipi on 2000-11-20 20:22:57 +0000
 1.4 28-Apr-2008  martin Remove clause 3 and 4 from TNF licenses
 1.3 17-Oct-2007  garbled branches: 1.3.16; 1.3.18; 1.3.20;
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.2 23-Jun-2006  garbled branches: 1.2.2; 1.2.8; 1.2.18; 1.2.26; 1.2.36; 1.2.38; 1.2.40; 1.2.42;
1) Modify pnpbus attachment code to properly decode pnp memory range packets.
2) Modify pnpbus attachment code to record the chipid of the device if it
has one.
3) Change the clock probes to use the chipid, rather than relying on
potentially untrustworthy subtype and interface.
4) Add decoding of memory ranges to the RESIDUAL_DUMP code.
5) Add a we@pnpbus device to allow netbooting and root device detection
from an IBM we ethernet. (it will only work if your firmware detects it)
6) Because I moved the pnpbus probe to occur prior to pci and isa, it
screwed up the root device detection and firmware path building code.
Completely rewrite the fw-path detection code to deal with this.
 1.1 29-May-2006  garbled branches: 1.1.2; 1.1.4; 1.1.6; 1.1.8;
Add code to decode small vendor items that are documented. Namely we can
now decode the chipid, and L2 processor affinity data.

Also fix a bug where we were reporting the service processor type as a
memory controller.
 1.1.8.4 27-Oct-2007  yamt sync with head.
 1.1.8.3 30-Dec-2006  yamt sync with head.
 1.1.8.2 21-Jun-2006  yamt sync with head.
 1.1.8.1 29-May-2006  yamt file chpidpnp.h was added on branch yamt-lazymbuf on 2006-06-21 14:55:11 +0000
 1.1.6.2 19-Jun-2006  chap Sync with head.
 1.1.6.1 29-May-2006  chap file chpidpnp.h was added on branch chap-midi on 2006-06-19 03:44:53 +0000
 1.1.4.1 13-Jul-2006  gdamore Merge from HEAD.
 1.1.2.2 01-Jun-2006  kardel Sync with head.
 1.1.2.1 29-May-2006  kardel file chpidpnp.h was added on branch simonb-timecounters on 2006-06-01 22:35:16 +0000
 1.2.42.1 25-Oct-2007  bouyer Sync with HEAD.
 1.2.40.1 18-Oct-2007  yamt sync with head.
 1.2.38.1 06-Nov-2007  matt sync with HEAD
 1.2.36.1 26-Oct-2007  joerg Sync with HEAD.

Follow the merge of pmap.c on i386 and amd64 and move
pmap_init_tmp_pgtbl into arch/x86/x86/pmap.c. Modify the ACPI wakeup
code to restore CR4 before jumping back into kernel space as the large
page option might cover that.
 1.2.26.1 10-Oct-2007  garbled Change pic_prepivr around a bit. Handle the default IRQ 7 from the 8259
better, and add a new motivr_get_irq(). The motorola machines require an
actual read from the 8259 for PCI irqs, so in that case, we read the
8259, and then read the IVR to ack the irq.

Move i8259_get_irq() to i8259_common.c for above.

Fix some minor typos in the chip id's for prep residual.

Fix ibmnws and prep to properly initialize the prep ivr depending on if
the machine is motorola, or IBM based.

Tested on a 7043 and an MTX604
 1.2.18.1 23-Oct-2007  ad Sync with head.
 1.2.8.2 09-Sep-2006  rpaulo sync with head
 1.2.8.1 23-Jun-2006  rpaulo file chpidpnp.h was added on branch rpaulo-netinet-merge-pcb on 2006-09-09 02:42:34 +0000
 1.2.2.2 26-Jun-2006  yamt sync with head.
 1.2.2.1 23-Jun-2006  yamt file chpidpnp.h was added on branch yamt-pdpolicy on 2006-06-26 12:45:14 +0000
 1.3.20.1 16-May-2008  yamt sync with head.
 1.3.18.1 18-May-2008  yamt sync with head.
 1.3.16.1 02-Jun-2008  mjf Sync with HEAD.
 1.5 06-Sep-2002  gehenna Merge the gehenna-devsw branch into the trunk.

This merge changes the device switch tables from static array to
dynamically generated by config(8).

- All device switches is defined as a constant structure in device drivers.

- The new grammer ``device-major'' is introduced to ``files''.

device-major <prefix> char <num> [block <num>] [<rules>]

- All device major numbers must be listed up in port dependent majors.<arch>
by using this grammer.

- Added the new naming convention.
The name of the device switch must be <prefix>_[bc]devsw for auto-generation
of device switch tables.

- The backward compatibility of loading block/character device
switch by LKM framework is broken. This is necessary to convert
from block/character device major to device name in runtime and vice versa.

- The restriction to assign device major by LKM is completely removed.
We don't need to reserve LKM entries for dynamic loading of device switch.

- In compile time, device major numbers list is packed into the kernel and
the LKM framework will refer it to assign device major number dynamically.
 1.4 19-Apr-2002  wiz branches: 1.4.2;
Remove unneeded cdev_decl(pms).
 1.3 27-Feb-2002  christos - define other DEV_ constants that the local port uses.
- delete cdev_decl(mm) since <sys/conf.h> does it.
 1.2 21-Mar-2001  lukem branches: 1.2.2; 1.2.8;
now that duplicated stuff has been moved to sys/conf.h, remove unnecessary
defs for: lpt, joy, pc
 1.1 29-Feb-2000  nonaka branches: 1.1.6; 1.1.8;
Initial import prep port.
 1.1.8.1 09-Apr-2001  nathanw Catch up with -current.
 1.1.6.3 27-Mar-2001  bouyer Sync with HEAD.
 1.1.6.2 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.1.6.1 29-Feb-2000  bouyer file conf.h was added on branch thorpej_scsipi on 2000-11-20 20:22:57 +0000
 1.2.8.4 17-Sep-2002  nathanw Catch up to -current.
 1.2.8.3 20-Jun-2002  nathanw Catch up to -current.
 1.2.8.2 28-Feb-2002  nathanw Catch up to -current.
 1.2.8.1 21-Mar-2001  nathanw file conf.h was added on branch nathanw_sa on 2002-02-28 04:11:28 +0000
 1.2.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.2.2.2 23-Jun-2002  jdolecek catch up with -current on kqueue branch
 1.2.2.1 16-Mar-2002  jdolecek Catch up with -current.
 1.4.2.1 19-May-2002  gehenna Remove port-dependent conf.h.
 1.10 20-Jun-2011  matt Don't expose port-specific if _MODULE is defined.
Don't _MACHINE_CPU_H_, _<PORT>_CPU_H_
 1.9 17-Oct-2007  garbled branches: 1.9.52;
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.8 16-Mar-2006  garbled branches: 1.8.20; 1.8.28; 1.8.38; 1.8.40; 1.8.42; 1.8.44;
More changes to prep port:
1) Add the NVRAM device. This device allows us to speak with the nvram on
prep-based machines and read/write to it. Also add a simple IOCTL
interface for speaking with the nvram from userland. This hasn't been
tested yet, but eventually I plan to support it with the sparc eeprom
command.
2) Change the root device detection to use the nvram device to attempt to
guess the boot device. Most machines should now correctly guess thier
boot device, though I expect a few devices to still not work quite right yet.
3) change the default IRQ to level rather than edge in the pnpbus if the
flags are invalid or empty. (based on output from a PowerStack E1)
4) correctly handle older machines in pnpbus that have FixedIOPorts
rather than variable ones.

Still have much to do.
 1.7 26-Aug-2001  matt branches: 1.7.6; 1.7.38; 1.7.52; 1.7.54; 1.7.56; 1.7.58;
Make all powerpc ports use a common Makefile.powerpc (except walnut)
Enforce -Wmissing-prototypes -Wstrict-prototypes for all ppc ports.
Split out macppc cpu support and make common to mpc6xx ports. Make
other mpc6xx ports use it. Add evcnts for mpc6xx traps.
 1.6 14-Jun-2001  thorpej branches: 1.6.2;
Don't need to prototype child_return() here, it's in <sys/proc.h>.
 1.5 30-May-2001  mrg use _KERNEL_OPT
 1.4 14-Dec-2000  mycroft branches: 1.4.2;
Partial syscall cleanup, as per other ports.
 1.3 25-Aug-2000  thorpej branches: 1.3.2;
Make need_resched() take a "struct cpu_info *" argument. This
causes gives a primitive form of processor affinity. Its use in
roundrobin() still needs some work.
 1.2 26-May-2000  thorpej First sweep at scheduler state cleanup. Collect MI scheduler
state into global and per-CPU scheduler state:

- Global state: sched_qs (run queues), sched_whichqs (bitmap
of non-empty run queues), sched_slpque (sleep queues).
NOTE: These may collectively move into a struct schedstate
at some point in the future.

- Per-CPU state, struct schedstate_percpu: spc_runtime
(time process on this CPU started running), spc_flags
(replaces struct proc's p_schedflags), and
spc_curpriority (usrpri of processes on this CPU).

- Every platform must now supply a struct cpu_info and
a curcpu() macro. Simplify existing cpu_info declarations
where appropriate.

- All references to per-CPU scheduler state now made through
curcpu(). NOTE: this will likely be adjusted in the future
after further changes to struct proc are made.

Tested on i386 and Alpha. Changes are mostly mechanical, but apologies
in advance if it doesn't compile on a particular platform.
 1.1 29-Feb-2000  nonaka Initial import prep port.
 1.3.2.3 05-Jan-2001  bouyer Sync with HEAD
 1.3.2.2 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.3.2.1 25-Aug-2000  bouyer file cpu.h was added on branch thorpej_scsipi on 2000-11-20 20:22:57 +0000
 1.4.2.1 21-Jun-2001  nathanw Catch up to -current.
 1.6.2.1 13-Sep-2001  thorpej Update the kqueue branch to HEAD.
 1.7.58.1 19-Apr-2006  elad sync with head - hopefully this will work
 1.7.56.1 01-Apr-2006  yamt sync with head.
 1.7.54.1 22-Apr-2006  simonb Sync with head.
 1.7.52.1 09-Sep-2006  rpaulo sync with head
 1.7.38.2 27-Oct-2007  yamt sync with head.
 1.7.38.1 21-Jun-2006  yamt sync with head.
 1.7.6.2 26-Aug-2001  matt Make all powerpc ports use a common Makefile.powerpc (except walnut)
Enforce -Wmissing-prototypes -Wstrict-prototypes for all ppc ports.
Split out macppc cpu support and make common to mpc6xx ports. Make
other mpc6xx ports use it. Add evcnts for mpc6xx traps.
 1.7.6.1 26-Aug-2001  matt file cpu.h was added on branch nathanw_sa on 2001-08-26 02:47:35 +0000
 1.8.44.1 25-Oct-2007  bouyer Sync with HEAD.
 1.8.42.1 18-Oct-2007  yamt sync with head.
 1.8.40.1 06-Nov-2007  matt sync with HEAD
 1.8.38.1 26-Oct-2007  joerg Sync with HEAD.

Follow the merge of pmap.c on i386 and amd64 and move
pmap_init_tmp_pgtbl into arch/x86/x86/pmap.c. Modify the ACPI wakeup
code to restore CR4 before jumping back into kernel space as the large
page option might cover that.
 1.8.28.1 11-Oct-2007  garbled Move a bunch of the macppc SMP code out of macppc, and down into the
generic OEA code. Add a set of md callbacks into these shared routines,
that any oeappc SMP machine needs to provide. This allows for generally
shared SMP startup code, but still allows for machine-specific
differences in the setup and kicking of the new CPU.

Convert macppc to this new layout. Tested by Macallan.

Add an initial attempt at SMP to prep. Tested on UP machine only,
untested on SMP yet.
 1.8.20.1 23-Oct-2007  ad Sync with head.
 1.9.52.1 23-Jun-2011  cherry Catchup with rmind-uvmplock merge.
 1.1 05-Feb-2003  nakayama Replace machine/rnd.h with more appropriate name to share it
with cycle counter based microtime in kern/kern_microtime.c.
 1.2 20-Oct-2003  matt Reorganize the way powerpc port install machine specific headers.
Use <powerpc/oea/bat.h> exclusively and remove <machine/bat.h> and
<powerpc/bat.h>. Remove unneeded <machine/cpufunc.h>. To insure
1:1 correspondence of <powerpc/FOO.h> to <machine/FOO.h> include
"../../powerpc/include/Makefile" in "arch/FOO/include/Makefile".
Incororpate <byte_swap.h> into <bswap.h> and then byte_swap.h
 1.1 29-Feb-2000  nonaka branches: 1.1.6; 1.1.30;
Initial import prep port.
 1.1.30.1 03-Aug-2004  skrll Sync with HEAD
 1.1.6.2 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.1.6.1 29-Feb-2000  bouyer file cpufunc.h was added on branch thorpej_scsipi on 2000-11-20 20:22:57 +0000
 1.2 26-Apr-2011  joerg Remove Darwin, MACH and Mach-O support.
 1.1 08-Dec-2002  manu branches: 1.1.2; 1.1.136; 1.1.142;
A working fork/vfork implementation. Darwin fork differs from our fork by
two ways:
- the child gets its pid as retval[0] (userland stub will turn it into a 0),
retval[1] is 1 and it is 0 in the parent.
- in the child, the fork syscall is successful, hence we must skip the next
instruction.
 1.1.142.1 06-Jun-2011  jruoho Sync with HEAD.
 1.1.136.1 31-May-2011  rmind sync with head
 1.1.2.2 11-Dec-2002  thorpej Sync with HEAD.
 1.1.2.1 08-Dec-2002  thorpej file darwin_machdep.h was added on branch nathanw_sa on 2002-12-11 06:11:48 +0000
 1.1 29-Feb-2000  nonaka branches: 1.1.6;
Initial import prep port.
 1.1.6.2 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.1.6.1 29-Feb-2000  bouyer file db_machdep.h was added on branch thorpej_scsipi on 2000-11-20 20:22:57 +0000
 1.10 16-May-2013  christos Complete the dosparts -> mbrparts conversion. Only x86k new uses dosparts
because it also uses struct dos_partition.
 1.9 30-Aug-2011  bouyer branches: 1.9.2; 1.9.12;
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.8 23-Nov-2009  pooka If cpu_disklabel includes struct dkbad, define __HAVE_DISKLABEL_DKBAD.
This allows use of subr_disk_mbr on all archs. Default to it for
the rump disk component. No functional change for regular kernels.
(The other option would've been to include dkbad in disklabels
everywhere, but arguably this approach has less possible side-effects,
especially given that wedges and related magic will take over the
world any second now).
 1.7 11-Dec-2005  christos branches: 1.7.78;
merge ktrace-lwp.
 1.6 12-Jun-2005  dyoung Make disklabel(8) and fdisk(8) into "host tools " last step: build
and install ${TOOLDIR}/bin/${MACHINE_GNU_PLATFORM}-disklabel,
${TOOLDIR}/bin/${MACHINE_GNU_PLATFORM}-fdisk by "reaching over" to
the sources in ${NETBSDSRCDIR}/sbin/{disklabel fdisk}/.

To avoid clashes with a build-host's header files, especially on
*BSD, the host-tools versions of fdisk and disklabel search for
#includes such as disklabel.h, disklabel_acorn.h, disklabel_gpt.h,
and bootinfo.h in a new #includes namespace, nbinclude/. That is,
they #include <nbinclude/sys/disklabel.h>, <nbinclude/machine/disklabel.h>,
<nbinclude/sparc64/disklabel.h>, instead of <sys/disklabel.h> and
such. I have also updated the system headers to #include from
nbinclude/-space when HAVE_NBTOOL_CONFIG_H is #defined.
 1.5 08-Oct-2003  lukem Overhaul MBR handling (part 1):

<sys/bootblock.h>:
* Added definitions for the Master Boot Record (MBR) used by
a variety of systems (primarily i386), including the format
of the BIOS Parameter Block (BPB).
This information was cribbed from a variety of sources
including <sys/disklabel_mbr.h> which this is a superset of.

As part of this, some data structure elements and #defines
were renamed to be more "namespace friendly" and consistent
with other bootblocks and MBR documentation.
Update all uses of the old names to the new names.

<sys/disklabel_mbr.h>:
* Deprecated in favor of <sys/bootblock.h> (the latter is more
"host tool" friendly).

amd64 & i386:
* Renamed /usr/mdec/bootxx_dosfs to /usr/mdec/bootxx_msdos, to
be consistent with the naming convention of the msdosfs tools.

* Removed /usr/mdec/bootxx_ufs, as it's equivalent to bootxx_ffsv1
and it's confusing to have two functionally equivalent bootblocks,
especially given that "ufs" has multiple meanings (it could be
a synonym for "ffs", or the group of ffs/lfs/ext2fs file systems).

* Rework pbr.S (the first sector of bootxx_*):
+ Ensure that BPB (bytes 11..89) and the partition table
(bytes 446..509) do not contain code.
+ Add support for booting from FAT partitions if BOOT_FROM_FAT
is defined. (Only set for bootxx_msdos).
+ Remove "dummy" partition 3; if people want to installboot(8)
these to the start of the disk they can use fdisk(8) to
create a real MBR partition table...
+ Compile with TERSE_ERROR so it fits because of the above.
Whilst this is less user friendly, I feel it's important
to have a valid partition table and BPB in the MBR/PBR.

* Renamed /usr/mdec/biosboot to /usr/mdec/boot, to be consistent
with other platforms.

* Enable SUPPORT_DOSFS in /usr/mdec/boot (stage2), so that
we can boot off FAT partitions.

* Crank version of /usr/mdec/boot to 3.1, and fix some of the other
entries in the version file.

installboot(8) (i386):
* Read the existing MBR of the filesystem and retain the BIOS
Parameter Block (BPB) in bytes 11..89 and the MBR partition
table in bytes 446..509. (Previously installboot(8) would
trash those two sections of the MBR.)

mbrlabel(8):
* Use sys/lib/libkern/xlat_mbr_fstype.c instead of homegrown code
to map the MBR partition type to the NetBSD disklabel type.


Test built "make release" for i386, and new bootblocks verified to work
(even off FAT!).
 1.4 10-May-2003  thorpej branches: 1.4.2;
Remove redundant bounds_check_with_label() prototype.
 1.3 09-Mar-2002  matt Change LABELOFFSET to 0 to be more compatible with other MBR style ports.
 1.2 02-May-2000  nonaka branches: 1.2.6; 1.2.10; 1.2.14;
LABELOFFSET 42 -> 64
 1.1 29-Feb-2000  nonaka Initial import prep port.
 1.2.14.1 01-Apr-2002  nathanw Catch up to -current.
(CVS: It's not just a program. It's an adventure!)
 1.2.10.1 16-Mar-2002  jdolecek Catch up with -current.
 1.2.6.2 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.2.6.1 02-May-2000  bouyer file disklabel.h was added on branch thorpej_scsipi on 2000-11-20 20:22:57 +0000
 1.4.2.4 10-Nov-2005  skrll Sync with HEAD. Here we go again...
 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.7.78.1 11-Mar-2010  yamt sync with head
 1.9.12.1 23-Jun-2013  tls resync from head
 1.9.2.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.3 29-Mar-2014  christos make pci_intr_string and eisa_intr_string take a buffer and a length
instead of relying in local static storage.
 1.2 18-Jun-2011  matt branches: 1.2.2; 1.2.12; 1.2.16;
struct device * -> device_t
struct cfdata * -> cfdata_t
use device accessors, use device_private.
some softc/device_t splits (macppc needs a bunch more)
aprint*_dev used considerably more
 1.1 23-Feb-2006  garbled branches: 1.1.2; 1.1.10; 1.1.16; 1.1.22; 1.1.112;
Commit support for the IBM Model 7024 E20 and E30. (E30 not tested).

Changes:
Added a pci-EISA bridge device and associated glue to the prep port.
Adapted from i386.
Change pci_intr_fixup_*() to pass the pin argument on all platforms.
Make PCI_NETBSD_CONFIGURE leave the MPIC alone. We map it separately.

7024 kernel was also succ. tested on an IBM 7043, so no regression there.
 1.1.112.1 23-Jun-2011  cherry Catchup with rmind-uvmplock merge.
 1.1.22.2 09-Sep-2006  rpaulo sync with head
 1.1.22.1 23-Feb-2006  rpaulo file eisa_machdep.h was added on branch rpaulo-netinet-merge-pcb on 2006-09-09 02:42:34 +0000
 1.1.16.2 21-Jun-2006  yamt sync with head.
 1.1.16.1 23-Feb-2006  yamt file eisa_machdep.h was added on branch yamt-lazymbuf on 2006-06-21 14:55:11 +0000
 1.1.10.2 22-Apr-2006  simonb Sync with head.
 1.1.10.1 23-Feb-2006  simonb file eisa_machdep.h was added on branch simonb-timecounters on 2006-04-22 11:37:54 +0000
 1.1.2.2 01-Mar-2006  yamt sync with head.
 1.1.2.1 23-Feb-2006  yamt file eisa_machdep.h was added on branch yamt-uio_vmspace on 2006-03-01 09:28:02 +0000
 1.2.16.1 18-May-2014  rmind sync with head
 1.2.12.1 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.2.2.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.1 29-Feb-2000  nonaka branches: 1.1.6;
Initial import prep port.
 1.1.6.2 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.1.6.1 29-Feb-2000  bouyer file elf_machdep.h was added on branch thorpej_scsipi on 2000-11-20 20:22:57 +0000
 1.2 17-Mar-2000  mycroft branches: 1.2.6;
In the `MY THAT'S GROSS' department...
Eliminate the recursive include of machine/endian.h from sys/endian.h.
 1.1 29-Feb-2000  nonaka Initial import prep port.
 1.2.6.2 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.2.6.1 17-Mar-2000  bouyer file endian.h was added on branch thorpej_scsipi on 2000-11-20 20:22:57 +0000
 1.1 17-Mar-2000  mycroft branches: 1.1.6;
In the `MY THAT'S GROSS' department...
Eliminate the recursive include of machine/endian.h from sys/endian.h.
 1.1.6.2 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.1.6.1 17-Mar-2000  bouyer file endian_machdep.h was added on branch thorpej_scsipi on 2000-11-20 20:22:58 +0000
 1.1 20-Dec-2015  christos branches: 1.1.2; 1.1.18;
new powerpc fenv.h
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 20-Dec-2015  jdolecek file fenv.h was added on branch tls-maxphys on 2017-12-03 11:36:38 +0000
 1.1.2.2 27-Dec-2015  skrll Sync with HEAD (as of 26th Dec)
 1.1.2.1 20-Dec-2015  skrll file fenv.h was added on branch nick-nhusb on 2015-12-27 12:09:40 +0000
 1.1 29-Feb-2000  nonaka branches: 1.1.6;
Initial import prep port.
 1.1.6.2 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.1.6.1 29-Feb-2000  bouyer file float.h was added on branch thorpej_scsipi on 2000-11-20 20:22:58 +0000
 1.1 29-Feb-2000  nonaka branches: 1.1.6;
Initial import prep port.
 1.1.6.2 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.1.6.1 29-Feb-2000  bouyer file fpu.h was added on branch thorpej_scsipi on 2000-11-20 20:22:58 +0000
 1.1 29-Feb-2000  nonaka branches: 1.1.6;
Initial import prep port.
 1.1.6.2 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.1.6.1 29-Feb-2000  bouyer file frame.h was added on branch thorpej_scsipi on 2000-11-20 20:22:58 +0000
 1.6 18-Jun-2011  matt struct device * -> device_t
struct cfdata * -> cfdata_t
use device accessors, use device_private.
some softc/device_t splits (macppc needs a bunch more)
aprint*_dev used considerably more
 1.5 28-Apr-2008  martin branches: 1.5.32;
Remove clause 3 and 4 from TNF licenses
 1.4 24-Feb-2002  kleink branches: 1.4.118; 1.4.120; 1.4.122;
In order to support both indirect PCI configuration space access as well
as direct-mapped PCI configuration space access (such as implemented on
the IBM 27-82650 PCI Host Bridge), switch to a function vector based
PCI configuration space access implementation. The appropriate PCI
chipset tag is provided by platform-specific code.
 1.3 18-Jan-2001  tv branches: 1.3.4; 1.3.8;
No-op commit to force update to a non-"-kk" revision.
 1.2 02-Dec-2000  matt branches: 1.2.2;
Cleanup/fixup gten support. Add TNF copyright (opps). This now outputs
text correctly. There is no colormap support (e.g. the mechanisms are in
place but does yet talk to the hardware).
 1.1 01-Dec-2000  matt Add support for the IBM ThinkPad 820 G10 display (which is a WD90C24A behind
a funky PCI-VLBUS bridge).
 1.2.2.3 11-Feb-2001  bouyer Sync with HEAD.
 1.2.2.2 08-Dec-2000  bouyer Sync with HEAD.
 1.2.2.1 02-Dec-2000  bouyer file gtenvar.h was added on branch thorpej_scsipi on 2000-12-08 09:30:20 +0000
 1.3.8.1 28-Feb-2002  nathanw Catch up to -current.
 1.3.4.1 16-Mar-2002  jdolecek Catch up with -current.
 1.4.122.1 16-May-2008  yamt sync with head.
 1.4.120.1 18-May-2008  yamt sync with head.
 1.4.118.1 02-Jun-2008  mjf Sync with HEAD.
 1.5.32.1 23-Jun-2011  cherry Catchup with rmind-uvmplock merge.
 1.1 29-Feb-2000  nonaka branches: 1.1.6;
Initial import prep port.
 1.1.6.2 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.1.6.1 29-Feb-2000  bouyer file ieee.h was added on branch thorpej_scsipi on 2000-11-20 20:22:58 +0000
 1.1 29-Feb-2000  nonaka branches: 1.1.6;
Initial import prep port.
 1.1.6.2 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.1.6.1 29-Feb-2000  bouyer file ieeefp.h was added on branch thorpej_scsipi on 2000-11-20 20:22:58 +0000
 1.1 14-Apr-2001  kleink branches: 1.1.2; 1.1.4; 1.1.12;
Add definitions of C99 integer constant macros.
 1.1.12.2 14-Apr-2001  kleink Add definitions of C99 integer constant macros.
 1.1.12.1 14-Apr-2001  kleink file int_const.h was added on branch nathanw_sa on 2001-04-14 22:38:42 +0000
 1.1.4.1 21-Jun-2001  nathanw Catch up to -current.
 1.1.2.2 21-Apr-2001  bouyer Sync with HEAD
 1.1.2.1 14-Apr-2001  bouyer file int_const.h was added on branch thorpej_scsipi on 2001-04-21 17:54:33 +0000
 1.1 15-Apr-2001  kleink branches: 1.1.2; 1.1.4; 1.1.12;
Add definitions of C99 integer format conversion macros.
XXX Fastest minimum-width integer types haven't been decided upon yet.
 1.1.12.2 15-Apr-2001  kleink Add definitions of C99 integer format conversion macros.
XXX Fastest minimum-width integer types haven't been decided upon yet.
 1.1.12.1 15-Apr-2001  kleink file int_fmtio.h was added on branch nathanw_sa on 2001-04-15 17:13:17 +0000
 1.1.4.1 21-Jun-2001  nathanw Catch up to -current.
 1.1.2.2 21-Apr-2001  bouyer Sync with HEAD
 1.1.2.1 15-Apr-2001  bouyer file int_fmtio.h was added on branch thorpej_scsipi on 2001-04-21 17:54:33 +0000
 1.1 15-Apr-2001  kleink branches: 1.1.2; 1.1.4; 1.1.12;
Add definitions of C99 specified-width integer type limits.
XXX Fastest minimum-width integer types haven't been decided upon yet.
 1.1.12.2 15-Apr-2001  kleink Add definitions of C99 specified-width integer type limits.
XXX Fastest minimum-width integer types haven't been decided upon yet.
 1.1.12.1 15-Apr-2001  kleink file int_limits.h was added on branch nathanw_sa on 2001-04-15 15:29:12 +0000
 1.1.4.1 21-Jun-2001  nathanw Catch up to -current.
 1.1.2.2 21-Apr-2001  bouyer Sync with HEAD
 1.1.2.1 15-Apr-2001  bouyer file int_limits.h was added on branch thorpej_scsipi on 2001-04-21 17:54:33 +0000
 1.1 14-Apr-2001  kleink branches: 1.1.2; 1.1.4; 1.1.12;
Add definitions of C99 minimum-width and greatest-width integer types.
XXX Fastest minimum-width integer types haven't been decided upon yet.
 1.1.12.2 14-Apr-2001  kleink Add definitions of C99 minimum-width and greatest-width integer types.
XXX Fastest minimum-width integer types haven't been decided upon yet.
 1.1.12.1 14-Apr-2001  kleink file int_mwgwtypes.h was added on branch nathanw_sa on 2001-04-14 12:20:01 +0000
 1.1.4.1 21-Jun-2001  nathanw Catch up to -current.
 1.1.2.2 21-Apr-2001  bouyer Sync with HEAD
 1.1.2.1 14-Apr-2001  bouyer file int_mwgwtypes.h was added on branch thorpej_scsipi on 2001-04-21 17:54:33 +0000
 1.1 26-Jun-2000  kleink branches: 1.1.2;
Add <machine/int_types.h>, which provides namespace-pure definitions
of exact-width integer types.
 1.1.2.2 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.1.2.1 26-Jun-2000  bouyer file int_types.h was added on branch thorpej_scsipi on 2000-11-20 20:22:58 +0000
 1.34 17-Jun-2011  matt intr.h must not include cpu due to deadly embrace with SOFTINT_COUNT.
Cleanup intr.h so MD definitions can overload common definitions.
Rototill pic/intr.c. Virtual IRQs can now be reclaimed. separate virq
from hwirq from picirq. Redo intr mask calculations.
tested on pmppc and macppc (MP).
 1.33 13-Nov-2010  uebayasi branches: 1.33.6;
sys/device.h is not suitable for such low-level definitions.
 1.32 24-Apr-2010  kiyohara Support 64-bit imask for powerpc/pic.
 1.31 28-Apr-2008  martin branches: 1.31.20; 1.31.22;
Remove clause 3 and 4 from TNF licenses
 1.30 17-Oct-2007  garbled branches: 1.30.16; 1.30.18; 1.30.20;
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.29 16-Feb-2007  ad branches: 1.29.6; 1.29.14; 1.29.22; 1.29.24; 1.29.26; 1.29.28;
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.28 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.27 13-Jul-2006  garbled branches: 1.27.4; 1.27.6;
Rather than hardcode the location of the Interrupt Vector Register, we
try to locate it using the residual data. On some machines this doesn't
work, so we fall back to hardcoding it. This should fix isa interrupts
on the 7025-F40, which has the IVR at a different location.
 1.26 29-Jun-2006  garbled Change how the MPIC/OpenPIC is configured at boot. Rather than scanning
for a magical PCI device location (that is sometimes wrong), we scan the
residual data for an MPIC, and if we find one, wire it up from there.
This will hopefully allow interrupts to work on the MPC750 and the
7025-F40. I suspect however the interrupt vector address on the 7025 will
still need some work.
 1.25 08-May-2006  garbled branches: 1.25.4;
Switch prep over to evcnt(9). While I was here, I also switched it to
use struct cpu_info for the cpu stuff. Tested on 7248 and 7043.
 1.24 03-May-2006  garbled Generic soft interrupt support for prep. Mostly copied from macppc,
tested on 7248 and 7043.
 1.23 16-Feb-2006  perry branches: 1.23.2; 1.23.4; 1.23.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.22 24-Dec-2005  perry branches: 1.22.2; 1.22.4; 1.22.6;
__asm__ -> __asm
__const__ -> const
__inline__ -> inline
__volatile__ -> volatile
 1.21 24-Dec-2005  perry Remove leading __ from __(const|inline|signed|volatile) -- it is obsolete.
 1.20 11-Dec-2005  christos merge ktrace-lwp.
 1.19 03-Sep-2003  matt branches: 1.19.16;
Move CLKF_BASEPRI to machine specific <intr.h> file since it depends on
the encoding of the spl for the port.
 1.18 16-Jun-2003  thorpej branches: 1.18.2;
Rename IPL_IMP -> IPL_VM.
 1.17 05-Jul-2002  matt Peform a rototill over the powerpc-based ports.

Move the trap/vector initialization for MPC6xx ports to mpc6xx_machdep.c
Also move softnet, install_extintr, mapiodev, kvtop. Add common BAT
initialization code.

Add user Altivec support.

Fix calls to OF_call_method in macppc/macppc/machdep.c.

Use ci_fpuproc in cpu_info instead of separate fpuproc.

Add separate syscall.c and defined __HAVE_SYSCALL_INTERN.
 1.16 30-May-2002  nonaka Support IBM RS/6000 43P 7043-140.
 1.15 26-Feb-2002  kleink branches: 1.15.4; 1.15.8;
Move the ext_intr() variant using the board interrupt vector register
into common code; it is not specific to the 6050, and in fact not even
specific to IBM-built hardware.
 1.14 11-Feb-2002  wiz "doesn't" should have an 's'.
 1.13 11-Feb-2002  wiz achive is not a good word.
 1.12 10-Feb-2002  kleink prep_intr_reg is mapped in kva space, so make it vaddr_t.
 1.11 26-Aug-2001  matt branches: 1.11.6;
Make all powerpc ports use a common Makefile.powerpc (except walnut)
Enforce -Wmissing-prototypes -Wstrict-prototypes for all ppc ports.
Split out macppc cpu support and make common to mpc6xx ports. Make
other mpc6xx ports use it. Add evcnts for mpc6xx traps.
 1.10 20-Jun-2001  nonaka branches: 1.10.2;
ANSI'fy
 1.9 19-Jun-2001  nonaka Back out last changes.
 1.8 17-Jun-2001  nonaka identified prep model.
 1.7 13-Apr-2001  thorpej Remove the use of splimp() from the NetBSD kernel. splnet()
and only splnet() is allowed for the protection of data structures
used by network devices.
 1.6 14-Jan-2001  thorpej branches: 1.6.2;
Make sure everybody has an splvm() and equate it with splimp() (splimp()
is the historical name for this interrupt level, and the historical name
is going to go away in the near future).
 1.5 22-Nov-2000  matt Make assym.h be generated again
Add pcmcia support to files.prep
Add isa_intr_alloc support.
 1.4 22-Aug-2000  thorpej branches: 1.4.2;
Add spllock(). See spl(9) for details.
 1.3 21-Aug-2000  thorpej Make sure we provide splsched() as described in spl(9).
 1.2 14-Aug-2000  kleink * Make spllower()ing functions not return the previous priority level,
as specified in spl(9).
* In due course, ipmlement splx() via spllower().
 1.1 29-Feb-2000  nonaka Initial import prep port.
 1.4.2.5 21-Apr-2001  bouyer Sync with HEAD
 1.4.2.4 18-Jan-2001  bouyer Sync with head (for UBC+NFS fixes, mostly).
 1.4.2.3 08-Dec-2000  bouyer Sync with HEAD.
 1.4.2.2 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.4.2.1 22-Aug-2000  bouyer file intr.h was added on branch thorpej_scsipi on 2000-11-20 20:22:58 +0000
 1.6.2.1 21-Jun-2001  nathanw Catch up to -current.
 1.10.2.4 06-Sep-2002  jdolecek sync kqueue branch with HEAD
 1.10.2.3 23-Jun-2002  jdolecek catch up with -current on kqueue branch
 1.10.2.2 16-Mar-2002  jdolecek Catch up with -current.
 1.10.2.1 13-Sep-2001  thorpej Update the kqueue branch to HEAD.
 1.11.6.4 01-Aug-2002  nathanw Catch up to -current.
 1.11.6.3 20-Jun-2002  nathanw Catch up to -current.
 1.11.6.2 28-Feb-2002  nathanw Catch up to -current.
 1.11.6.1 26-Aug-2001  nathanw file intr.h was added on branch nathanw_sa on 2002-02-28 04:11:29 +0000
 1.15.8.2 16-Jul-2002  gehenna catch up with -current.
 1.15.8.1 15-Jul-2002  gehenna catch up with -current.
 1.15.4.1 17-Mar-2002  thorpej IPL_IMP -> IPL_VM
 1.18.2.3 21-Sep-2004  skrll Fix the sync with head I botched.
 1.18.2.2 18-Sep-2004  skrll Sync with HEAD.
 1.18.2.1 03-Aug-2004  skrll Sync with HEAD
 1.19.16.4 27-Oct-2007  yamt sync with head.
 1.19.16.3 26-Feb-2007  yamt 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.22.6.2 01-Jun-2006  kardel Sync with head.
 1.22.6.1 22-Apr-2006  simonb Sync with head.
 1.22.4.1 09-Sep-2006  rpaulo sync with head
 1.22.2.1 18-Feb-2006  yamt sync with head.
 1.23.6.1 24-May-2006  tron Merge 2006-05-24 NetBSD-current into the "peter-altq" branch.
 1.23.4.1 11-May-2006  elad sync with head
 1.23.2.2 11-Aug-2006  yamt sync with head
 1.23.2.1 24-May-2006  yamt sync with head.
 1.25.4.1 13-Jul-2006  gdamore Merge from HEAD.
 1.27.6.1 05-Nov-2006  yamt splraiseipl/makeiplcookie for prep.
 1.27.4.1 12-Jan-2007  ad Sync with head.
 1.29.28.1 25-Oct-2007  bouyer Sync with HEAD.
 1.29.26.1 18-Oct-2007  yamt sync with head.
 1.29.24.1 06-Nov-2007  matt sync with HEAD
 1.29.22.1 26-Oct-2007  joerg Sync with HEAD.

Follow the merge of pmap.c on i386 and amd64 and move
pmap_init_tmp_pgtbl into arch/x86/x86/pmap.c. Modify the ACPI wakeup
code to restore CR4 before jumping back into kernel space as the large
page option might cover that.
 1.29.14.2 08-May-2007  garbled Make powerpc/intr.h more common than it previously was. Having done
that, delete all the duplicate entries from the 4 ports that have
converted to shared pic code. Also, commit a minor change to sandpoint
that I forgot to commit earlier (delete an unused variable)
 1.29.14.1 03-May-2007  garbled Convert prep over to the shared interrupts. Still alot of cleanup to do
following this change.
 1.29.6.1 23-Oct-2007  ad Sync with head.
 1.30.20.2 11-Aug-2010  yamt sync with head.
 1.30.20.1 16-May-2008  yamt sync with head.
 1.30.18.1 18-May-2008  yamt sync with head.
 1.30.16.1 02-Jun-2008  mjf Sync with HEAD.
 1.31.22.2 05-Mar-2011  rmind sync with head
 1.31.22.1 30-May-2010  rmind sync with head
 1.31.20.1 30-Apr-2010  uebayasi Sync with HEAD.
 1.33.6.1 23-Jun-2011  cherry Catchup with rmind-uvmplock merge.
 1.2 15-Jul-2018  maxv Retire ipkdb entirely. The option was removed from the config files
yesterday.

ok kamil christos
 1.1 29-Feb-2000  nonaka branches: 1.1.6; 1.1.42; 1.1.220;
Initial import prep port.
 1.1.220.1 10-Jun-2019  christos Sync with HEAD
 1.1.42.1 28-Jul-2018  pgoyette Sync with HEAD
 1.1.6.2 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.1.6.1 29-Feb-2000  bouyer file ipkdb.h was added on branch thorpej_scsipi on 2000-11-20 20:22:58 +0000
 1.15 12-Dec-2021  andvar s/Miscellanous/Miscellaneous/ in copypasta comments.
 1.14 18-Oct-2016  jdolecek add isa_intr_establish_xname() to MD isa headers so that it can be used
by MI drivers
 1.13 19-Aug-2009  dyoung branches: 1.13.22; 1.13.40; 1.13.44;
isa_detach_hook() needs two arguments, the first an isa_chipset_tag_t.
 1.12 19-Aug-2009  dyoung Define isa_detach_hook().
 1.11 28-Apr-2008  martin Remove clause 3 and 4 from TNF licenses
 1.10 17-Oct-2007  garbled branches: 1.10.16; 1.10.18; 1.10.20;
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.9 11-Dec-2005  christos branches: 1.9.30; 1.9.38; 1.9.48; 1.9.50; 1.9.52; 1.9.54;
merge ktrace-lwp.
 1.8 07-Aug-2003  agc branches: 1.8.16;
Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22364, verified by myself.
 1.7 09-May-2003  fvdl branches: 1.7.2;
A few ISA sound drivers like to share dma channels, and hence deferred
isa_dmamap_create() calls to their open/close entrypoints. This worked
with some luck, but broke on i386 when _bus_dmamap_create started
to allocate bounce buffers upfront, since memory below 16M may well
not be available when the sound devices is opened for the Nth time.

To fix this, create a new simple interface, isa_drq_alloc/isa_drq_free,
wrappers around already existing bitmask macros. These are expected
to be used before an isa_dmamap_create call, and after an
isa_dmamap_destroy call, respectively. For the sb and ad1848 drivers,
they're deferred until open/close.

All isa_dmamap_create calls can now use BUS_DMA_ALLOCNOW and be done
at attach time.
 1.6 26-Aug-2001  matt branches: 1.6.6;
Make all powerpc ports use a common Makefile.powerpc (except walnut)
Enforce -Wmissing-prototypes -Wstrict-prototypes for all ppc ports.
Split out macppc cpu support and make common to mpc6xx ports. Make
other mpc6xx ports use it. Add evcnts for mpc6xx traps.
 1.5 15-Jun-2001  nonaka branches: 1.5.2;
Use new common bus.h framework.
 1.4 15-Nov-2000  thorpej branches: 1.4.2; 1.4.4;
Move the ISA DMA cookie into isadma_machdep.c.
 1.3 04-Jun-2000  cgd Implement the more flexiable `evcnt' interface as discussed (briefly) on
tech-kern and now documented in evcnt(9).
 1.2 01-Jun-2000  cgd kill __P in these files. (I had to look at them anyway with an eye for
adding some protos... and adding them with __P seems wrong, but mixing
__P and not __P in the same file seems wrong too, so...)
 1.1 29-Feb-2000  nonaka branches: 1.1.2;
Initial import prep port.
 1.1.2.1 22-Jun-2000  minoura Sync w/ netbsd-1-5-base.
 1.4.4.1 21-Jun-2001  nathanw Catch up to -current.
 1.4.2.3 22-Nov-2000  bouyer Sync with HEAD.
 1.4.2.2 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.4.2.1 15-Nov-2000  bouyer file isa_machdep.h was added on branch thorpej_scsipi on 2000-11-20 20:22:58 +0000
 1.5.2.1 13-Sep-2001  thorpej Update the kqueue branch to HEAD.
 1.6.6.2 26-Aug-2001  matt Make all powerpc ports use a common Makefile.powerpc (except walnut)
Enforce -Wmissing-prototypes -Wstrict-prototypes for all ppc ports.
Split out macppc cpu support and make common to mpc6xx ports. Make
other mpc6xx ports use it. Add evcnts for mpc6xx traps.
 1.6.6.1 26-Aug-2001  matt file isa_machdep.h was added on branch nathanw_sa on 2001-08-26 02:47:35 +0000
 1.7.2.3 21-Sep-2004  skrll Fix the sync with head I botched.
 1.7.2.2 18-Sep-2004  skrll Sync with HEAD.
 1.7.2.1 03-Aug-2004  skrll Sync with HEAD
 1.8.16.1 27-Oct-2007  yamt sync with head.
 1.9.54.1 25-Oct-2007  bouyer Sync with HEAD.
 1.9.52.1 18-Oct-2007  yamt sync with head.
 1.9.50.1 06-Nov-2007  matt sync with HEAD
 1.9.48.1 26-Oct-2007  joerg Sync with HEAD.

Follow the merge of pmap.c on i386 and amd64 and move
pmap_init_tmp_pgtbl into arch/x86/x86/pmap.c. Modify the ACPI wakeup
code to restore CR4 before jumping back into kernel space as the large
page option might cover that.
 1.9.38.3 07-May-2007  garbled Convert prep over to new isa_machdep changes.
 1.9.38.2 03-May-2007  garbled Get rid of all the useless stuff in isa_machdep.c, and the things that
call it. TODO, fix isa_intr_alloc to work with new interrupt foo.
 1.9.38.1 01-May-2007  garbled Change some isa things around in the prep port to promote sharing of isa
 1.9.30.1 23-Oct-2007  ad Sync with head.
 1.10.20.2 19-Aug-2009  yamt sync with head.
 1.10.20.1 16-May-2008  yamt sync with head.
 1.10.18.1 18-May-2008  yamt sync with head.
 1.10.16.1 02-Jun-2008  mjf Sync with HEAD.
 1.13.44.1 04-Nov-2016  pgoyette Sync with HEAD
 1.13.40.1 05-Dec-2016  skrll Sync with HEAD
 1.13.22.1 03-Dec-2017  jdolecek update from HEAD
 1.3 28-Apr-2008  martin Remove clause 3 and 4 from TNF licenses
 1.2 01-Jun-2000  cgd branches: 1.2.4; 1.2.130; 1.2.132; 1.2.134;
kill __P in these files. (I had to look at them anyway with an eye for
adding some protos... and adding them with __P seems wrong, but mixing
__P and not __P in the same file seems wrong too, so...)
 1.1 29-Feb-2000  nonaka branches: 1.1.2;
Initial import prep port.
 1.1.2.1 22-Jun-2000  minoura Sync w/ netbsd-1-5-base.
 1.2.134.1 16-May-2008  yamt sync with head.
 1.2.132.1 18-May-2008  yamt sync with head.
 1.2.130.1 02-Jun-2008  mjf Sync with HEAD.
 1.2.4.2 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.2.4.1 01-Jun-2000  bouyer file isapnp_machdep.h was added on branch thorpej_scsipi on 2000-11-20 20:22:59 +0000
 1.3 11-Dec-2005  christos merge ktrace-lwp.
 1.2 02-Jul-2004  drochner just include <sys/joystick.h>
 1.1 29-Feb-2000  nonaka branches: 1.1.6; 1.1.30;
Initial import prep port.
 1.1.30.3 21-Sep-2004  skrll Fix the sync with head I botched.
 1.1.30.2 18-Sep-2004  skrll Sync with HEAD.
 1.1.30.1 03-Aug-2004  skrll Sync with HEAD
 1.1.6.2 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.1.6.1 29-Feb-2000  bouyer file joystick.h was added on branch thorpej_scsipi on 2000-11-20 20:22:59 +0000
 1.1 29-Feb-2000  nonaka branches: 1.1.6;
Initial import prep port.
 1.1.6.2 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.1.6.1 29-Feb-2000  bouyer file kcore.h was added on branch thorpej_scsipi on 2000-11-20 20:22:59 +0000
 1.3 16-Feb-2006  perry 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.2 24-Dec-2005  perry branches: 1.2.2; 1.2.4; 1.2.6;
Remove leading __ from __(const|inline|signed|volatile) -- it is obsolete.
 1.1 29-Feb-2000  nonaka branches: 1.1.6;
Initial import prep port.
 1.1.6.2 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.1.6.1 29-Feb-2000  bouyer file kgdb.h was added on branch thorpej_scsipi on 2000-11-20 20:22:59 +0000
 1.2.6.1 22-Apr-2006  simonb Sync with head.
 1.2.4.1 09-Sep-2006  rpaulo sync with head
 1.2.2.1 18-Feb-2006  yamt sync with head.
 1.1 29-Feb-2000  nonaka branches: 1.1.6;
Initial import prep port.
 1.1.6.2 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.1.6.1 29-Feb-2000  bouyer file limits.h was added on branch thorpej_scsipi on 2000-11-20 20:22:59 +0000
 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 29-Feb-2000  nonaka branches: 1.1.6; 1.1.10; 1.1.12;
Initial import prep port.
 1.1.12.1 12-Nov-2001  thorpej Sync the thorpej-mips-cache branch with -current.
 1.1.10.1 10-Jan-2002  thorpej Sync kqueue branch with -current.
 1.1.6.2 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.1.6.1 29-Feb-2000  bouyer file loadfile_machdep.h was added on branch thorpej_scsipi on 2000-11-20 20:22:59 +0000
 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:49 +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.1 29-Apr-2000  thorpej branches: 1.1.6;
Require that each each MACHINE/MACHINE_ARCH supply a lock.h. This file
contains the values __SIMPLELOCK_LOCKED and __SIMPLELOCK_UNLOCKED, which
replace the old SIMPLELOCK_LOCKED and SIMPLELOCK_UNLOCKED. These files
are also required to supply inline functions __cpu_simple_lock(),
__cpu_simple_lock_try(), and __cpu_simple_unlock() if locking is to be
supported on that platform (i.e. if MULTIPROCESSOR is defined in the
_KERNEL case). Change these functions to take an int * (&alp->lock_data)
rather than the struct simplelock * itself.

These changes make it possible for userland to use the locking primitives
by including <machine/lock.h>.
 1.1.6.2 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.1.6.1 29-Apr-2000  bouyer file lock.h was added on branch thorpej_scsipi on 2000-11-20 20:22:59 +0000
 1.1 30-Nov-2024  christos branches: 1.1.4;
Create a new header lwp_private.h to contain _lwp_getprivate_fast,
_lwp_gettcb_fast, _lwp_settcb and remove them from mcontext.h, so that:
1. we don't need special hacks to hide them
2. we can include <lwp.h> where needed to get the necessary prototypes
without redefining them locally.
 1.1.4.2 02-Aug-2025  perseant Sync with HEAD
 1.1.4.1 30-Nov-2024  perseant file lwp_private.h was added on branch perseant-exfatfs on 2025-08-02 05:56:02 +0000
 1.2 03-May-2001  soren PPC machine type tags haven't been used for a while.
 1.1 29-Feb-2000  nonaka branches: 1.1.6;
Initial import prep port.
 1.1.6.2 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.1.6.1 29-Feb-2000  bouyer file machine_type.h was added on branch thorpej_scsipi on 2000-11-20 20:23:00 +0000
 1.2 26-Apr-2011  joerg Remove Darwin, MACH and Mach-O support.
 1.1 30-Oct-2002  matt branches: 1.1.2; 1.1.136; 1.1.142;
Add missing file.
 1.1.142.1 06-Jun-2011  jruoho Sync with HEAD.
 1.1.136.1 31-May-2011  rmind sync with head
 1.1.2.2 11-Nov-2002  nathanw Catch up to -current
 1.1.2.1 30-Oct-2002  nathanw file macho_machdep.h was added on branch nathanw_sa on 2002-11-11 22:03:06 +0000
 1.1 29-Feb-2000  nonaka branches: 1.1.6;
Initial import prep port.
 1.1.6.2 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.1.6.1 29-Feb-2000  bouyer file math.h was added on branch thorpej_scsipi on 2000-11-20 20:23:00 +0000
 1.2 18-Jan-2003  thorpej Merge the nathanw_sa branch.
 1.1 05-Nov-2001  briggs branches: 1.1.2;
file mcontext.h was initially added on branch nathanw_sa.
 1.1.2.1 05-Nov-2001  briggs Initial SA support for ppc. Test-booted on sandpoint, macppc, & walnut.
mcontext and cpu_getmcontext()/cpu_setmcontext() from Klaus Klein
<kleink@netbsd.org>.
 1.2 15-May-2003  wiz Don't install machine/mouse.h on i386 and prep; there are no users for
the old busmouse interface any longer, we use wsmouse now.
 1.1 29-Feb-2000  nonaka branches: 1.1.6;
Initial import prep port.
 1.1.6.2 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.1.6.1 29-Feb-2000  bouyer file mouse.h was added on branch thorpej_scsipi on 2000-11-20 20:23:00 +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 mutex.h was initially added on branch newlock2.
 1.1.2.2 28-Jan-2007  ad powerpc changes.
 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:07:58 +0000
 1.11 07-Sep-2025  thorpej Rather than duplicating the fields of mk48txx_softc inside
prep_mk48txx_softc (!!!), just include a mk48txx_softc inside
prep_mk48txx_softc.
 1.10 01-Nov-2021  andvar fix typos, mainly in words minimum and maximum, but also few others.
 1.9 07-Sep-2015  dholland Final bit of PR 41200: headers that declare ioctls should include sys/ioccom.h.
This covers most if not all of the MD headers.

XXX: a lot of the ioctl definitions in some of these files are cutpasted.
 1.8 27-Oct-2012  chs branches: 1.8.14;
split device_t/softc for all remaining drivers.
replace "struct device *" with "device_t".
use device_xname(), device_unit(), etc.
 1.7 30-Jun-2011  wiz branches: 1.7.2; 1.7.12;
dependant -> dependent
 1.6 28-Apr-2008  martin Remove clause 3 and 4 from TNF licenses
 1.5 29-Mar-2008  tsutsui branches: 1.5.2; 1.5.4;
One more missed file on migration of struct device sc_dev -> device_t sc_dev.
 1.4 21-Mar-2007  garbled branches: 1.4.34;
Add a read entry point to this driver. There are two minor devices
associated with this, 0, the nvram device, and now 1, the residual
device. The devices allow the user to directly read the contents of the
kernel copy of the nvram, and the residual data respectively. There is
no provision for write.
 1.3 26-Feb-2007  garbled branches: 1.3.4; 1.3.6; 1.3.8;
Finish the code in the prep nvram driver that makes it an actual device
(/dev/nvram) and implement all the associated ioctls fully. Tested with
a hacked up copy of eeprom(8). Right now it can only be used to see the
nvram GEV contents, not actually edit them. Will do that later some day.
 1.2 15-Jun-2006  garbled branches: 1.2.2; 1.2.8; 1.2.12; 1.2.14;
A bit of clock rototill. It's safer to detect things known by the
residual with the pnpbus probes, than it is to do it with raw isa probes,
so I've replaced the isa mkclock and mcclock code with a pnpbus attachment.

While writing the mkclock code, I realized that on motorola prep machines
the mkclock uses the same port range as the nvram part. (it's actually
the same chip/part). This was causing the nvram not to work on those
machines. Now the nvram code will recognize this, and wire up the
mkclock as well. The mkclock probe is just a stub probe used to
pre-detect the fact that this is one of those machines.
 1.1 16-Mar-2006  garbled branches: 1.1.4; 1.1.6; 1.1.8; 1.1.10; 1.1.12;
More changes to prep port:
1) Add the NVRAM device. This device allows us to speak with the nvram on
prep-based machines and read/write to it. Also add a simple IOCTL
interface for speaking with the nvram from userland. This hasn't been
tested yet, but eventually I plan to support it with the sparc eeprom
command.
2) Change the root device detection to use the nvram device to attempt to
guess the boot device. Most machines should now correctly guess thier
boot device, though I expect a few devices to still not work quite right yet.
3) change the default IRQ to level rather than edge in the pnpbus if the
flags are invalid or empty. (based on output from a PowerStack E1)
4) correctly handle older machines in pnpbus that have FixedIOPorts
rather than variable ones.

Still have much to do.
 1.1.12.1 13-Jul-2006  gdamore Merge from HEAD.
 1.1.10.1 19-Jun-2006  chap Sync with head.
 1.1.8.2 22-Apr-2006  simonb Sync with head.
 1.1.8.1 16-Mar-2006  simonb file nvram.h was added on branch simonb-timecounters on 2006-04-22 11:37:54 +0000
 1.1.6.2 19-Apr-2006  elad sync with head - hopefully this will work
 1.1.6.1 16-Mar-2006  elad file nvram.h was added on branch elad-kernelauth on 2006-04-19 02:33:33 +0000
 1.1.4.3 26-Jun-2006  yamt sync with head.
 1.1.4.2 11-Apr-2006  yamt sync files somehow mis-tagged by yamt-pdpolicy-base2.
 1.1.4.1 16-Mar-2006  yamt file nvram.h was added on branch yamt-pdpolicy on 2006-04-11 12:20:51 +0000
 1.2.14.2 24-Mar-2007  yamt sync with head.
 1.2.14.1 27-Feb-2007  yamt - sync with head.
- move sched_changepri back to kern_synch.c as it doesn't know PPQ anymore.
 1.2.12.2 31-Mar-2007  bouyer Pull up following revision(s) (requested by garbled in ticket #531):
sys/arch/prep/include/nvram.h: revision 1.4
sys/arch/prep/pnpbus/nvram_pnpbus.c: revision 1.8
Add a read entry point to this driver. There are two minor devices
associated with this, 0, the nvram device, and now 1, the residual
device. The devices allow the user to directly read the contents of the
kernel copy of the nvram, and the residual data respectively. There is
no provision for write.
 1.2.12.1 04-Mar-2007  bouyer Pull up following revision(s) (requested by garbled in ticket #482):
share/man/man4/man4.prep/intro.4: revision 1.1
usr.sbin/eeprom/eeprom.8: revision 1.12
usr.sbin/eeprom/prephandlers.c: revision 1.1
distrib/sets/lists/base/md.prep: revision 1.13
distrib/sets/lists/comp/md.prep: revision 1.22
sys/arch/prep/conf/majors.prep: revision 1.19
share/man/man4/man4.prep/Makefile: revision 1.1
share/man/man4/Makefile: revision 1.421
usr.sbin/eeprom/defs.h: revision 1.10
share/man/man4/man4.prep/nvram.4: revision 1.1
sys/arch/prep/pnpbus/nvram_pnpbus.c: revision 1.6
usr.sbin/eeprom/Makefile: revision 1.14
etc/mtree/NetBSD.dist: revision 1.333
usr.sbin/eeprom/main.c: revision 1.17
etc/etc.prep/MAKEDEV.conf: revision 1.5
distrib/sets/lists/man/mi: revision 1.978
usr.sbin/eeprom/pathnames.h: revision 1.3
sys/arch/prep/include/Makefile: revision 1.19
sys/arch/prep/include/nvram.h: revision 1.3
Finish the code in the prep nvram driver that makes it an actual device
(/dev/nvram) and implement all the associated ioctls fully. Tested with
a hacked up copy of eeprom(8). Right now it can only be used to see the
nvram GEV contents, not actually edit them. Will do that later some day.
 1.2.8.2 09-Sep-2006  rpaulo sync with head
 1.2.8.1 15-Jun-2006  rpaulo file nvram.h was added on branch rpaulo-netinet-merge-pcb on 2006-09-09 02:42:35 +0000
 1.2.2.3 03-Sep-2007  yamt sync with head.
 1.2.2.2 21-Jun-2006  yamt sync with head.
 1.2.2.1 15-Jun-2006  yamt file nvram.h was added on branch yamt-lazymbuf on 2006-06-21 14:55:11 +0000
 1.3.8.1 29-Mar-2007  reinoud Pullup to -current
 1.3.6.1 11-Jul-2007  mjf Sync with head.
 1.3.4.1 10-Apr-2007  ad Sync with head.
 1.4.34.2 02-Jun-2008  mjf Sync with HEAD.
 1.4.34.1 03-Apr-2008  mjf Sync with HEAD.
 1.5.4.1 16-May-2008  yamt sync with head.
 1.5.2.1 18-May-2008  yamt sync with head.
 1.7.12.2 03-Dec-2017  jdolecek update from HEAD
 1.7.12.1 20-Nov-2012  tls Resync to 2012-11-19 00:00:00 UTC
 1.7.2.1 30-Oct-2012  yamt sync with head
 1.8.14.1 22-Sep-2015  skrll Sync with HEAD
 1.1 30-May-2002  nonaka branches: 1.1.2; 1.1.4; 1.1.6;
Support IBM RS/6000 43P 7043-140.
 1.1.6.2 15-Jul-2002  gehenna catch up with -current.
 1.1.6.1 30-May-2002  gehenna file openpicreg.h was added on branch gehenna-devsw on 2002-07-15 00:33:15 +0000
 1.1.4.2 23-Jun-2002  jdolecek catch up with -current on kqueue branch
 1.1.4.1 30-May-2002  jdolecek file openpicreg.h was added on branch kqueue on 2002-06-23 17:39:51 +0000
 1.1.2.2 20-Jun-2002  nathanw Catch up to -current.
 1.1.2.1 30-May-2002  nathanw file openpicreg.h was added on branch nathanw_sa on 2002-06-20 03:40:39 +0000
 1.7 28-Jul-2011  macallan more PCI_MAGIC_IO_RANGE fixes
 1.6 20-Jun-2011  matt Cleanup powerpc param.h. If compiling a MODULE, ignore port-specific stuff.
Only include <machine/cpu.h> in <powerpc/param.h> at the end.
 1.5 12-Jul-2010  kiyohara branches: 1.5.6;
Support xserver for prep.
It tested only s3(864).
 1.4 17-Jun-2001  nonaka branches: 1.4.8; 1.4.130; 1.4.150; 1.4.152;
NEWPMAP
 1.3 30-May-2001  mrg use _KERNEL_OPT
 1.2 30-Jun-2000  itojun branches: 1.2.2; 1.2.4;
raise MSIZE from 128 to 256.
- for sizeof(void *) == 8 arch, this is mandatory. MHLEN is too small
already (less than 80) and there are chances for unwanted packet loss due
to m_pullup restriction.
- for other cases, the change should avoid allocating clusters in most cases
(even when you have IPv4 IPsec tunnel, or IPv6 with moderate amount of
extension header)

portmasters: if your arch chokes with the change (high memory usage or
whatever), please backout the change for your arch.
 1.1 29-Feb-2000  nonaka branches: 1.1.4;
Initial import prep port.
 1.1.4.1 23-Jul-2000  itojun pullup from main trunc (approved by releng-1-5)

raise MSIZE from 128 to 256.
- for sizeof(void *) == 8 arch, this is mandatory. MHLEN is too small
already (less than 80) and there are chances for unwanted packet loss due
to m_pullup restriction.
- for other cases, the change should avoid allocating clusters in most cases
(even when you have IPv4 IPsec tunnel, or IPv6 with moderate amount of
extension header)

portmasters: if your arch chokes with the change (high memory usage or
whatever), please backout the change for your arch.

1.1 -> 1.2 syssrc/sys/arch/amigappc/include/param.h
1.13 -> 1.14 syssrc/sys/arch/arc/include/param.h
1.1 -> 1.2 syssrc/sys/arch/arm26/include/param.h
1.17 -> 1.18 syssrc/sys/arch/arm32/include/param.h
1.6 -> 1.7 syssrc/sys/arch/bebox/include/param.h
1.4 -> 1.5 syssrc/sys/arch/cobalt/include/param.h
1.4 -> 1.5 syssrc/sys/arch/evbsh3/include/param.h
1.2 -> 1.3 syssrc/sys/arch/hpcmips/include/param.h
1.40 -> 1.41 syssrc/sys/arch/i386/include/param.h
1.7 -> 1.8 syssrc/sys/arch/m68k/include/param.h
1.9 -> 1.10 syssrc/sys/arch/macppc/include/param.h
1.4 -> 1.5 syssrc/sys/arch/mmeye/include/param.h
1.6 -> 1.7 syssrc/sys/arch/newsmips/include/param.h
1.7 -> 1.8 syssrc/sys/arch/ofppc/include/param.h
1.23 -> 1.24 syssrc/sys/arch/pc532/include/param.h
1.32 -> 1.33 syssrc/sys/arch/pmax/include/param.h
1.7 -> 1.8 syssrc/sys/arch/powerpc/include/param.h
1.1 -> 1.2 syssrc/sys/arch/prep/include/param.h
1.1 -> 1.2 syssrc/sys/arch/sgimips/include/param.h
1.3 -> 1.4 syssrc/sys/arch/sh3/include/param.h
1.44 -> 1.45 syssrc/sys/arch/sparc/include/param.h
1.21 -> 1.22 syssrc/sys/arch/sparc64/include/param.h
1.43 -> 1.44 syssrc/sys/arch/vax/include/param.h
 1.2.4.1 21-Jun-2001  nathanw Catch up to -current.
 1.2.2.2 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.2.2.1 30-Jun-2000  bouyer file param.h was added on branch thorpej_scsipi on 2000-11-20 20:23:00 +0000
 1.4.152.1 05-Mar-2011  rmind sync with head
 1.4.150.1 17-Aug-2010  uebayasi Sync with HEAD.
 1.4.130.1 11-Aug-2010  yamt sync with head.
 1.4.8.2 17-Jun-2001  nonaka NEWPMAP
 1.4.8.1 17-Jun-2001  nonaka file param.h was added on branch nathanw_sa on 2001-06-17 16:01:30 +0000
 1.5.6.1 23-Jun-2011  cherry Catchup with rmind-uvmplock merge.
 1.1 29-Feb-2000  nonaka branches: 1.1.6;
Initial import prep port.
 1.1.6.2 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.1.6.1 29-Feb-2000  bouyer file pcb.h was added on branch thorpej_scsipi on 2000-11-20 20:23:00 +0000
 1.2 21-Nov-2001  soren prep has no special dependencies on pccons; remove.
 1.1 29-Feb-2000  nonaka branches: 1.1.6; 1.1.10; 1.1.14;
Initial import prep port.
 1.1.14.1 28-Feb-2002  nathanw Catch up to -current.
 1.1.10.1 10-Jan-2002  thorpej Sync kqueue branch with -current.
 1.1.6.2 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.1.6.1 29-Feb-2000  bouyer file pccons.h was added on branch thorpej_scsipi on 2000-11-20 20:23:00 +0000
 1.18 22-Jun-2011  matt Add support pci_intr_setattr.
Export non-inline version of pci api for modules (_MODULE is defined).
Fix definition of pc_conf_hook and pc_conf_interrupt.
Switch to using inlines instead of macros.
Switch ibm4xx to use <powerpc/pci_machdep.h>
 1.17 04-Apr-2011  dyoung Neither pci_dma64_available(), pci_probe_device(), pci_mapreg_map(9),
pci_find_rom(), pci_intr_map(9), pci_enumerate_bus(), nor the match
predicate passed to pciide_compat_intr_establish() should ever modify
their pci_attach_args argument, so make their pci_attach_args arguments
const and deal with the fallout throughout the kernel.

For the most part, these changes add a 'const' where there was no
'const' before, however, some drivers and MD code used to modify
pci_attach_args. Now those drivers either copy their pci_attach_args
and modify the copy, or refrain from modifying pci_attach_args:

Xen: according to Manuel Bouyer, writing to pci_attach_args in
pci_intr_map() was a leftover from Xen 2. Probably a bug. I
stopped writing it. I have not tested this change.

siside(4): sis_hostbr_match() needlessly wrote to pci_attach_args.
Probably a bug. I use a temporary variable. I have not tested this
change.

slide(4): sl82c105_chip_map() overwrote the caller's pci_attach_args.
Probably a bug. Use a local pci_attach_args. I have not tested
this change.

viaide(4): via_sata_chip_map() and via_sata_chip_map_new() overwrote the
caller's pci_attach_args. Probably a bug. Make a local copy of the
caller's pci_attach_args and modify the copy. I have not tested
this change.

While I'm here, make pci_mapreg_submap() static.

With these changes in place, I have tested the compilation of these
kernels:

alpha GENERIC
amd64 GENERIC XEN3_DOM0
arc GENERIC
atari HADES MILAN-PCIIDE
bebox GENERIC
cats GENERIC
cobalt GENERIC
evbarm-eb NSLU2
evbarm-el ADI_BRH ARMADILLO9 CP3100 GEMINI GEMINI_MASTER GEMINI_SLAVE GUMSTIX
HDL_G IMX31LITE INTEGRATOR IQ31244 IQ80310 IQ80321 IXDP425 IXM1200
KUROBOX_PRO LUBBOCK MARVELL_NAS NAPPI SHEEVAPLUG SMDK2800 TEAMASA_NPWR
TEAMASA_NPWR_FC TS7200 TWINTAIL ZAO425
evbmips-el AP30 DBAU1500 DBAU1550 MALTA MERAKI MTX-1 OMSAL400 RB153 WGT624V3
evbmips64-el XLSATX
evbppc EV64260 MPC8536DS MPC8548CDS OPENBLOCKS200 OPENBLOCKS266
OPENBLOCKS266_OPT P2020RDB PMPPC RB800 WALNUT
hp700 GENERIC
i386 ALL XEN3_DOM0 XEN3_DOMU
ibmnws GENERIC
macppc GENERIC
mvmeppc GENERIC
netwinder GENERIC
ofppc GENERIC
prep GENERIC
sandpoint GENERIC
sgimips GENERIC32_IP2x
sparc GENERIC_SUN4U KRUPS
sparc64 GENERIC

As of Sun Apr 3 15:26:26 CDT 2011, I could not compile these kernels
with or without my patches in place:

### evbmips-el GDIUM

nbmake: nbmake: don't know how to make /home/dyoung/pristine-nbsd/src/sys/arch/mips/mips/softintr.c. Stop

### evbarm-el MPCSA_GENERIC
src/sys/arch/evbarm/conf/MPCSA_GENERIC:318: ds1672rtc*: unknown device `ds1672rtc'

### ia64 GENERIC

/tmp/genassym.28085/assym.c: In function 'f111':
/tmp/genassym.28085/assym.c:67: error: invalid application of 'sizeof' to incomplete type 'struct pcb'
/tmp/genassym.28085/assym.c:76: error: dereferencing pointer to incomplete type

### sgimips GENERIC32_IP3x

crmfb.o: In function `crmfb_attach':
crmfb.c:(.text+0x2304): undefined reference to `ddc_read_edid'
crmfb.c:(.text+0x2304): relocation truncated to fit: R_MIPS_26 against `ddc_read_edid'
crmfb.c:(.text+0x234c): undefined reference to `edid_parse'
crmfb.c:(.text+0x234c): relocation truncated to fit: R_MIPS_26 against `edid_parse'
crmfb.c:(.text+0x2354): undefined reference to `edid_print'
crmfb.c:(.text+0x2354): relocation truncated to fit: R_MIPS_26 against `edid_print'
 1.16 13-Dec-2010  matt branches: 1.16.2;
Change definition of pc_bus_maxdevs to get a void * instead a pci_chipset_tag_t
to match its use in pci_bus_maxdevs. This makes it the same as pci_conf_read
and pci_conf_write.
Change all struct device * to device_t.
[Obviously nothing ever used the first argument to pc_bus_maxdevs since it
could have never worked because it wasn't being passed a pci_chipset_tag_t.]
 1.15 28-Apr-2008  martin branches: 1.15.22; 1.15.26;
Remove clause 3 and 4 from TNF licenses
 1.14 17-Oct-2007  garbled branches: 1.14.16; 1.14.18; 1.14.20;
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.13 09-Jun-2006  garbled branches: 1.13.16; 1.13.24; 1.13.34; 1.13.36; 1.13.38; 1.13.40;
Completely rework how we look up PCI interrupts on prep:

1) Rather than build an array of the pci->intr mappings, build a proplib
tree.
2) add a SIMPLEQ of device properties to the pci_chipset_tag to hold the
proplib trees of each bus.
3) Move the interrupt routing code from pci_conf_interrupt to pci_map_intr()
4) Deal properly with non-native PCI bridge chips that are not recognized
by the prep firmware, and therefore are not noted in the residual data.

The major win of this restructure is #4. Hopefully I haven't broken
anything. Tested on a 7248-100, 7043-140 and 7024-E20.
 1.12 09-Mar-2006  garbled branches: 1.12.4;
Prep super-commit:

1) create new pnpbus psuedo bus. This is a bus layer that reads the PNP
tree from the residual data and allows attachment of devices with the
information given therein. Based loosely on i386/pnpbios.

2) Delete obio bus, as with the pnp bus we no longer need it.

3) Create a number of functions that gather the information needed to set
up the machine from the residual data, rather than hardcoding it in.

4) Create a quirk table for machines that are bizzare enough that the
residual information is not sufficient. (such as the 6015)

5) Using the data gathering routines and the quirk table, delete struct
platform completely from the architecture. Prep is now almost completely
dynamic in figuring out the machine it is running on and setting things
up properly.

6) Add a wdc_pnpbus driver which attaches the wdc controller found on
some 7248's and the 6015. This replaces the now-defunct wdc_obio.

7) delete all the mot_* and ibm_* files, and replace them with a single
ibm_machdep.c which only contains the quirk functions for the 6015 and
the 6050.

8) Modify GENERIC to work with all this stuff.
 1.11 11-Dec-2005  christos branches: 1.11.4; 1.11.6; 1.11.8; 1.11.10;
merge ktrace-lwp.
 1.10 29-Jul-2004  drochner branches: 1.10.12;
remove now unnecessary "pci_enumerate_bus" definitions
 1.9 15-May-2002  thorpej branches: 1.9.10;
Let machine-dependent code specify how to enumerate the bus.
Currently, everyone uses pci_enumerate_bus_generic().
 1.8 25-Feb-2002  kleink Declare the id argument to pci_conf_hook(9) as pcireg_t, which is more
appropriate.
 1.7 24-Feb-2002  kleink In order to support both indirect PCI configuration space access as well
as direct-mapped PCI configuration space access (such as implemented on
the IBM 27-82650 PCI Host Bridge), switch to a function vector based
PCI configuration space access implementation. The appropriate PCI
chipset tag is provided by platform-specific code.
 1.6 26-Aug-2001  matt branches: 1.6.6;
Make all powerpc ports use a common Makefile.powerpc (except walnut)
Enforce -Wmissing-prototypes -Wstrict-prototypes for all ppc ports.
Split out macppc cpu support and make common to mpc6xx ports. Make
other mpc6xx ports use it. Add evcnts for mpc6xx traps.
 1.5 15-Jun-2001  nonaka branches: 1.5.2;
Use new common bus.h framework.
 1.4 28-Dec-2000  sommerfeld branches: 1.4.2;
Change pci_intr_map to get interrupt source information from a "struct
pci_attach_args *" instead of from four separate parameters which in
all cases were extracted from the same "struct pci_attach_args".

This both simplifies the driver api, and allows for alternate PCI
interrupt mapping schemes, such as one using the tables described in
the Intel Multiprocessor Spec which describe interrupt wirings for
devices behind pci-pci bridges based on the device's location rather
the bridge's location.

Tested on alpha and i386; welcome to 1.5Q
 1.3 04-Jun-2000  cgd branches: 1.3.4;
Implement the more flexiable `evcnt' interface as discussed (briefly) on
tech-kern and now documented in evcnt(9).
 1.2 01-Jun-2000  cgd kill __P in these files. (I had to look at them anyway with an eye for
adding some protos... and adding them with __P seems wrong, but mixing
__P and not __P in the same file seems wrong too, so...)
 1.1 29-Feb-2000  nonaka branches: 1.1.2;
Initial import prep port.
 1.1.2.1 22-Jun-2000  minoura Sync w/ netbsd-1-5-base.
 1.3.4.3 05-Jan-2001  bouyer Sync with HEAD
 1.3.4.2 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.3.4.1 04-Jun-2000  bouyer file pci_machdep.h was added on branch thorpej_scsipi on 2000-11-20 20:23:00 +0000
 1.4.2.1 21-Jun-2001  nathanw Catch up to -current.
 1.5.2.3 23-Jun-2002  jdolecek catch up with -current on kqueue branch
 1.5.2.2 16-Mar-2002  jdolecek Catch up with -current.
 1.5.2.1 13-Sep-2001  thorpej Update the kqueue branch to HEAD.
 1.6.6.3 20-Jun-2002  nathanw Catch up to -current.
 1.6.6.2 28-Feb-2002  nathanw Catch up to -current.
 1.6.6.1 26-Aug-2001  nathanw file pci_machdep.h was added on branch nathanw_sa on 2002-02-28 04:11:29 +0000
 1.9.10.3 21-Sep-2004  skrll Fix the sync with head I botched.
 1.9.10.2 18-Sep-2004  skrll Sync with HEAD.
 1.9.10.1 03-Aug-2004  skrll Sync with HEAD
 1.10.12.2 27-Oct-2007  yamt sync with head.
 1.10.12.1 21-Jun-2006  yamt sync with head.
 1.11.10.1 19-Apr-2006  elad sync with head - hopefully this will work
 1.11.8.2 26-Jun-2006  yamt sync with head.
 1.11.8.1 13-Mar-2006  yamt sync with head.
 1.11.6.1 22-Apr-2006  simonb Sync with head.
 1.11.4.1 09-Sep-2006  rpaulo sync with head
 1.12.4.1 19-Jun-2006  chap Sync with head.
 1.13.40.1 25-Oct-2007  bouyer Sync with HEAD.
 1.13.38.1 18-Oct-2007  yamt sync with head.
 1.13.36.1 06-Nov-2007  matt sync with HEAD
 1.13.34.1 26-Oct-2007  joerg Sync with HEAD.

Follow the merge of pmap.c on i386 and amd64 and move
pmap_init_tmp_pgtbl into arch/x86/x86/pmap.c. Modify the ACPI wakeup
code to restore CR4 before jumping back into kernel space as the large
page option might cover that.
 1.13.24.1 01-May-2007  garbled Convert prep to use the new generic powerpc PCI stuff. There are
probably a few more things that can be made generic here. Tested on
7248-100.
 1.13.16.1 23-Oct-2007  ad Sync with head.
 1.14.20.1 16-May-2008  yamt sync with head.
 1.14.18.1 18-May-2008  yamt sync with head.
 1.14.16.1 02-Jun-2008  mjf Sync with HEAD.
 1.15.26.1 07-Jan-2011  matt Change bus_maxdevs to be passed pc->pc_conf_v instead pc (e.g. like the
rest of the conf calls).
 1.15.22.2 21-Apr-2011  rmind sync with head
 1.15.22.1 05-Mar-2011  rmind sync with head
 1.16.2.1 06-Jun-2011  jruoho Sync with HEAD.
 1.2 28-Apr-2008  martin Remove clause 3 and 4 from TNF licenses
 1.1 30-May-2006  garbled branches: 1.1.2; 1.1.6; 1.1.8; 1.1.10; 1.1.16; 1.1.70; 1.1.72; 1.1.74;
Rewrite the pci bus attribute decodings to be human-readable by using the
proper pcipnp structure file to read them rather than magical array offsets.

Add more complete decoding of the VPD, including extendedvpd, and TLB. While
I was here, fix a bug where we never printed the L1 cache data properly.
 1.1.74.1 16-May-2008  yamt sync with head.
 1.1.72.1 18-May-2008  yamt sync with head.
 1.1.70.1 02-Jun-2008  mjf Sync with HEAD.
 1.1.16.2 09-Sep-2006  rpaulo sync with head
 1.1.16.1 30-May-2006  rpaulo file pcipnp.h was added on branch rpaulo-netinet-merge-pcb on 2006-09-09 02:42:35 +0000
 1.1.10.2 26-Jun-2006  yamt sync with head.
 1.1.10.1 30-May-2006  yamt file pcipnp.h was added on branch yamt-pdpolicy on 2006-06-26 12:45:14 +0000
 1.1.8.2 21-Jun-2006  yamt sync with head.
 1.1.8.1 30-May-2006  yamt file pcipnp.h was added on branch yamt-lazymbuf on 2006-06-21 14:55:11 +0000
 1.1.6.2 19-Jun-2006  chap Sync with head.
 1.1.6.1 30-May-2006  chap file pcipnp.h was added on branch chap-midi on 2006-06-19 03:44:53 +0000
 1.1.2.2 01-Jun-2006  kardel Sync with head.
 1.1.2.1 30-May-2006  kardel file pcipnp.h was added on branch simonb-timecounters on 2006-06-01 22:35:16 +0000
 1.2 05-Feb-2001  briggs Share a single pio.h instead of having 4 nearly-identical copies.
 1.1 29-Feb-2000  nonaka branches: 1.1.6;
Initial import prep port.
 1.1.6.3 11-Feb-2001  bouyer Sync with HEAD.
 1.1.6.2 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.1.6.1 29-Feb-2000  bouyer file pio.h was added on branch thorpej_scsipi on 2000-11-20 20:23:01 +0000
 1.17 18-Jun-2011  matt struct device * -> device_t
struct cfdata * -> cfdata_t
use device accessors, use device_private.
some softc/device_t splits (macppc needs a bunch more)
aprint*_dev used considerably more
 1.16 28-Apr-2008  martin branches: 1.16.32;
Remove clause 3 and 4 from TNF licenses
 1.15 17-Oct-2007  garbled branches: 1.15.16; 1.15.18; 1.15.20;
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.14 27-Jun-2006  garbled branches: 1.14.14; 1.14.22; 1.14.32; 1.14.34; 1.14.36; 1.14.38;
General fixups:
1) Fix support for the powerstack E1. This machine needs to use the 8259
directly, and cannot use the prep interrupt vector register. Place a
quirk entry in the table for the machine.
2) Add a new com0_vreset boot image. The vreset code only works on a few
machines, and breaks others like the 7025-F40. Its only limitedly useful
when used with the com0, so just make it an optional image the user can
install by hand if they want.
3) Bump the bootloader to 1.8 with the above change.
 1.13 09-Jun-2006  garbled branches: 1.13.2;
Completely rework how we look up PCI interrupts on prep:

1) Rather than build an array of the pci->intr mappings, build a proplib
tree.
2) add a SIMPLEQ of device properties to the pci_chipset_tag to hold the
proplib trees of each bus.
3) Move the interrupt routing code from pci_conf_interrupt to pci_map_intr()
4) Deal properly with non-native PCI bridge chips that are not recognized
by the prep firmware, and therefore are not noted in the residual data.

The major win of this restructure is #4. Hopefully I haven't broken
anything. Tested on a 7248-100, 7043-140 and 7024-E20.
 1.12 09-Mar-2006  garbled branches: 1.12.4;
Prep super-commit:

1) create new pnpbus psuedo bus. This is a bus layer that reads the PNP
tree from the residual data and allows attachment of devices with the
information given therein. Based loosely on i386/pnpbios.

2) Delete obio bus, as with the pnp bus we no longer need it.

3) Create a number of functions that gather the information needed to set
up the machine from the residual data, rather than hardcoding it in.

4) Create a quirk table for machines that are bizzare enough that the
residual information is not sufficient. (such as the 6015)

5) Using the data gathering routines and the quirk table, delete struct
platform completely from the architecture. Prep is now almost completely
dynamic in figuring out the machine it is running on and setting things
up properly.

6) Add a wdc_pnpbus driver which attaches the wdc controller found on
some 7248's and the 6015. This replaces the now-defunct wdc_obio.

7) delete all the mot_* and ibm_* files, and replace them with a single
ibm_machdep.c which only contains the quirk functions for the 6015 and
the 6050.

8) Modify GENERIC to work with all this stuff.
 1.11 23-Feb-2006  garbled branches: 1.11.2; 1.11.4;
Commit support for the IBM Model 7024 E20 and E30. (E30 not tested).

Changes:
Added a pci-EISA bridge device and associated glue to the prep port.
Adapted from i386.
Change pci_intr_fixup_*() to pass the pin argument on all platforms.
Make PCI_NETBSD_CONFIGURE leave the MPIC alone. We map it separately.

7024 kernel was also succ. tested on an IBM 7043, so no regression there.
 1.10 11-Dec-2005  christos branches: 1.10.2; 1.10.4; 1.10.6;
merge ktrace-lwp.
 1.9 13-Jan-2005  kleink branches: 1.9.10;
Pass the interrupt swizzle down to the platforms' fixup functions.
N.B. Only using it on the ulmb60xa for now.
 1.8 26-Jun-2004  kleink Add platform support for the IBM RS/6000 6015 a/k/a 7020-001 a/k/a 40P.
 1.7 16-Jan-2003  matt branches: 1.7.2;
Add platform support for the IBM PPS Model 6040 (E) (aka ThinkPad 820).
 1.6 30-May-2002  nonaka Support IBM RS/6000 43P 7043-140.
 1.5 02-May-2002  nonaka branches: 1.5.2;
Added IBM Personal Power Series 830 IDE controller support.
 1.4 02-May-2002  nonaka rename reset_ibm_generic() -> reset_prep_generic().
 1.3 26-Feb-2002  kleink Add platform support for the Motorola Ultra Plus and Ultra 60x boards.

Note that this currently matches only the boards built into Bull Estrella
systems, as Bull chose to change the board identification string whose
original content is not known at this time.
 1.2 24-Feb-2002  kleink In order to support both indirect PCI configuration space access as well
as direct-mapped PCI configuration space access (such as implemented on
the IBM 27-82650 PCI Host Bridge), switch to a function vector based
PCI configuration space access implementation. The appropriate PCI
chipset tag is provided by platform-specific code.
 1.1 20-Jun-2001  nonaka branches: 1.1.2; 1.1.8;
Seprate model depended code. (based on arc 'struct platform')

files.prep:
- add new files entry.

pci_machdep.c:
- use dev/pci/pciconf.c instead of mine for pci io/mem addr/intr fixup.

cpu.c:
- separate code

machdep.c:
- call ident_platform()

mainbus.c:
- call pci_configure_bus(), if defined PCI_NETBSD_CONFIGURE

ibm_machdep.c:
- for IBM PReP generic

ibm_6050.c:
- for IBM Personal Power Series 830/850

ibm_7248.c:
- for IBM RS6000/43P deppendency
 1.1.8.4 17-Jan-2003  thorpej Sync with HEAD.
 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 20-Jun-2001  nathanw file platform.h was added on branch nathanw_sa on 2002-02-28 04:11:29 +0000
 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.5.2.1 15-Jul-2002  gehenna catch up with -current.
 1.7.2.4 17-Jan-2005  skrll Sync with HEAD.
 1.7.2.3 21-Sep-2004  skrll Fix the sync with head I botched.
 1.7.2.2 18-Sep-2004  skrll Sync with HEAD.
 1.7.2.1 03-Aug-2004  skrll Sync with HEAD
 1.9.10.3 27-Oct-2007  yamt sync with head.
 1.9.10.2 30-Dec-2006  yamt sync with head.
 1.9.10.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 01-Mar-2006  yamt sync with head.
 1.11.4.1 19-Apr-2006  elad sync with head - hopefully this will work
 1.11.2.3 11-Aug-2006  yamt sync with head
 1.11.2.2 26-Jun-2006  yamt sync with head.
 1.11.2.1 13-Mar-2006  yamt sync with head.
 1.12.4.1 19-Jun-2006  chap Sync with head.
 1.13.2.1 13-Jul-2006  gdamore Merge from HEAD.
 1.14.38.1 25-Oct-2007  bouyer Sync with HEAD.
 1.14.36.1 18-Oct-2007  yamt sync with head.
 1.14.34.1 06-Nov-2007  matt sync with HEAD
 1.14.32.1 26-Oct-2007  joerg Sync with HEAD.

Follow the merge of pmap.c on i386 and amd64 and move
pmap_init_tmp_pgtbl into arch/x86/x86/pmap.c. Modify the ACPI wakeup
code to restore CR4 before jumping back into kernel space as the large
page option might cover that.
 1.14.22.1 01-May-2007  garbled Convert prep to use the new generic powerpc PCI stuff. There are
probably a few more things that can be made generic here. Tested on
7248-100.
 1.14.14.1 23-Oct-2007  ad Sync with head.
 1.15.20.1 16-May-2008  yamt sync with head.
 1.15.18.1 18-May-2008  yamt sync with head.
 1.15.16.1 02-Jun-2008  mjf Sync with HEAD.
 1.16.32.1 23-Jun-2011  cherry Catchup with rmind-uvmplock merge.
 1.5 03-Feb-2003  matt Rename PPC_MPC6XX to PPC_OEA (and any mpc6xx reference to oea).
 1.4 03-Feb-2003  matt More cleanup for OLDPMAP.
 1.3 09-Mar-2002  chs switch all mpc6xx powerpc ports to NEWPMAP by default.
the old pmap is still available with the OLDPMAP option.
 1.2 17-Jun-2001  nonaka branches: 1.2.2; 1.2.8;
NEWPMAP
 1.1 29-Feb-2000  nonaka branches: 1.1.6; 1.1.8;
Initial import prep port.
 1.1.8.1 21-Jun-2001  nathanw Catch up to -current.
 1.1.6.2 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.1.6.1 29-Feb-2000  bouyer file pmap.h was added on branch thorpej_scsipi on 2000-11-20 20:23:01 +0000
 1.2.8.2 01-Apr-2002  nathanw Catch up to -current.
(CVS: It's not just a program. It's an adventure!)
 1.2.8.1 17-Jun-2001  nathanw file pmap.h was added on branch nathanw_sa on 2002-04-01 07:42:11 +0000
 1.2.2.1 16-Mar-2002  jdolecek Catch up with -current.
 1.2 12-Jul-2018  maxv Remove the kernel PMC code. Sent yesterday on tech-kern@.

This change:

* Removes "options PERFCTRS", the associated includes, and the associated
ifdefs. In doing so, it removes several XXXSMPs in the MI code, which is
good.

* Removes the PMC code of ARM XSCALE.

* Removes all the pmc.h files. They were all empty, except for ARM XSCALE.

* Reorders the x86 PMC code not to rely on the legacy pmc.h file. The
definitions are put in sysarch.h.

* Removes the kern/sys_pmc.c file, and along with it, the sys_pmc_control
and sys_pmc_get_info syscalls. They are marked as OBSOL in kern,
netbsd32 and rump.

* Removes the pmc_evid_t and pmc_ctr_t types.

* Removes all the associated man pages. The sets are marked as obsolete.
 1.1 07-Aug-2002  briggs branches: 1.1.2; 1.1.4; 1.1.6; 1.1.202; 1.1.204;
Implement pmc(9) -- An interface to hardware performance monitoring
counters. These counters do not exist on all CPUs, but where they
do exist, can be used for counting events such as dcache misses that
would otherwise be difficult or impossible to instrument by code
inspection or hardware simulation.

pmc(9) is meant to be a general interface. Initially, the Intel XScale
counters are the only ones supported.
 1.1.204.1 10-Jun-2019  christos Sync with HEAD
 1.1.202.1 28-Jul-2018  pgoyette Sync with HEAD
 1.1.6.2 06-Sep-2002  jdolecek sync kqueue branch with HEAD
 1.1.6.1 07-Aug-2002  jdolecek file pmc.h was added on branch kqueue on 2002-09-06 08:39:34 +0000
 1.1.4.2 31-Aug-2002  gehenna catch up with -current.
 1.1.4.1 07-Aug-2002  gehenna file pmc.h was added on branch gehenna-devsw on 2002-08-31 13:45:50 +0000
 1.1.2.2 13-Aug-2002  nathanw Catch up to -current.
 1.1.2.1 07-Aug-2002  nathanw file pmc.h was added on branch nathanw_sa on 2002-08-13 02:18:47 +0000
 1.4 01-Dec-2012  mbalmer Fix misspelling of acceptible (it's only acceptable with an 'a', not an 'i').
 1.3 09-Mar-2006  garbled branches: 1.3.102; 1.3.112;
Prep super-commit:

1) create new pnpbus psuedo bus. This is a bus layer that reads the PNP
tree from the residual data and allows attachment of devices with the
information given therein. Based loosely on i386/pnpbios.

2) Delete obio bus, as with the pnp bus we no longer need it.

3) Create a number of functions that gather the information needed to set
up the machine from the residual data, rather than hardcoding it in.

4) Create a quirk table for machines that are bizzare enough that the
residual information is not sufficient. (such as the 6015)

5) Using the data gathering routines and the quirk table, delete struct
platform completely from the architecture. Prep is now almost completely
dynamic in figuring out the machine it is running on and setting things
up properly.

6) Add a wdc_pnpbus driver which attaches the wdc controller found on
some 7248's and the 6015. This replaces the now-defunct wdc_obio.

7) delete all the mot_* and ibm_* files, and replace them with a single
ibm_machdep.c which only contains the quirk functions for the 6015 and
the 6050.

8) Modify GENERIC to work with all this stuff.
 1.2 06-Jan-2003  wiz branches: 1.2.18; 1.2.32; 1.2.34; 1.2.36; 1.2.38;
writable, not writeable.
 1.1 29-Feb-2000  nonaka branches: 1.1.6; 1.1.14;
Initial import prep port.
 1.1.14.1 07-Jan-2003  thorpej Sync with HEAD.
 1.1.6.2 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.1.6.1 29-Feb-2000  bouyer file pnp.h was added on branch thorpej_scsipi on 2000-11-20 20:23:01 +0000
 1.2.38.1 19-Apr-2006  elad sync with head - hopefully this will work
 1.2.36.1 13-Mar-2006  yamt sync with head.
 1.2.34.1 22-Apr-2006  simonb Sync with head.
 1.2.32.1 09-Sep-2006  rpaulo sync with head
 1.2.18.1 21-Jun-2006  yamt sync with head.
 1.3.112.1 25-Feb-2013  tls resync with head
 1.3.102.1 16-Jan-2013  yamt sync with (a bit old) head
 1.5 09-May-2006  garbled de-__P these files.
 1.4 11-Dec-2005  christos branches: 1.4.4; 1.4.6; 1.4.8; 1.4.10; 1.4.12;
merge ktrace-lwp.
 1.3 23-Oct-2004  thorpej branches: 1.3.12;
Centralize the declaration of booted_device and booted_partition.
 1.2 01-Jun-2000  matt branches: 1.2.4; 1.2.28;
Make booted_device global (and booted_parition for consitency).
Eliminate it from header files and other extern definitions.
 1.1 29-Feb-2000  nonaka branches: 1.1.2;
Initial import prep port.
 1.1.2.1 22-Jun-2000  minoura Sync w/ netbsd-1-5-base.
 1.2.28.1 02-Nov-2004  skrll Sync with HEAD.
 1.2.4.2 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.2.4.1 01-Jun-2000  bouyer file powerpc.h was added on branch thorpej_scsipi on 2000-11-20 20:23:01 +0000
 1.3.12.1 21-Jun-2006  yamt sync with head.
 1.4.12.1 24-May-2006  tron Merge 2006-05-24 NetBSD-current into the "peter-altq" branch.
 1.4.10.1 11-May-2006  elad sync with head
 1.4.8.1 24-May-2006  yamt sync with head.
 1.4.6.1 01-Jun-2006  kardel Sync with head.
 1.4.4.1 09-Sep-2006  rpaulo sync with head
 1.2 19-Jun-2001  nonaka Back out last changes.
 1.1 17-Jun-2001  nonaka identified prep model.
 1.1 29-Feb-2000  nonaka branches: 1.1.6;
Initial import prep port.
 1.1.6.2 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.1.6.1 29-Feb-2000  bouyer file proc.h was added on branch thorpej_scsipi on 2000-11-20 20:23:01 +0000
 1.1 29-Feb-2000  nonaka branches: 1.1.6;
Initial import prep port.
 1.1.6.2 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.1.6.1 29-Feb-2000  bouyer file profile.h was added on branch thorpej_scsipi on 2000-11-20 20:23:01 +0000
 1.1 29-Feb-2000  nonaka branches: 1.1.6;
Initial import prep port.
 1.1.6.2 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.1.6.1 29-Feb-2000  bouyer file psl.h was added on branch thorpej_scsipi on 2000-11-20 20:23:01 +0000
 1.1 29-Feb-2000  nonaka branches: 1.1.6;
Initial import prep port.
 1.1.6.2 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.1.6.1 29-Feb-2000  bouyer file pte.h was added on branch thorpej_scsipi on 2000-11-20 20:23:02 +0000
 1.1 29-Feb-2000  nonaka branches: 1.1.6;
Initial import prep port.
 1.1.6.2 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.1.6.1 29-Feb-2000  bouyer file ptrace.h was added on branch thorpej_scsipi on 2000-11-20 20:23:02 +0000
 1.1 29-Feb-2000  nonaka branches: 1.1.6;
Initial import prep port.
 1.1.6.2 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.1.6.1 29-Feb-2000  bouyer file reg.h was added on branch thorpej_scsipi on 2000-11-20 20:23:02 +0000
 1.1 29-Feb-2000  nonaka branches: 1.1.6;
Initial import prep port.
 1.1.6.2 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.1.6.1 29-Feb-2000  bouyer file reloc.h was added on branch thorpej_scsipi on 2000-11-20 20:23:02 +0000
 1.4 25-May-2006  garbled Implement partial support for the RS6K PCI Bridge found on 7025-F40
models. This code was made possible by assistance from Cory Bajus.

Add code that asks the PCI bridge what it's config base address is, and
use that when wiring up an indirect bridge type.
Move prep's user segment register to 10, because the 7025's PCI config
address is at 11, where the user segment used to be.
Add a battable entry for 0xbf800000 for machines with RS6K bridges.

There is still probably work left to be done before a 7025-F40 is fully
supported.
 1.3 09-Mar-2006  garbled branches: 1.3.4;
Prep super-commit:

1) create new pnpbus psuedo bus. This is a bus layer that reads the PNP
tree from the residual data and allows attachment of devices with the
information given therein. Based loosely on i386/pnpbios.

2) Delete obio bus, as with the pnp bus we no longer need it.

3) Create a number of functions that gather the information needed to set
up the machine from the residual data, rather than hardcoding it in.

4) Create a quirk table for machines that are bizzare enough that the
residual information is not sufficient. (such as the 6015)

5) Using the data gathering routines and the quirk table, delete struct
platform completely from the architecture. Prep is now almost completely
dynamic in figuring out the machine it is running on and setting things
up properly.

6) Add a wdc_pnpbus driver which attaches the wdc controller found on
some 7248's and the 6015. This replaces the now-defunct wdc_obio.

7) delete all the mot_* and ibm_* files, and replace them with a single
ibm_machdep.c which only contains the quirk functions for the 6015 and
the 6050.

8) Modify GENERIC to work with all this stuff.
 1.2 13-Feb-2004  wiz branches: 1.2.16; 1.2.30; 1.2.32; 1.2.34; 1.2.36;
Uppercase CPU, plural is CPUs.
 1.1 29-Feb-2000  nonaka branches: 1.1.6; 1.1.30;
Initial import prep port.
 1.1.30.1 03-Aug-2004  skrll Sync with HEAD
 1.1.6.2 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.1.6.1 29-Feb-2000  bouyer file residual.h was added on branch thorpej_scsipi on 2000-11-20 20:23:02 +0000
 1.2.36.1 19-Apr-2006  elad sync with head - hopefully this will work
 1.2.34.2 26-Jun-2006  yamt sync with head.
 1.2.34.1 13-Mar-2006  yamt sync with head.
 1.2.32.2 01-Jun-2006  kardel Sync with head.
 1.2.32.1 22-Apr-2006  simonb Sync with head.
 1.2.30.1 09-Sep-2006  rpaulo sync with head
 1.2.16.1 21-Jun-2006  yamt sync with head.
 1.3.4.1 19-Jun-2006  chap Sync with head.
 1.2 05-Feb-2003  nakayama Replace machine/rnd.h with more appropriate name to share it
with cycle counter based microtime in kern/kern_microtime.c.
 1.1 11-Jun-2000  tsubai branches: 1.1.4; 1.1.6;
Add cpu_counter().
 1.1.6.2 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.1.6.1 11-Jun-2000  bouyer file rnd.h was added on branch thorpej_scsipi on 2000-11-20 20:23:02 +0000
 1.1.4.2 22-Jun-2000  minoura Sync w/ netbsd-1-5-base.
 1.1.4.1 11-Jun-2000  minoura file rnd.h was added on branch minoura-xpg4dl on 2000-06-22 17:02:51 +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.2 28-Jan-2007  ad powerpc changes.
 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:07:58 +0000
 1.1 29-Feb-2000  nonaka branches: 1.1.6;
Initial import prep port.
 1.1.6.2 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.1.6.1 29-Feb-2000  bouyer file setjmp.h was added on branch thorpej_scsipi on 2000-11-20 20:23:02 +0000
 1.1 29-Feb-2000  nonaka branches: 1.1.6;
Initial import prep port.
 1.1.6.2 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.1.6.1 29-Feb-2000  bouyer file signal.h was added on branch thorpej_scsipi on 2000-11-20 20:23:03 +0000
 1.1 23-Jul-2014  alnsn branches: 1.1.2; 1.1.6;
Rename sljitarch.h to sljit_machdep.h.
 1.1.6.2 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.1.6.1 23-Jul-2014  tls file sljit_machdep.h was added on branch tls-maxphys on 2014-08-20 00:03:20 +0000
 1.1.2.2 10-Aug-2014  tls Rebase.
 1.1.2.1 23-Jul-2014  tls file sljit_machdep.h was added on branch tls-earlyentropy on 2014-08-10 06:54:06 +0000
 1.2 23-Jul-2014  alnsn Rename sljitarch.h to sljit_machdep.h.
 1.1 17-Nov-2013  alnsn branches: 1.1.2; 1.1.4; 1.1.6;
Enable sljit and bpfjit on powerpc.
 1.1.6.2 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.1.6.1 17-Nov-2013  yamt file sljitarch.h was added on branch yamt-pagecache on 2014-05-22 11:40:05 +0000
 1.1.4.2 18-May-2014  rmind sync with head
 1.1.4.1 17-Nov-2013  rmind file sljitarch.h was added on branch rmind-smpnet on 2014-05-18 17:45:23 +0000
 1.1.2.1 10-Aug-2014  tls Rebase.
 1.1 29-Feb-2000  nonaka branches: 1.1.6;
Initial import prep port.
 1.1.6.2 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.1.6.1 29-Feb-2000  bouyer file spkr.h was added on branch thorpej_scsipi on 2000-11-20 20:23:03 +0000
 1.5 02-Mar-2010  matt Add missing <powerpc/FOO/spr.h> to a few files missed on the first pass.
Don't export <machine/spr.h> to userland, only <powerpc/spr.h>
 1.4 11-Dec-2005  christos branches: 1.4.78; 1.4.92; 1.4.98;
merge ktrace-lwp.
 1.3 17-Feb-2005  briggs branches: 1.3.2;
Add (back) spr.h
 1.2 02-Mar-2004  kleink branches: 1.2.2; 1.2.4;
Pull in SPRs via <powerpc/spr.h> in this single instance, and dispose of
<machine/spr.h> again.
 1.1 30-Dec-2003  manu Fix PowerPC ports build with KGDB.
 1.2.4.1 19-Mar-2005  yamt sync with head. xen and whitespace. xen part is not finished.
 1.2.2.1 29-Apr-2005  kent sync with -current
 1.3.2.2 17-Feb-2005  skrll Sync with HEAD.
 1.3.2.1 17-Feb-2005  skrll file spr.h was added on branch ktrace-lwp on 2005-02-17 07:10:37 +0000
 1.4.98.1 30-Apr-2010  uebayasi Sync with HEAD.
 1.4.92.1 24-Oct-2010  jym Sync with HEAD
 1.4.78.1 11-Mar-2010  yamt sync with head
 1.2 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.1 29-Feb-2000  nonaka branches: 1.1.6;
Initial import prep port.
 1.1.6.2 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.1.6.1 29-Feb-2000  bouyer file stdarg.h was added on branch thorpej_scsipi on 2000-11-20 20:23:03 +0000
 1.1 29-Feb-2000  nonaka branches: 1.1.6;
Initial import prep port.
 1.1.6.2 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.1.6.1 29-Feb-2000  bouyer file trap.h was added on branch thorpej_scsipi on 2000-11-20 20:23:03 +0000
 1.14 01-Apr-2021  simonb Whitespace: #define<tab>
 1.13 17-Jul-2011  dyoung branches: 1.13.66; 1.13.68;
Switch more PowerPC ports having PCI support to new-style <sys/bus.h>.
 1.12 20-Jan-2008  joerg Now that __HAVE_TIMECOUNTER and __HAVE_GENERIC_TODR are invariants,
remove the conditionals and the code associated with the undef case.
 1.11 17-Oct-2007  garbled branches: 1.11.2; 1.11.8;
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.10 14-Jul-2007  ad branches: 1.10.10;
Generic soft interrupts are mandatory.
 1.9 05-Sep-2006  garbled branches: 1.9.12; 1.9.20;
Convert prep to MI todr
 1.8 03-Sep-2006  bjh21 Nothing in the kernel now tests __HAVE_NWSCONS, so stop defining it everywhere.
 1.7 20-Jun-2006  garbled Basic prep timecounter support. This greatly increases the stability of
ntp on my 7248, however, my 7043-140 is still a bit flaky. I suspect the
only way to fix the 7043 is going to be writing a timecounter driver for
the 8254 present on these machines. Either way, this makes some of the
machines better, and the other machines are still about the same as they
were before, so it's a net gain for the port.
 1.6 03-May-2006  garbled branches: 1.6.4;
Generic soft interrupt support for prep. Mostly copied from macppc,
tested on 7248 and 7043.
 1.5 16-Mar-2006  garbled branches: 1.5.2;
More changes to prep port:
1) Add the NVRAM device. This device allows us to speak with the nvram on
prep-based machines and read/write to it. Also add a simple IOCTL
interface for speaking with the nvram from userland. This hasn't been
tested yet, but eventually I plan to support it with the sparc eeprom
command.
2) Change the root device detection to use the nvram device to attempt to
guess the boot device. Most machines should now correctly guess thier
boot device, though I expect a few devices to still not work quite right yet.
3) change the default IRQ to level rather than edge in the pnpbus if the
flags are invalid or empty. (based on output from a PowerStack E1)
4) correctly handle older machines in pnpbus that have FixedIOPorts
rather than variable ones.

Still have much to do.
 1.4 28-Feb-2002  simonb branches: 1.4.32; 1.4.46; 1.4.48; 1.4.50; 1.4.52;
Use "#define<tab>".
 1.3 10-Dec-2001  briggs define __HAVE_NWSCONS for pckbc.
 1.2 21-Nov-2001  soren prep has no special dependencies on pccons; remove.
 1.1 29-Feb-2000  nonaka branches: 1.1.6; 1.1.10; 1.1.14;
Initial import prep port.
 1.1.14.2 01-Apr-2002  nathanw Catch up to -current.
(CVS: It's not just a program. It's an adventure!)
 1.1.14.1 08-Jan-2002  nathanw Catch up to -current.
 1.1.10.2 16-Mar-2002  jdolecek Catch up with -current.
 1.1.10.1 10-Jan-2002  thorpej Sync kqueue branch with -current.
 1.1.6.2 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.1.6.1 29-Feb-2000  bouyer file types.h was added on branch thorpej_scsipi on 2000-11-20 20:23:03 +0000
 1.4.52.2 11-May-2006  elad sync with head
 1.4.52.1 19-Apr-2006  elad sync with head - hopefully this will work
 1.4.50.4 14-Sep-2006  yamt sync with head.
 1.4.50.3 26-Jun-2006  yamt sync with head.
 1.4.50.2 24-May-2006  yamt sync with head.
 1.4.50.1 01-Apr-2006  yamt sync with head.
 1.4.48.2 01-Jun-2006  kardel Sync with head.
 1.4.48.1 22-Apr-2006  simonb Sync with head.
 1.4.46.1 09-Sep-2006  rpaulo sync with head
 1.4.32.4 21-Jan-2008  yamt sync with head
 1.4.32.3 03-Sep-2007  yamt sync with head.
 1.4.32.2 30-Dec-2006  yamt sync with head.
 1.4.32.1 21-Jun-2006  yamt sync with head.
 1.5.2.1 24-May-2006  tron Merge 2006-05-24 NetBSD-current into the "peter-altq" branch.
 1.6.4.1 13-Jul-2006  gdamore Merge from HEAD.
 1.9.20.1 03-Oct-2007  garbled Sync with HEAD
 1.9.12.1 15-Jul-2007  ad Sync with head.
 1.10.10.2 23-Mar-2008  matt sync with HEAD
 1.10.10.1 06-Nov-2007  matt sync with HEAD
 1.11.8.1 23-Jan-2008  bouyer Sync with HEAD.
 1.11.2.1 18-Feb-2008  mjf Sync with HEAD.
 1.13.68.1 03-Apr-2021  thorpej Sync with HEAD.
 1.13.66.1 03-Apr-2021  thorpej Sync with HEAD.
 1.2 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.1 29-Feb-2000  nonaka branches: 1.1.6;
Initial import prep port.
 1.1.6.2 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.1.6.1 29-Feb-2000  bouyer file varargs.h was added on branch thorpej_scsipi on 2000-11-20 20:23:03 +0000
 1.14 20-Jun-2011  matt Don't export USER_SR if _MODULE is defined.
Add a common <powerpc/vmparam.h> like we have for <powerpc/pmap.h>
 1.13 25-May-2006  garbled branches: 1.13.96;
Implement partial support for the RS6K PCI Bridge found on 7025-F40
models. This code was made possible by assistance from Cory Bajus.

Add code that asks the PCI bridge what it's config base address is, and
use that when wiring up an indirect bridge type.
Move prep's user segment register to 10, because the 7025's PCI config
address is at 11, where the user segment used to be.
Add a battable entry for 0xbf800000 for machines with RS6K bridges.

There is still probably work left to be done before a 7025-F40 is fully
supported.
 1.12 03-Feb-2003  matt branches: 1.12.18; 1.12.32; 1.12.34; 1.12.36; 1.12.42;
Rename PPC_MPC6XX to PPC_OEA (and any mpc6xx reference to oea).
 1.11 02-Feb-2003  matt Remove OLDPMAP support.
 1.10 10-Dec-2002  thorpej Use __LDPGSZ (which must be == USRTEXT) as the text address for a.out
executables, and eliminate the USRTEXT constant, which was only used
by the a.out exec code.
 1.9 31-Jul-2002  matt Use 11 for the USER_SR since we use BAT 12 for PCI MEM space.
 1.8 09-Mar-2002  chs branches: 1.8.6;
switch all mpc6xx powerpc ports to NEWPMAP by default.
the old pmap is still available with the OLDPMAP option.
 1.7 15-Nov-2001  soren MAXSLP is defined to be a machine-independent scheduling parameter,
so move it into sys/param.h.
 1.6 17-Jun-2001  nonaka branches: 1.6.2; 1.6.8;
NEWPMAP
 1.5 01-May-2001  thorpej Per discussion w/ chuck and chuck, restructure the md page stuff
to use a structure called "vm_page_md", and use __HAVE_VM_PAGE_MD
and __HAVE_PMAP_PHYSSEG.
 1.4 29-Apr-2001  thorpej Add a VM_MDPAGE_MEMBERS macro that defines pmap-specific data for
each vm_page structure. Add a VM_MDPAGE_INIT() macro to init this
data when pages are initialized by UVM. These macros are mandatory,
but ports may #define them to nothing if they are not needed/used.

This deprecates struct pmap_physseg. As a transitional measure,
allow a port to #define PMAP_PHYSSEG so that it can continue to
use it until its pmap is converted to use VM_MDPAGE_MEMBERS.

Use all this stuff to eliminate a lot of extra work in the Alpha
pmap module (it's smaller and faster now). Changes to other pmap
modules will follow.
 1.3 30-Dec-2000  tsutsui branches: 1.3.2;
Define VM_MAX_KERNEL_BUF and PAGER_MAP_SIZE (from macppc)
so that the kernel can boot with 128MB memory.

XXX: How can we determine size of the buffer cache on UBC?
 1.2 01-May-2000  kleink branches: 1.2.6;
Bump default data size to 32 MB.
 1.1 29-Feb-2000  nonaka Initial import prep port.
 1.2.6.3 05-Jan-2001  bouyer Sync with HEAD
 1.2.6.2 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.2.6.1 01-May-2000  bouyer file vmparam.h was added on branch thorpej_scsipi on 2000-11-20 20:23:03 +0000
 1.3.2.1 21-Jun-2001  nathanw Catch up to -current.
 1.6.8.5 11-Dec-2002  thorpej Sync with HEAD.
 1.6.8.4 01-Aug-2002  nathanw Catch up to -current.
 1.6.8.3 01-Apr-2002  nathanw Catch up to -current.
(CVS: It's not just a program. It's an adventure!)
 1.6.8.2 08-Jan-2002  nathanw Catch up to -current.
 1.6.8.1 17-Jun-2001  nathanw file vmparam.h was added on branch nathanw_sa on 2002-01-08 00:27:16 +0000
 1.6.2.3 06-Sep-2002  jdolecek sync kqueue branch with HEAD
 1.6.2.2 16-Mar-2002  jdolecek Catch up with -current.
 1.6.2.1 10-Jan-2002  thorpej Sync kqueue branch with -current.
 1.8.6.1 31-Aug-2002  gehenna catch up with -current.
 1.12.42.1 19-Jun-2006  chap Sync with head.
 1.12.36.1 26-Jun-2006  yamt sync with head.
 1.12.34.1 01-Jun-2006  kardel Sync with head.
 1.12.32.1 09-Sep-2006  rpaulo sync with head
 1.12.18.1 21-Jun-2006  yamt sync with head.
 1.13.96.1 23-Jun-2011  cherry Catchup with rmind-uvmplock merge.
 1.2 11-Dec-2005  christos merge ktrace-lwp.
 1.1 08-May-2004  kleink branches: 1.1.2;
Factor out W{CHAR,INT}_{MAX,MIN} into their own header file.
 1.1.2.4 21-Sep-2004  skrll Fix the sync with head I botched.
 1.1.2.3 18-Sep-2004  skrll Sync with HEAD.
 1.1.2.2 03-Aug-2004  skrll Sync with HEAD
 1.1.2.1 08-May-2004  skrll file wchar_limits.h was added on branch ktrace-lwp on 2004-08-03 10:39:48 +0000
 1.1 29-Feb-2000  nonaka branches: 1.1.6;
Initial import prep port.
 1.1.6.2 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.1.6.1 29-Feb-2000  bouyer file display.h was added on branch thorpej_scsipi on 2000-11-20 22:35:43 +0000

RSS XML Feed