Home | History | Annotate | only in /src/sys/arch/mipsco/include
History log of /src/sys/arch/mipsco/include
RevisionDateAuthorComments
 1.25 30-Nov-2024  christos 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.24 12-Jul-2018  maxv branches: 1.24.36;
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.23 21-Dec-2015  christos branches: 1.23.16; 1.23.18;
Add mips fenv.h (From FreeBSD)
 1.22 19-Jul-2014  alnsn branches: 1.22.4;
Sljit doesn't support MIPS I. Make sljitarch.h obsolete.
 1.21 25-Nov-2012  alnsn branches: 1.21.10;
Add sljitarch.h to all mips machines.
 1.20 17-Jul-2011  joerg branches: 1.20.2; 1.20.12;
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.19 12-Aug-2009  matt Nuke a.out support for MIPS.
 1.18 09-Feb-2007  ad branches: 1.18.48;
Merge newlock2 to head.
 1.17 26-Jul-2006  drochner branches: 1.17.4;
don't install <machine/db_machdep.h>, this is kernel only
 1.16 11-Dec-2005  christos branches: 1.16.4; 1.16.8;
merge ktrace-lwp.
 1.15 08-May-2004  kleink branches: 1.15.12;
Factor out W{CHAR,INT}_{MAX,MIN} into their own header file.
 1.14 17-Jan-2003  thorpej branches: 1.14.2;
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 15-Apr-2001  kleink branches: 1.10.2; 1.10.8; 1.10.16;
Add definitions of C99 integer format conversion macros.
XXX Fastest minimum-width integer types haven't been decided upon yet.
 1.9 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.8 14-Apr-2001  kleink Add definitions of C99 integer constant macros.
Tidy Makefiles up a little.
 1.7 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.6 31-Mar-2001  wdk Reverse previous commit - isa headers don't belong in /usr/include
 1.5 30-Mar-2001  wdk Add isa_machdep.h and isapnp_machdep.h
 1.4 27-Sep-2000  wdk branches: 1.4.2; 1.4.4;
Backout previous commit.
loadfile_machdep.h doesn't belong in /usr/include/machine

Pointed out by Simon Burge
 1.3 26-Sep-2000  wdk Add stand directory to build process
 1.2 11-Sep-2000  nisimura Needs to have machine/asm.h for userland applications.
 1.1 12-Aug-2000  wdk Initial commit of port to MIPS Computer Systems RC3xxx systems.
Currently supports the RC3230
 1.4.4.2 21-Jun-2001  nathanw Catch up to -current.
 1.4.4.1 09-Apr-2001  nathanw Catch up with -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 27-Sep-2000  bouyer file Makefile was added on branch thorpej_scsipi on 2000-11-20 20:14:01 +0000
 1.10.16.2 31-Aug-2002  gehenna catch up with -current.
 1.10.16.1 19-May-2002  gehenna Remove port-dependent conf.h.
 1.10.8.5 11-Dec-2002  thorpej Sync with HEAD.
 1.10.8.4 17-Sep-2002  nathanw Catch up to -current.
 1.10.8.3 13-Aug-2002  nathanw Catch up to -current.
 1.10.8.2 17-Nov-2001  wdk mcontext support for MIPS based ports.
 1.10.8.1 15-Apr-2001  wdk file Makefile was added on branch nathanw_sa on 2001-11-17 23:12:09 +0000
 1.10.2.2 10-Oct-2002  jdolecek sync kqueue with -current; this includes merge of gehenna-devsw branch,
merge of i386 MP branch, and part of autoconf rototil work
 1.10.2.1 06-Sep-2002  jdolecek sync kqueue branch with HEAD
 1.14.2.3 21-Sep-2004  skrll Fix the sync with head I botched.
 1.14.2.2 18-Sep-2004  skrll Sync with HEAD.
 1.14.2.1 03-Aug-2004  skrll Sync with HEAD
 1.15.12.2 26-Feb-2007  yamt sync with head.
 1.15.12.1 30-Dec-2006  yamt sync with head.
 1.16.8.1 11-Aug-2006  yamt sync with head
 1.16.4.1 09-Sep-2006  rpaulo sync with head
 1.17.4.1 01-Feb-2007  ad Header file cleanup.
 1.18.48.1 19-Aug-2009  yamt sync with head.
 1.20.12.3 03-Dec-2017  jdolecek update from HEAD
 1.20.12.2 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.20.12.1 25-Feb-2013  tls resync with head
 1.20.2.1 16-Jan-2013  yamt sync with (a bit old) head
 1.21.10.1 10-Aug-2014  tls Rebase.
 1.22.4.1 27-Dec-2015  skrll Sync with HEAD (as of 26th Dec)
 1.23.18.1 10-Jun-2019  christos Sync with HEAD
 1.23.16.1 28-Jul-2018  pgoyette Sync with HEAD
 1.24.36.1 02-Aug-2025  perseant Sync with HEAD
 1.1 12-Aug-2000  wdk branches: 1.1.2;
Initial commit of port to MIPS Computer Systems RC3xxx systems.
Currently supports the RC3230
 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 12-Aug-2000  bouyer file ansi.h was added on branch thorpej_scsipi on 2000-11-20 20:14:01 +0000
 1.2 12-Aug-2009  matt Nuke a.out support for MIPS.
 1.1 12-Aug-2000  wdk branches: 1.1.2; 1.1.132; 1.1.146;
Initial commit of port to MIPS Computer Systems RC3xxx systems.
Currently supports the RC3230
 1.1.146.1 24-Oct-2010  jym Sync with HEAD
 1.1.132.1 19-Aug-2009  yamt sync with head.
 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 12-Aug-2000  bouyer file aout_machdep.h was added on branch thorpej_scsipi on 2000-11-20 20:14:02 +0000
 1.1 11-Sep-2000  nisimura branches: 1.1.2;
Needs to have machine/asm.h for userland applications.
 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 11-Sep-2000  bouyer file asm.h was added on branch thorpej_scsipi on 2000-11-20 20:14:02 +0000
 1.7 14-Mar-2009  dsl Remove all the __P() from sys (excluding sys/dist)
Diff checked with grep and MK1 eyeball.
i386 and amd64 GENERIC and sys still build.
 1.6 11-Dec-2005  christos branches: 1.6.78; 1.6.86; 1.6.92;
merge ktrace-lwp.
 1.5 14-Dec-2004  chs use the generated macros in locators.h rather than hard-coded numbers
to index the cf_loc[] array. reviewed by allen briggs.
 1.4 22-Mar-2003  simonb branches: 1.4.2;
Fix a grammatical nit.
 1.3 16-Aug-2000  wdk branches: 1.3.2;
Parse bootflags and attempt to find the root device from the boot command line
 1.2 15-Aug-2000  wdk * Tidy up interrupt handlers by implementing an intr_establish()
handler to hook up device interrupts and softc callbacks.

Suggested by: Jason Thorpe and Toru Nishimura

* Fixup the indenting in a few places to conform to NetBSD style
 1.1 12-Aug-2000  wdk Initial commit of port to MIPS Computer Systems RC3xxx systems.
Currently supports the RC3230
 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 16-Aug-2000  bouyer file autoconf.h was added on branch thorpej_scsipi on 2000-11-20 20:14:02 +0000
 1.4.2.1 18-Dec-2004  skrll Sync with HEAD.
 1.6.92.1 13-May-2009  jym Sync with HEAD.

Commit is split, to avoid a "too many arguments" protocol error.
 1.6.86.1 28-Apr-2009  skrll Sync with HEAD.
 1.6.78.1 04-May-2009  yamt sync with head.
 1.4 14-Mar-2009  dsl Remove all the __P() from sys (excluding sys/dist)
Diff checked with grep and MK1 eyeball.
i386 and amd64 GENERIC and sys still build.
 1.3 11-Dec-2005  christos branches: 1.3.78; 1.3.86; 1.3.92;
merge ktrace-lwp.
 1.2 24-Mar-2004  drochner remove license clauses 3 and 4 from my cpoyright notices
 1.1 16-Sep-2000  wdk branches: 1.1.2; 1.1.26;
Add support for bootinfo structure to be passed from 2nd stage bootstrap.
Pass symbol table information to DDB if available.
 1.1.26.3 21-Sep-2004  skrll Fix the sync with head I botched.
 1.1.26.2 18-Sep-2004  skrll Sync with HEAD.
 1.1.26.1 03-Aug-2004  skrll Sync with HEAD
 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 16-Sep-2000  bouyer file bootinfo.h was added on branch thorpej_scsipi on 2000-11-20 20:14:02 +0000
 1.3.92.1 13-May-2009  jym Sync with HEAD.

Commit is split, to avoid a "too many arguments" protocol error.
 1.3.86.1 28-Apr-2009  skrll Sync with HEAD.
 1.3.78.1 04-May-2009  yamt sync with head.
 1.3 12-Aug-2009  matt Nuke a.out support for MIPS.
 1.2 04-Sep-2001  simonb branches: 1.2.6; 1.2.128; 1.2.142;
Remove comment duplicated in <mips/bsd-aout.h>.
 1.1 12-Aug-2000  wdk branches: 1.1.2; 1.1.6;
Initial commit of port to MIPS Computer Systems RC3xxx systems.
Currently supports the RC3230
 1.1.6.1 13-Sep-2001  thorpej Update the kqueue branch to HEAD.
 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 12-Aug-2000  bouyer file bsd-aout.h was added on branch thorpej_scsipi on 2000-11-20 20:14:02 +0000
 1.2.142.1 24-Oct-2010  jym Sync with HEAD
 1.2.128.1 19-Aug-2009  yamt sync with head.
 1.2.6.2 04-Sep-2001  simonb Remove comment duplicated in <mips/bsd-aout.h>.
 1.2.6.1 04-Sep-2001  simonb file bsd-aout.h was added on branch nathanw_sa on 2001-09-04 07:36:12 +0000
 1.1 12-Aug-2000  wdk branches: 1.1.2;
Initial commit of port to MIPS Computer Systems RC3xxx systems.
Currently supports the RC3230
 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 12-Aug-2000  bouyer file bswap.h was added on branch thorpej_scsipi on 2000-11-20 20:14:02 +0000
 1.28 27-Apr-2025  tsutsui Use proper uintNN_t integer types.
 1.27 26-Apr-2025  tsutsui Unbreak bus_dmamem_map for mipsco.

Patch is sent from Miod Vallat:
> The switch to common code in 2009 did not account for private fields in
> bus_dma_segment_t, which are now left uninitialized but were relied upon
> by bus_dmamem_map().
>
> Remove these fields as their values were trivial to compute from the MI
> fields.
>
> This gives Ethernet and SCSI a chance to work again on this platform.

"switch to common code in 2009" was the following commit:
https://mail-index.netbsd.org/source-changes/2009/08/21/msg224405.html

We should eventually switch to the common mips bus_dma and it still
requires private _ds_vaddr for VIPT cache in MIPS3 case, but for now
his priority is to unbreak the code before attempting to improve it.

Note it looks the private _ds_paddr for mipsco was also pulled from
NetBSD/arc, where DMA address != physical address on jazzio devices.
 1.26 20-Jul-2024  andvar fix typos in comments, mainly s/harware/hardware/.
 1.25 08-Dec-2023  thorpej branches: 1.25.2;
Excise extent(9) from the mipsco bus_space -- it was completely unused,
so let's make the code smaller.
 1.24 08-Oct-2023  andvar Update __BS_TYPENAME(BITS) macro to combine uint type instead of u_int.
Constify bus_space_write_multi one of params.
Remove unused ic_intr property from mipsco_isa_chipset struct.
Add __INTR_PRIVATE definition to mipsco isa_machdep.c.

Fixes RC3230 mipsco kernel config (w/o KGDB option, will be addressed later).
 1.23 23-Apr-2021  skrll branches: 1.23.16;
Use sys/cdefs.h __CONCAT3
 1.22 23-Sep-2019  skrll Provide PRIxBUSADDR, PRIxBUSSIZE, PRIuBUSSIZE, and PRIxBSH for all arches
to follow arm and (generic) mips.

Reviewed by christos.
 1.21 12-Feb-2012  matt branches: 1.21.48;
Change old-style function defintions to C89 prototypes.

Approved by releng.
 1.20 14-Mar-2009  dsl branches: 1.20.12; 1.20.16;
Remove all the __P() from sys (excluding sys/dist)
Diff checked with grep and MK1 eyeball.
i386 and amd64 GENERIC and sys still build.
 1.19 28-Apr-2008  martin branches: 1.19.8; 1.19.14;
Remove clause 3 and 4 from TNF licenses
 1.18 04-Mar-2007  christos branches: 1.18.40; 1.18.42; 1.18.44;
Kill caddr_t; there will be some MI fallout, but it will be fixed shortly.
 1.17 21-Feb-2007  mrg add a pair of new bus_dma(9) functions:
int _bus_dmatag_subregion(bus_dma_tag_t tag,
bus_addr_t min_addr,
bus_addr_t max_addr,
bus_dma_tag_t *newtag,
int flags)
void _bus_dmatag_destroy(bus_dma_tag_t tag)

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

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

XXX: bus_dma(9) needs an update still.
 1.16 26-May-2006  tsutsui branches: 1.16.12;
Tweak bus_space_barrier(9) macro to appease
"left-hand operand of comma expression has no effect"
warnings by gcc4.
 1.15 16-Feb-2006  perry branches: 1.15.2; 1.15.8;
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.14 24-Dec-2005  perry branches: 1.14.2; 1.14.4; 1.14.6;
Remove leading __ from __(const|inline|signed|volatile) -- it is obsolete.
 1.13 11-Dec-2005  christos merge ktrace-lwp.
 1.12 09-Mar-2005  matt branches: 1.12.4;
Add a dm_maxsegsz public member to bus_dmamap_t. This allows a user of the API
to select the maximum segment size for each bus_dmamap_load (up to the maxsegsz
supplied to bus_dmamap_create). dm_maxsegsz is reset to the value supplied to
bus_dmamap_create when the dmamap is unloaded.
 1.11 15-Jun-2003  fvdl branches: 1.11.2; 1.11.10; 1.11.12;
Handle 64bit DMA addresses on PCI for platforms that can (currently only
enabled on amd64). Add a dmat64 field to various PCI attach structures,
and pass it down where needed. Implement a simple new function called
pci_dma64_available(pa) to test if 64bit DMA addresses may be used.
This returns 1 iff _PCI_HAVE_DMA64 is defined in <machine/pci_machdep.h>,
and there is more than 4G of memory.
 1.10 28-Jan-2003  kent Introduce BUS_DMA_NOCACHE, and bus_dmamem_map() of i386 supports it.
 1.9 17-Mar-2002  simonb Make sure that private DMA flags don't overlap with standard DMA flags;
start these at 0x10000 to leave room for an increase in the latter.
 1.8 14-Nov-2001  thorpej branches: 1.8.2;
Merge the thorpej-mips-cache branch onto the trunk. This is an
overhaul of how caches are handled for NetBSD's MIPS ports.
 1.7 15-Sep-2001  wdk branches: 1.7.2;
bus_space_mmap support based on -arc implementation
 1.6 19-Jul-2001  thorpej branches: 1.6.2;
Add BUS_DMA_READ and BUS_DMA_WRITE flags, that hint the back-end
at dmamap load time that the mapping will be used for a unidirectional
transfer of the specified direction.
 1.5 30-Mar-2001  wdk branches: 1.5.2;
Re-implement bus_space(9) functions:
- Correctly handle striding of data
- Better support for endian neutral access
- Correctly implement _stream variants of bus_space functions that can
byte swap. This reverses the automatic byte swapping done in hardware
for 16 bit ISA bus cards
 1.4 07-Mar-2001  thorpej Add the BUS_DMA_STREAMING flag.
 1.3 04-Sep-2000  wdk branches: 1.3.2; 1.3.4;
Add wbflush() to bus_space_{write_multi,write_region,set_region,copy_region}
functions
 1.2 15-Aug-2000  wdk * Tidy up interrupt handlers by implementing an intr_establish()
handler to hook up device interrupts and softc callbacks.

Suggested by: Jason Thorpe and Toru Nishimura

* Fixup the indenting in a few places to conform to NetBSD style
 1.1 12-Aug-2000  wdk Initial commit of port to MIPS Computer Systems RC3xxx systems.
Currently supports the RC3230
 1.3.4.1 09-Apr-2001  nathanw Catch up with -current.
 1.3.2.4 21-Apr-2001  bouyer Sync with HEAD
 1.3.2.3 12-Mar-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 04-Sep-2000  bouyer file bus.h was added on branch thorpej_scsipi on 2000-11-20 20:14:02 +0000
 1.5.2.3 23-Jun-2002  jdolecek catch up with -current on kqueue branch
 1.5.2.2 10-Jan-2002  thorpej Sync kqueue branch with -current.
 1.5.2.1 03-Aug-2001  lukem update to -current
 1.6.2.1 01-Oct-2001  fvdl Catch up with -current.
 1.7.2.1 13-Nov-2001  thorpej Make the mipsco port compile with the thorpej-mips-cache branch.
 1.8.2.2 01-Apr-2002  nathanw Catch up to -current.
(CVS: It's not just a program. It's an adventure!)
 1.8.2.1 14-Nov-2001  nathanw file bus.h was added on branch nathanw_sa on 2002-04-01 07:41:16 +0000
 1.11.12.1 19-Mar-2005  yamt sync with head. xen and whitespace. xen part is not finished.
 1.11.10.1 29-Apr-2005  kent sync with -current
 1.11.2.1 01-Apr-2005  skrll Sync with HEAD.
 1.12.4.3 03-Sep-2007  yamt sync with head.
 1.12.4.2 26-Feb-2007  yamt sync with head.
 1.12.4.1 21-Jun-2006  yamt sync with head.
 1.14.6.2 01-Jun-2006  kardel Sync with head.
 1.14.6.1 22-Apr-2006  simonb Sync with head.
 1.14.4.1 09-Sep-2006  rpaulo sync with head
 1.14.2.1 18-Feb-2006  yamt sync with head.
 1.15.8.1 19-Jun-2006  chap Sync with head.
 1.15.2.1 26-Jun-2006  yamt sync with head.
 1.16.12.2 12-Mar-2007  rmind Sync with HEAD.
 1.16.12.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.44.2 04-May-2009  yamt sync with head.
 1.18.44.1 16-May-2008  yamt sync with head.
 1.18.42.1 18-May-2008  yamt sync with head.
 1.18.40.1 02-Jun-2008  mjf Sync with HEAD.
 1.19.14.1 13-May-2009  jym Sync with HEAD.

Commit is split, to avoid a "too many arguments" protocol error.
 1.19.8.1 28-Apr-2009  skrll Sync with HEAD.
 1.20.16.1 18-Feb-2012  mrg merge to -current.
 1.20.12.1 17-Apr-2012  yamt sync with head
 1.21.48.1 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.23.16.1 09-May-2025  martin Pull up following revision(s) (requested by tsutsui in ticket #1107):

sys/arch/mipsco/mipsco/bus_dma.c: revision 1.32
sys/arch/mipsco/include/bus.h: revision 1.27

Unbreak bus_dmamem_map for mipsco.

Patch is sent from Miod Vallat:
The switch to common code in 2009 did not account for private fields in
bus_dma_segment_t, which are now left uninitialized but were relied upon
by bus_dmamem_map().
Remove these fields as their values were trivial to compute from the MI
fields.

This gives Ethernet and SCSI a chance to work again on this platform.
"switch to common code in 2009" was the following commit:

https://mail-index.netbsd.org/source-changes/2009/08/21/msg224405.html

We should eventually switch to the common mips bus_dma and it still
requires private _ds_vaddr for VIPT cache in MIPS3 case, but for now
his priority is to unbreak the code before attempting to improve it.

Note it looks the private _ds_paddr for mipsco was also pulled from
NetBSD/arc, where DMA address != physical address on jazzio devices.
 1.25.2.1 02-Aug-2025  perseant Sync with HEAD
 1.1 12-Aug-2000  wdk branches: 1.1.2;
Initial commit of port to MIPS Computer Systems RC3xxx systems.
Currently supports the RC3230
 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 12-Aug-2000  bouyer file cdefs.h was added on branch thorpej_scsipi on 2000-11-20 20:14:03 +0000
 1.3 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.2 27-Feb-2002  christos branches: 1.2.8;
- define other DEV_ constants that the local port uses.
- delete cdev_decl(mm) since <sys/conf.h> does it.
 1.1 12-Aug-2000  wdk branches: 1.1.2; 1.1.6; 1.1.10;
Initial commit of port to MIPS Computer Systems RC3xxx systems.
Currently supports the RC3230
 1.1.10.2 17-Sep-2002  nathanw Catch up to -current.
 1.1.10.1 28-Feb-2002  nathanw Catch up to -current.
 1.1.6.2 10-Oct-2002  jdolecek sync kqueue with -current; this includes merge of gehenna-devsw branch,
merge of i386 MP branch, and part of autoconf rototil work
 1.1.6.1 16-Mar-2002  jdolecek Catch up with -current.
 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 12-Aug-2000  bouyer file conf.h was added on branch thorpej_scsipi on 2000-11-20 20:14:03 +0000
 1.2.8.1 19-May-2002  gehenna Remove port-dependent conf.h.
 1.7 04-Sep-2001  simonb branches: 1.7.6;
May as well include <mips/cpuregs.h> in <mips/cpu.h> once rather than
in every MIPS port's <machine/cpu.h>.
 1.6 04-Sep-2001  simonb Centralise struct cpu_info declaration and related info to <mips/cpu.h>.
 1.5 30-May-2001  mrg branches: 1.5.2;
use _KERNEL_OPT
 1.4 11-Mar-2001  wdk Remove function decl that doesn't belong in cpu.h
 1.3 21-Feb-2001  wdk branches: 1.3.2;
Call KGDB hook function
 1.2 17-Aug-2000  wdk branches: 1.2.2;
#include <mips/locore.h> no longer required since implementing bus_space(9)

remove unused extern variable that is never used in mipsco port
 1.1 12-Aug-2000  wdk Initial commit of port to MIPS Computer Systems RC3xxx systems.
Currently supports the RC3230
 1.2.2.3 12-Mar-2001  bouyer Sync with HEAD.
 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 17-Aug-2000  bouyer file cpu.h was added on branch thorpej_scsipi on 2000-11-20 20:14:03 +0000
 1.3.2.2 21-Jun-2001  nathanw Catch up to -current.
 1.3.2.1 09-Apr-2001  nathanw Catch up with -current.
 1.5.2.1 13-Sep-2001  thorpej Update the kqueue branch to HEAD.
 1.7.6.2 04-Sep-2001  simonb May as well include <mips/cpuregs.h> in <mips/cpu.h> once rather than
in every MIPS port's <machine/cpu.h>.
 1.7.6.1 04-Sep-2001  simonb file cpu.h was added on branch nathanw_sa on 2001-09-04 06:23:17 +0000
 1.1 24-Jun-2015  matt branches: 1.1.2; 1.1.18;
All mips ports will need it.
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 24-Jun-2015  jdolecek file cpu_counter.h was added on branch tls-maxphys on 2017-12-03 11:36:29 +0000
 1.1.2.2 22-Sep-2015  skrll Sync with HEAD
 1.1.2.1 24-Jun-2015  skrll file cpu_counter.h was added on branch nick-nhusb on 2015-09-22 12:05:48 +0000
 1.3 09-Jul-2011  matt Default to DB_ELF_SYMBOLS and DB_ELFSIZE 32
 1.2 04-Sep-2001  simonb branches: 1.2.6;
Standardise the format of MIPS' <machine/db_machdep.h>.
 1.1 12-Aug-2000  wdk branches: 1.1.2; 1.1.6;
Initial commit of port to MIPS Computer Systems RC3xxx systems.
Currently supports the RC3230
 1.1.6.1 13-Sep-2001  thorpej Update the kqueue branch to HEAD.
 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 12-Aug-2000  bouyer file db_machdep.h was added on branch thorpej_scsipi on 2000-11-20 20:14:03 +0000
 1.2.6.2 04-Sep-2001  simonb Standardise the format of MIPS' <machine/db_machdep.h>.
 1.2.6.1 04-Sep-2001  simonb file db_machdep.h was added on branch nathanw_sa on 2001-09-04 07:43:31 +0000
 1.9 27-Apr-2025  tsutsui Use proper uintNN_t integer types.
 1.8 30-Aug-2011  bouyer branches: 1.8.90;
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.7 28-Jan-2002  lukem cosmetic reorder of #defines to match other ports
 1.6 26-Jul-2001  wiz branches: 1.6.6;
partiton -> partition
 1.5 11-Jun-2001  wiz branches: 1.5.2;
Fix various misspellings of compatible/compatibility.
 1.4 05-Mar-2001  wdk branches: 1.4.2;
no longer keep a copy of the volume header in cpu_disklabel
 1.3 16-Sep-2000  wdk branches: 1.3.2;
Write a NetBSD disklabel to 2nd sector while retaining the Mips volume
header in the ist sector. We now use the NetBSD label in preference
to the Mips Volume header.
 1.2 22-Aug-2000  wdk * Tidy up reading of Mips volume header information
All compatable values are copied from the MIPS volume header to the
BSD disklabel structures.

* Add support for writing Mips volume header.

* Remove support for writing NetBSD label directly (this was broken)

These changes allow the kernel to read either a BSD disklabel created under
NetBSD/sparc or a MIPS volume header created under RISC/os.

There is a small amount of losage with the conversion between the 2
types of disk labels (mainly to do with file system types).
A table is used to map partition numbers and types between the two
types, and unless someone does something real fancy (or crazy) it should
work in both senario's

This change will allow the stand alone shell to directly load a NetBSD
kernel and mount a file system, avoiding the need for a seperate disk or
bootp server to bootstrapping NetBSD.

NetBSD/mipsco is now self sufficiant. We are not far from having a
miniroot filesystem and removing the need to have another NetBSD
machine to create the base filesystems.

Minor Trap for young players:
The root partition must be created with 'newfs -O' in order for the
stand alone shell to boot the kernel

TODO:
Add support for writing NetBSD disk labels back in - it will be useful
for non boot disks. I'm just not sure how to control the 2 behavours
 1.1 12-Aug-2000  wdk Initial commit of port to MIPS Computer Systems RC3xxx systems.
Currently supports the RC3230
 1.3.2.3 12-Mar-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 16-Sep-2000  bouyer file disklabel.h was added on branch thorpej_scsipi on 2000-11-20 20:14:03 +0000
 1.4.2.1 21-Jun-2001  nathanw Catch up to -current.
 1.5.2.2 11-Feb-2002  jdolecek Sync w/ -current.
 1.5.2.1 03-Aug-2001  lukem update to -current
 1.6.6.2 28-Feb-2002  nathanw Catch up to -current.
 1.6.6.1 26-Jul-2001  nathanw file disklabel.h was added on branch nathanw_sa on 2002-02-28 04:10:47 +0000
 1.8.90.1 02-Aug-2025  perseant Sync with HEAD
 1.1 12-Aug-2000  wdk branches: 1.1.2;
Initial commit of port to MIPS Computer Systems RC3xxx systems.
Currently supports the RC3230
 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 12-Aug-2000  bouyer file ecoff_machdep.h was added on branch thorpej_scsipi on 2000-11-20 20:14:03 +0000
 1.1 12-Aug-2000  wdk branches: 1.1.2;
Initial commit of port to MIPS Computer Systems RC3xxx systems.
Currently supports the RC3230
 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 12-Aug-2000  bouyer file elf.h was added on branch thorpej_scsipi on 2000-11-20 20:14:04 +0000
 1.2 14-Dec-2009  matt Merge from matt-nb5-mips64
Merge mips-specific arch files.
 1.1 12-Aug-2000  wdk branches: 1.1.2; 1.1.132; 1.1.150;
Initial commit of port to MIPS Computer Systems RC3xxx systems.
Currently supports the RC3230
 1.1.150.1 22-Aug-2009  matt Move ELF{32,64}_MACHDEP_ENDIANNESS to <mips/elf_machdep.h>
 1.1.132.1 11-Mar-2010  yamt sync with head
 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 12-Aug-2000  bouyer file elf_machdep.h was added on branch thorpej_scsipi on 2000-11-20 20:14:04 +0000
 1.2 04-Sep-2001  simonb branches: 1.2.6;
Make this the same as the other MIPS ports; ok'd by Wayne Knowles.
 1.1 12-Aug-2000  wdk branches: 1.1.2; 1.1.6;
Initial commit of port to MIPS Computer Systems RC3xxx systems.
Currently supports the RC3230
 1.1.6.1 13-Sep-2001  thorpej Update the kqueue branch to HEAD.
 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 12-Aug-2000  bouyer file endian.h was added on branch thorpej_scsipi on 2000-11-20 20:14:04 +0000
 1.2.6.2 04-Sep-2001  simonb Make this the same as the other MIPS ports; ok'd by Wayne Knowles.
 1.2.6.1 04-Sep-2001  simonb file endian.h was added on branch nathanw_sa on 2001-09-04 07:24:24 +0000
 1.1 12-Aug-2000  wdk branches: 1.1.2;
Initial commit of port to MIPS Computer Systems RC3xxx systems.
Currently supports the RC3230
 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 12-Aug-2000  bouyer file endian_machdep.h was added on branch thorpej_scsipi on 2000-11-20 20:14:04 +0000
 1.1 21-Dec-2015  christos branches: 1.1.2; 1.1.18;
Add mips fenv.h (From FreeBSD)
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 21-Dec-2015  jdolecek file fenv.h was added on branch tls-maxphys on 2017-12-03 11:36:29 +0000
 1.1.2.2 27-Dec-2015  skrll Sync with HEAD (as of 26th Dec)
 1.1.2.1 21-Dec-2015  skrll file fenv.h was added on branch nick-nhusb on 2015-12-27 12:09:39 +0000
 1.1 12-Aug-2000  wdk branches: 1.1.2;
Initial commit of port to MIPS Computer Systems RC3xxx systems.
Currently supports the RC3230
 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 12-Aug-2000  bouyer file float.h was added on branch thorpej_scsipi on 2000-11-20 20:14:04 +0000
 1.1 12-Aug-2000  wdk branches: 1.1.2;
Initial commit of port to MIPS Computer Systems RC3xxx systems.
Currently supports the RC3230
 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 12-Aug-2000  bouyer file ieee.h was added on branch thorpej_scsipi on 2000-11-20 20:14:04 +0000
 1.2 04-Sep-2001  simonb branches: 1.2.6;
Clean up.
 1.1 12-Aug-2000  wdk branches: 1.1.2; 1.1.6;
Initial commit of port to MIPS Computer Systems RC3xxx systems.
Currently supports the RC3230
 1.1.6.1 13-Sep-2001  thorpej Update the kqueue branch to HEAD.
 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 12-Aug-2000  bouyer file ieeefp.h was added on branch thorpej_scsipi on 2000-11-20 20:14:04 +0000
 1.2.6.2 04-Sep-2001  simonb Clean up.
 1.2.6.1 04-Sep-2001  simonb file ieeefp.h was added on branch nathanw_sa on 2001-09-04 06:26:19 +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:40 +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:03 +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:13 +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:04 +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:09 +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:04 +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:19:58 +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:04 +0000
 1.1 12-Aug-2000  wdk branches: 1.1.2;
Initial commit of port to MIPS Computer Systems RC3xxx systems.
Currently supports the RC3230
 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 12-Aug-2000  bouyer file int_types.h was added on branch thorpej_scsipi on 2000-11-20 20:14:05 +0000
 1.20 26-Apr-2025  tsutsui Move ipl_sr_map to model-specific file and add IPL_DDB entry.

This will help adding support for other mipsco systems such as
the RC3240 eventually.

Patch from Miod Vallat.
 1.19 20-Feb-2011  matt branches: 1.19.92;
Merge forward matt-nb5-mips64
Adapt to new interrupt/spl framework
 1.18 13-Apr-2009  he branches: 1.18.4; 1.18.6; 1.18.8;
Include <sys/evcnt.h> instead of <sys/device.h> to break circular
dependency graph.
 1.17 14-Mar-2009  dsl Remove all the __P() from sys (excluding sys/dist)
Diff checked with grep and MK1 eyeball.
i386 and amd64 GENERIC and sys still build.
 1.16 03-Dec-2007  ad branches: 1.16.18; 1.16.26; 1.16.32; 1.16.36;
Interrupt handling changes, in discussion since February:

- Reduce available SPL levels for hardware devices to none, vm, sched, high.
- Acquire kernel_lock only for interrupts at IPL_VM.
- Implement threaded soft interrupts.
 1.15 17-Oct-2007  garbled branches: 1.15.2;
Merge the ppcoea-renovation branch to HEAD.

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

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

NOTES:
pmppc was removed as an arch, and moved to a evbppc target.
 1.14 17-Jun-2007  tsutsui branches: 1.14.8; 1.14.10;
Move declaretions of _spl*() and _{clr,set}softintr() functions
(which are in mips/locore.S) into <mips/locore.h>
from various MD files.
 1.13 16-Feb-2007  ad branches: 1.13.6; 1.13.8; 1.13.14;
Remove spllowersoftclock() and CLKF_BASEPRI(), and always dispatch callouts
via a soft interrupt. In the near future, softclock will be run from process
context.
 1.12 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.11 11-Dec-2005  christos branches: 1.11.20; 1.11.22;
merge ktrace-lwp.
 1.10 09-Jun-2005  he branches: 1.10.2;
Prefix variables in a macro with an underscore to avoid shadowing problems.
 1.9 14-Jan-2002  soren branches: 1.9.16;
Remove __HAVE_GENERIC_SOFT_INTERRUPTS #ifdef.
 1.8 15-Sep-2001  wdk branches: 1.8.4;
spllpt() for ISA Bus printer support
 1.7 13-Apr-2001  thorpej branches: 1.7.2; 1.7.4;
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 30-Mar-2001  wdk New data structures and prototypes for MI softintr support
 1.5 14-Jan-2001  thorpej branches: 1.5.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.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 15-Aug-2000  wdk * Tidy up interrupt handlers by implementing an intr_establish()
handler to hook up device interrupts and softc callbacks.

Suggested by: Jason Thorpe and Toru Nishimura

* Fixup the indenting in a few places to conform to NetBSD style
 1.1 12-Aug-2000  wdk Initial commit of port to MIPS Computer Systems RC3xxx systems.
Currently supports the RC3230
 1.4.2.4 21-Apr-2001  bouyer Sync with HEAD
 1.4.2.3 18-Jan-2001  bouyer Sync with head (for UBC+NFS fixes, mostly).
 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:14:05 +0000
 1.5.2.2 21-Jun-2001  nathanw Catch up to -current.
 1.5.2.1 09-Apr-2001  nathanw Catch up with -current.
 1.7.4.1 01-Oct-2001  fvdl Catch up with -current.
 1.7.2.2 11-Feb-2002  jdolecek Sync w/ -current.
 1.7.2.1 10-Jan-2002  thorpej Sync kqueue branch with -current.
 1.8.4.2 28-Feb-2002  nathanw Catch up to -current.
 1.8.4.1 15-Sep-2001  nathanw file intr.h was added on branch nathanw_sa on 2002-02-28 04:10:47 +0000
 1.9.16.1 10-Nov-2005  skrll Sync with HEAD. Here we go again...
 1.10.2.4 07-Dec-2007  yamt sync with head
 1.10.2.3 03-Sep-2007  yamt sync with head.
 1.10.2.2 26-Feb-2007  yamt sync with head.
 1.10.2.1 30-Dec-2006  yamt sync with head.
 1.11.22.2 02-Dec-2006  yamt - add splsoftserial.
- fix some comments.
 1.11.22.1 02-Dec-2006  yamt implement splraiseipl/makeiplcookie for mipsco.
 1.11.20.1 12-Jan-2007  ad Sync with head.
 1.13.14.1 26-Jun-2007  garbled Sync with HEAD.
 1.13.8.1 11-Jul-2007  mjf Sync with head.
 1.13.6.2 03-Dec-2007  ad Sync with HEAD.
 1.13.6.1 15-Jul-2007  ad Sync with head.
 1.14.10.2 09-Jan-2008  matt sync with HEAD
 1.14.10.1 06-Nov-2007  matt sync with HEAD
 1.14.8.1 09-Dec-2007  jmcneill Sync with HEAD.
 1.15.2.1 08-Dec-2007  mjf Sync with HEAD.
 1.16.36.2 29-Dec-2010  matt Adapt to the new interrupt framework.
(XXX hpcmips still has calls to _spllower which are not supported.)
 1.16.36.1 05-Feb-2010  matt Change to deal with new method of invoking softints. Remove mips/softintr.c
from config files. Fix SYMTAB_SPACE for WGT62V43
 1.16.32.1 13-May-2009  jym Sync with HEAD.

Commit is split, to avoid a "too many arguments" protocol error.
 1.16.26.1 28-Apr-2009  skrll Sync with HEAD.
 1.16.18.1 04-May-2009  yamt sync with head.
 1.18.8.1 05-Mar-2011  bouyer Sync with HEAD
 1.18.6.1 06-Jun-2011  jruoho Sync with HEAD.
 1.18.4.1 05-Mar-2011  rmind sync with head
 1.19.92.1 02-Aug-2025  perseant Sync with HEAD
 1.12 09-Oct-2023  andvar replace trailing whitespace with tab before struct evcnt for consistency.
 1.11 08-Oct-2023  andvar Update __BS_TYPENAME(BITS) macro to combine uint type instead of u_int.
Constify bus_space_write_multi one of params.
Remove unused ic_intr property from mipsco_isa_chipset struct.
Add __INTR_PRIVATE definition to mipsco isa_machdep.c.

Fixes RC3230 mipsco kernel config (w/o KGDB option, will be addressed later).
 1.10 18-Oct-2016  jdolecek add isa_intr_establish_xname() to MD isa headers so that it can be used
by MI drivers
 1.9 27-Oct-2012  chs branches: 1.9.14; 1.9.18;
split device_t/softc for all remaining drivers.
replace "struct device *" with "device_t".
use device_xname(), device_unit(), etc.
 1.8 19-Aug-2009  dyoung branches: 1.8.12; 1.8.22;
(Re-)define isa_detach_hook(), and define isa_dmadestroy(). Update
some isa_chipset_tag_t->ic_detach_hook() definitions.
 1.7 28-Apr-2008  martin Remove clause 3 and 4 from TNF licenses
 1.6 11-Dec-2005  christos branches: 1.6.74; 1.6.76; 1.6.78;
merge ktrace-lwp.
 1.5 25-Oct-2003  chs make this compile again.
 1.4 07-Aug-2003  agc Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22364, verified by myself.
 1.3 09-May-2003  fvdl branches: 1.3.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.2 15-Sep-2001  wdk branches: 1.2.4;
Add bus_dma hooks for ISA Bus.

ISA bus option doesn't support DMA on the Magnum 3000 series, but other
models such as the M/120 do support it.
 1.1 30-Mar-2001  wdk branches: 1.1.2; 1.1.4; 1.1.6; 1.1.8;
Support for ISA expansion slot in Mips 3230

The ISA Bus on this machine doesn't support DMA, and all interrupt lines
are wire-OR'ed together. Mileage may vary if sharing interrupts.

Tested cards:
com: 8250 and 16550 UART's (8 bit)
ec: 3com Etherlink II (8 bit)
we: SMC 8013 Ethernet (16 bit) [work in progress]
Probes, ARP in both directions works, sends clean packets,
tcpdump show correct packets on receive, NDP for IPv6 works,
netstat -s shows nothing strange.. but doesn't talk TCP/IP!
 1.1.8.1 01-Oct-2001  fvdl Catch up with -current.
 1.1.6.1 10-Jan-2002  thorpej Sync kqueue branch with -current.
 1.1.4.2 21-Apr-2001  bouyer Sync with HEAD
 1.1.4.1 30-Mar-2001  bouyer file isa_machdep.h was added on branch thorpej_scsipi on 2001-04-21 17:54:04 +0000
 1.1.2.1 09-Apr-2001  nathanw Catch up with -current.
 1.2.4.2 15-Sep-2001  wdk Add bus_dma hooks for ISA Bus.

ISA bus option doesn't support DMA on the Magnum 3000 series, but other
models such as the M/120 do support it.
 1.2.4.1 15-Sep-2001  wdk file isa_machdep.h was added on branch nathanw_sa on 2001-09-15 01:17:48 +0000
 1.3.2.3 21-Sep-2004  skrll Fix the sync with head I botched.
 1.3.2.2 18-Sep-2004  skrll Sync with HEAD.
 1.3.2.1 03-Aug-2004  skrll Sync with HEAD
 1.6.78.2 19-Aug-2009  yamt sync with head.
 1.6.78.1 16-May-2008  yamt sync with head.
 1.6.76.1 18-May-2008  yamt sync with head.
 1.6.74.1 02-Jun-2008  mjf Sync with HEAD.
 1.8.22.2 03-Dec-2017  jdolecek update from HEAD
 1.8.22.1 20-Nov-2012  tls Resync to 2012-11-19 00:00:00 UTC
 1.8.12.1 30-Oct-2012  yamt sync with head
 1.9.18.1 04-Nov-2016  pgoyette Sync with HEAD
 1.9.14.1 05-Dec-2016  skrll Sync with HEAD
 1.2 28-Apr-2008  martin Remove clause 3 and 4 from TNF licenses
 1.1 30-Mar-2001  wdk branches: 1.1.2; 1.1.4; 1.1.12; 1.1.130; 1.1.132; 1.1.134;
Support for ISA expansion slot in Mips 3230

The ISA Bus on this machine doesn't support DMA, and all interrupt lines
are wire-OR'ed together. Mileage may vary if sharing interrupts.

Tested cards:
com: 8250 and 16550 UART's (8 bit)
ec: 3com Etherlink II (8 bit)
we: SMC 8013 Ethernet (16 bit) [work in progress]
Probes, ARP in both directions works, sends clean packets,
tcpdump show correct packets on receive, NDP for IPv6 works,
netstat -s shows nothing strange.. but doesn't talk TCP/IP!
 1.1.134.1 16-May-2008  yamt sync with head.
 1.1.132.1 18-May-2008  yamt sync with head.
 1.1.130.1 02-Jun-2008  mjf Sync with HEAD.
 1.1.12.2 30-Mar-2001  wdk Support for ISA expansion slot in Mips 3230

The ISA Bus on this machine doesn't support DMA, and all interrupt lines
are wire-OR'ed together. Mileage may vary if sharing interrupts.

Tested cards:
com: 8250 and 16550 UART's (8 bit)
ec: 3com Etherlink II (8 bit)
we: SMC 8013 Ethernet (16 bit) [work in progress]
Probes, ARP in both directions works, sends clean packets,
tcpdump show correct packets on receive, NDP for IPv6 works,
netstat -s shows nothing strange.. but doesn't talk TCP/IP!
 1.1.12.1 30-Mar-2001  wdk file isapnp_machdep.h was added on branch nathanw_sa on 2001-03-30 23:45:20 +0000
 1.1.4.2 21-Apr-2001  bouyer Sync with HEAD
 1.1.4.1 30-Mar-2001  bouyer file isapnp_machdep.h was added on branch thorpej_scsipi on 2001-04-21 17:54:04 +0000
 1.1.2.1 09-Apr-2001  nathanw Catch up with -current.
 1.1 12-Aug-2000  wdk branches: 1.1.2;
Initial commit of port to MIPS Computer Systems RC3xxx systems.
Currently supports the RC3230
 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 12-Aug-2000  bouyer file kcore.h was added on branch thorpej_scsipi on 2000-11-20 20:14:05 +0000
 1.1 12-Aug-2000  wdk branches: 1.1.2;
Initial commit of port to MIPS Computer Systems RC3xxx systems.
Currently supports the RC3230
 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 12-Aug-2000  bouyer file kdbparam.h was added on branch thorpej_scsipi on 2000-11-20 20:14:05 +0000
 1.2 31-Aug-2001  simonb branches: 1.2.6;
G/C the unused kernel-only CLK_TCK #define.

XXX: does include/time.h still need <machine/limits.h>?
 1.1 12-Aug-2000  wdk branches: 1.1.2; 1.1.6;
Initial commit of port to MIPS Computer Systems RC3xxx systems.
Currently supports the RC3230
 1.1.6.1 13-Sep-2001  thorpej Update the kqueue branch to HEAD.
 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 12-Aug-2000  bouyer file limits.h was added on branch thorpej_scsipi on 2000-11-20 20:14:05 +0000
 1.2.6.2 31-Aug-2001  simonb G/C the unused kernel-only CLK_TCK #define.

XXX: does include/time.h still need <machine/limits.h>?
 1.2.6.1 31-Aug-2001  simonb file limits.h was added on branch nathanw_sa on 2001-08-31 03:46:04 +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 19-Sep-2000  wdk branches: 1.1.2; 1.1.6; 1.1.8;
Forgot to commit this file with the 2 stage bootstrap
 1.1.8.1 12-Nov-2001  thorpej Sync the thorpej-mips-cache branch with -current.
 1.1.6.1 10-Jan-2002  thorpej Sync kqueue branch with -current.
 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 19-Sep-2000  bouyer file loadfile_machdep.h was added on branch thorpej_scsipi on 2000-11-20 20:14:05 +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:47 +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.2 31-Aug-2001  simonb branches: 1.2.6;
Remove an unneeded comment; ``sync'' with other "just include <mips/foo.h>"
files.
 1.1 12-Aug-2000  wdk branches: 1.1.2; 1.1.6;
Initial commit of port to MIPS Computer Systems RC3xxx systems.
Currently supports the RC3230
 1.1.6.1 13-Sep-2001  thorpej Update the kqueue branch to HEAD.
 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 12-Aug-2000  bouyer file lock.h was added on branch thorpej_scsipi on 2000-11-20 20:14:05 +0000
 1.2.6.2 31-Aug-2001  simonb Remove an unneeded comment; ``sync'' with other "just include <mips/foo.h>"
files.
 1.2.6.1 31-Aug-2001  simonb file lock.h was added on branch nathanw_sa on 2001-08-31 03:53:24 +0000
 1.2 05-Jun-2002  simonb Simplify include files that just include <mips/locore.h>.
 1.1 12-Aug-2000  wdk branches: 1.1.2; 1.1.6; 1.1.10; 1.1.18;
Initial commit of port to MIPS Computer Systems RC3xxx systems.
Currently supports the RC3230
 1.1.18.1 14-Jul-2002  gehenna catch up with -current.
 1.1.10.1 20-Jun-2002  nathanw Catch up to -current.
 1.1.6.1 23-Jun-2002  jdolecek catch up with -current on kqueue branch
 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 12-Aug-2000  bouyer file locore.h was added on branch thorpej_scsipi on 2000-11-20 20:14:06 +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:55:55 +0000
 1.5 05-Jul-2024  andvar s/Timner/Timer/ in comment.
 1.4 28-Apr-2008  martin branches: 1.4.124;
Remove clause 3 and 4 from TNF licenses
 1.3 31-Mar-2001  wdk branches: 1.3.8; 1.3.126; 1.3.128; 1.3.130;
Add softintr and ISA bus support
 1.2 16-Aug-2000  wdk branches: 1.2.2; 1.2.4;
Trap and report memory parity errors
 1.1 12-Aug-2000  wdk Initial commit of port to MIPS Computer Systems RC3xxx systems.
Currently supports the RC3230
 1.2.4.1 09-Apr-2001  nathanw Catch up with -current.
 1.2.2.3 21-Apr-2001  bouyer Sync with HEAD
 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 16-Aug-2000  bouyer file mainboard.h was added on branch thorpej_scsipi on 2000-11-20 20:14:06 +0000
 1.3.130.1 16-May-2008  yamt sync with head.
 1.3.128.1 18-May-2008  yamt sync with head.
 1.3.126.1 02-Jun-2008  mjf Sync with HEAD.
 1.3.8.2 31-Mar-2001  wdk Add softintr and ISA bus support
 1.3.8.1 31-Mar-2001  wdk file mainboard.h was added on branch nathanw_sa on 2001-03-31 00:08:35 +0000
 1.4.124.1 02-Aug-2025  perseant Sync with HEAD
 1.1 12-Aug-2000  wdk branches: 1.1.2;
Initial commit of port to MIPS Computer Systems RC3xxx systems.
Currently supports the RC3230
 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 12-Aug-2000  bouyer file math.h was added on branch thorpej_scsipi on 2000-11-20 20:14:06 +0000
 1.2 17-Jan-2003  thorpej Merge the nathanw_sa branch.
 1.1 17-Nov-2001  wdk branches: 1.1.2;
file mcontext.h was initially added on branch nathanw_sa.
 1.1.2.1 17-Nov-2001  wdk mcontext support for MIPS based ports.
 1.1 12-Aug-2000  wdk branches: 1.1.2;
Initial commit of port to MIPS Computer Systems RC3xxx systems.
Currently supports the RC3230
 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 12-Aug-2000  bouyer file mips_opcode.h was added on branch thorpej_scsipi on 2000-11-20 20:14:06 +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.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:32 +0000
 1.15 07-Jan-2019  jdolecek move DEV_BSIZE, DEV_BSHIFT out of MD param.h, they are same on all ports

also move BLKDEV_IOSIZE, MAXPHYS, but allow override since some ports
have different value (powerpc uses NBPG for BLKDEV_IOSIZE, sun2/sun3
have lower MAXPHYS)
 1.14 18-Mar-2011  tsutsui branches: 1.14.54; 1.14.56;
- include <mips/mips_param.h> after MACHINE is defined
- remove redundant comment
 1.13 08-Feb-2011  rmind Remove clause 3 (UCB advertising clause) from the University of Utah
copyright. Confirmed by Mike Hibler, mike at cs.utah.edu - thanks!
Also, merge UCB and Utah copyright texts back into one, as they
originally were.

Extra verification by snj@.
 1.12 14-Dec-2009  matt branches: 1.12.4; 1.12.6; 1.12.8;
Merge from matt-nb5-mips64
Merge mips-specific arch files.
 1.11 13-Aug-2009  matt Move MID_MACHINE to <mips/mips_param.h> and use local values so we don't
need to include exec_aout.h
 1.10 14-Mar-2009  dsl Remove all the __P() from sys (excluding sys/dist)
Diff checked with grep and MK1 eyeball.
i386 and amd64 GENERIC and sys still build.
 1.9 17-Oct-2007  garbled branches: 1.9.20; 1.9.28; 1.9.34; 1.9.38;
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 26-Jul-2007  he branches: 1.8.6;
Move the include of <machine/intr.h> into the _KERNEL / _LOCORE #ifdefs.
Fixes build problem with the extent regression test.
 1.7 26-Sep-2006  tsutsui branches: 1.7.8; 1.7.16; 1.7.20; 1.7.22;
Protect from multiple inclusion.
 1.6 10-Sep-2006  tsutsui branches: 1.6.2;
Change dumb DELAY(9) macro into inline version with asm like
other mips ports for gcc4's aggressive optimization.
 1.5 11-Dec-2005  christos branches: 1.5.8; 1.5.20;
merge ktrace-lwp.
 1.4 07-Aug-2003  agc branches: 1.4.16;
Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22364, verified by myself.
 1.3 26-Feb-2002  simonb branches: 1.3.16;
Purge CLSIZE, CLSIZELOG2 and MCLOFSET.
Be consistant in the way that MSIZE, MCLSHIFT, MCLBYTES and NMBCLUSTERS
are defined.
Remove old VM constants from cesfic port.
Bump MSIZE to 256 on mipsco (the only one that wasn't already 256).
 1.2 30-May-2001  mrg branches: 1.2.2; 1.2.8;
use _KERNEL_OPT
 1.1 12-Aug-2000  wdk branches: 1.1.2; 1.1.4;
Initial commit of port to MIPS Computer Systems RC3xxx systems.
Currently supports the RC3230
 1.1.4.1 21-Jun-2001  nathanw Catch up to -current.
 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 12-Aug-2000  bouyer file param.h was added on branch thorpej_scsipi on 2000-11-20 20:14:06 +0000
 1.2.8.2 28-Feb-2002  nathanw Catch up to -current.
 1.2.8.1 30-May-2001  nathanw file param.h was added on branch nathanw_sa on 2002-02-28 04:10:47 +0000
 1.2.2.1 16-Mar-2002  jdolecek Catch up with -current.
 1.3.16.3 21-Sep-2004  skrll Fix the sync with head I botched.
 1.3.16.2 18-Sep-2004  skrll Sync with HEAD.
 1.3.16.1 03-Aug-2004  skrll Sync with HEAD
 1.4.16.2 03-Sep-2007  yamt sync with head.
 1.4.16.1 30-Dec-2006  yamt sync with head.
 1.5.20.1 18-Nov-2006  ad Sync with head.
 1.5.8.1 14-Sep-2006  yamt sync with head.
 1.6.2.1 22-Oct-2006  yamt sync with head
 1.7.22.1 15-Aug-2007  skrll Sync with HEAD.
 1.7.20.1 07-Aug-2007  matt Sync with HEAD.
 1.7.16.1 03-Oct-2007  garbled Sync with HEAD
 1.7.8.1 20-Aug-2007  ad Sync with HEAD.
 1.8.6.1 06-Nov-2007  matt sync with HEAD
 1.9.38.1 22-Aug-2009  matt Move MACHINE_ARCH definition to <mips/mips_param.h>
Move mbuf related defines to <mips/mips_param.h>
 1.9.34.1 13-May-2009  jym Sync with HEAD.

Commit is split, to avoid a "too many arguments" protocol error.
 1.9.28.1 28-Apr-2009  skrll Sync with HEAD.
 1.9.20.3 11-Mar-2010  yamt sync with head
 1.9.20.2 19-Aug-2009  yamt sync with head.
 1.9.20.1 04-May-2009  yamt sync with head.
 1.12.8.1 17-Feb-2011  bouyer Sync with HEAD
 1.12.6.1 06-Jun-2011  jruoho Sync with HEAD.
 1.12.4.2 21-Apr-2011  rmind sync with head
 1.12.4.1 05-Mar-2011  rmind sync with head
 1.14.56.1 10-Jun-2019  christos Sync with HEAD
 1.14.54.1 18-Jan-2019  pgoyette Synch with HEAD
 1.1 12-Aug-2000  wdk branches: 1.1.2;
Initial commit of port to MIPS Computer Systems RC3xxx systems.
Currently supports the RC3230
 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 12-Aug-2000  bouyer file pcb.h was added on branch thorpej_scsipi on 2000-11-20 20:14:06 +0000
 1.2 13-Sep-2000  nisimura branches: 1.2.2;
Nuke unused obscure #define's.
 1.1 12-Aug-2000  wdk Initial commit of port to MIPS Computer Systems RC3xxx systems.
Currently supports the RC3230
 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 13-Sep-2000  bouyer file pmap.h was added on branch thorpej_scsipi on 2000-11-20 20:14:07 +0000
 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:37:50 +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:24 +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:31 +0000
 1.1 12-Aug-2000  wdk branches: 1.1.2;
Initial commit of port to MIPS Computer Systems RC3xxx systems.
Currently supports the RC3230
 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 12-Aug-2000  bouyer file proc.h was added on branch thorpej_scsipi on 2000-11-20 20:14:07 +0000
 1.1 12-Aug-2000  wdk branches: 1.1.2;
Initial commit of port to MIPS Computer Systems RC3xxx systems.
Currently supports the RC3230
 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 12-Aug-2000  bouyer file profile.h was added on branch thorpej_scsipi on 2000-11-20 20:14:07 +0000
 1.12 14-Mar-2009  dsl Remove all the __P() from sys (excluding sys/dist)
Diff checked with grep and MK1 eyeball.
i386 and amd64 GENERIC and sys still build.
 1.11 28-Apr-2008  martin branches: 1.11.8; 1.11.14;
Remove clause 3 and 4 from TNF licenses
 1.10 11-Dec-2005  christos branches: 1.10.74; 1.10.76; 1.10.78;
merge ktrace-lwp.
 1.9 09-Jun-2005  he Add const to the prom_getenv() vector argument.
More function pointer prototypes can probably have const added, but
this gets us building for now.
 1.8 13-Feb-2004  wiz Uppercase CPU, plural is CPUs.
 1.7 05-Feb-2003  perry branches: 1.7.2;
"Utilize" has exactly the same meaning as "use," but it is more
difficult to read and understand. Most manuals of English style
therefore say that you should use "use".
 1.6 06-Feb-2001  wdk Allow file to be included in assembler source (bootstrap code etc.)
 1.5 03-Dec-2000  matt Deal with -Wstrict-prototypes -Wmissing-prototypes
 1.4 19-Sep-2000  wdk branches: 1.4.2;
Forgot to commit this file with the 2 stage bootstrap
 1.3 16-Sep-2000  wdk Prototype prom_ioctl
 1.2 04-Sep-2000  wdk Add #define's for PROM entry point addresses which will be needed by any
replacement bootstrap routines
 1.1 19-Aug-2000  wdk - Add support for calling most prom firmware functions

- Using the prom getenv function determine the correct console port

- Remove old prom function hooks

- Tidy up bootflags (remove upper case names, fixup RB_ASKNAME) as
recommended by Jarom�r Dole�ek
 1.4.2.4 11-Feb-2001  bouyer Sync with HEAD.
 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 19-Sep-2000  bouyer file prom.h was added on branch thorpej_scsipi on 2000-11-20 20:14:07 +0000
 1.7.2.4 10-Nov-2005  skrll Sync with HEAD. Here we go again...
 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.10.78.2 04-May-2009  yamt sync with head.
 1.10.78.1 16-May-2008  yamt sync with head.
 1.10.76.1 18-May-2008  yamt sync with head.
 1.10.74.1 02-Jun-2008  mjf Sync with HEAD.
 1.11.14.1 13-May-2009  jym Sync with HEAD.

Commit is split, to avoid a "too many arguments" protocol error.
 1.11.8.1 28-Apr-2009  skrll Sync with HEAD.
 1.1 12-Aug-2000  wdk branches: 1.1.2;
Initial commit of port to MIPS Computer Systems RC3xxx systems.
Currently supports the RC3230
 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 12-Aug-2000  bouyer file psl.h was added on branch thorpej_scsipi on 2000-11-20 20:14:07 +0000
 1.1 12-Aug-2000  wdk branches: 1.1.2;
Initial commit of port to MIPS Computer Systems RC3xxx systems.
Currently supports the RC3230
 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 12-Aug-2000  bouyer file pte.h was added on branch thorpej_scsipi on 2000-11-20 20:14:07 +0000
 1.1 12-Aug-2000  wdk branches: 1.1.2;
Initial commit of port to MIPS Computer Systems RC3xxx systems.
Currently supports the RC3230
 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 12-Aug-2000  bouyer file ptrace.h was added on branch thorpej_scsipi on 2000-11-20 20:14:07 +0000
 1.1 12-Aug-2000  wdk branches: 1.1.2;
Initial commit of port to MIPS Computer Systems RC3xxx systems.
Currently supports the RC3230
 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 12-Aug-2000  bouyer file reg.h was added on branch thorpej_scsipi on 2000-11-20 20:14:08 +0000
 1.1 12-Aug-2000  wdk branches: 1.1.2;
Initial commit of port to MIPS Computer Systems RC3xxx systems.
Currently supports the RC3230
 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 12-Aug-2000  bouyer file regdef.h was added on branch thorpej_scsipi on 2000-11-20 20:14:08 +0000
 1.1 12-Aug-2000  wdk branches: 1.1.2;
Initial commit of port to MIPS Computer Systems RC3xxx systems.
Currently supports the RC3230
 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 12-Aug-2000  bouyer file regnum.h was added on branch thorpej_scsipi on 2000-11-20 20:14:08 +0000
 1.2 09-Sep-2001  simonb branches: 1.2.4;
Clean up and standardise across MIPS ports.
 1.1 12-Aug-2000  wdk branches: 1.1.2; 1.1.4; 1.1.6;
Initial commit of port to MIPS Computer Systems RC3xxx systems.
Currently supports the RC3230
 1.1.6.1 13-Sep-2001  thorpej Update the kqueue branch to HEAD.
 1.1.4.1 01-Oct-2001  fvdl Catch up with -current.
 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 12-Aug-2000  bouyer file reloc.h was added on branch thorpej_scsipi on 2000-11-20 20:14:08 +0000
 1.2.4.2 09-Sep-2001  simonb Clean up and standardise across MIPS ports.
 1.2.4.1 09-Sep-2001  simonb file reloc.h was added on branch nathanw_sa on 2001-09-09 04:20:28 +0000
 1.2 09-Feb-2007  ad branches: 1.2.4;
Merge newlock2 to head.
 1.1 22-Dec-2006  ad branches: 1.1.2;
file rwlock.h was initially added on branch newlock2.
 1.1.2.1 22-Dec-2006  ad Pull in CPU specific stubs.
 1.2.4.2 26-Feb-2007  yamt sync with head.
 1.2.4.1 09-Feb-2007  yamt file rwlock.h was added on branch yamt-lazymbuf on 2007-02-26 09:07:32 +0000
 1.1 12-Aug-2000  wdk branches: 1.1.2;
Initial commit of port to MIPS Computer Systems RC3xxx systems.
Currently supports the RC3230
 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 12-Aug-2000  bouyer file setjmp.h was added on branch thorpej_scsipi on 2000-11-20 20:14:08 +0000
 1.1 12-Aug-2000  wdk branches: 1.1.2;
Initial commit of port to MIPS Computer Systems RC3xxx systems.
Currently supports the RC3230
 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 12-Aug-2000  bouyer file signal.h was added on branch thorpej_scsipi on 2000-11-20 20:14:08 +0000
 1.2 19-Jul-2014  alnsn Sljit doesn't support MIPS I. Make sljitarch.h obsolete.
 1.1 25-Nov-2012  alnsn branches: 1.1.2; 1.1.6; 1.1.14;
Add sljitarch.h to all mips machines.
 1.1.14.1 10-Aug-2014  tls Rebase.
 1.1.6.3 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.1.6.2 25-Feb-2013  tls resync with head
 1.1.6.1 25-Nov-2012  tls file sljitarch.h was added on branch tls-maxphys on 2013-02-25 00:28:51 +0000
 1.1.2.2 16-Jan-2013  yamt sync with (a bit old) head
 1.1.2.1 25-Nov-2012  yamt file sljitarch.h was added on branch yamt-pagecache on 2013-01-16 05:33:01 +0000
 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 12-Aug-2000  wdk branches: 1.1.2;
Initial commit of port to MIPS Computer Systems RC3xxx systems.
Currently supports the RC3230
 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 12-Aug-2000  bouyer file stdarg.h was added on branch thorpej_scsipi on 2000-11-20 20:14:08 +0000
 1.6 20-Feb-2011  matt Merge forward matt-nb5-mips64
Adapt to new interrupt/spl framework
 1.5 14-Mar-2009  dsl branches: 1.5.4; 1.5.6; 1.5.8;
Remove all the __P() from sys (excluding sys/dist)
Diff checked with grep and MK1 eyeball.
i386 and amd64 GENERIC and sys still build.
 1.4 04-Mar-2007  christos branches: 1.4.44; 1.4.52; 1.4.58; 1.4.62;
Kill caddr_t; there will be some MI fallout, but it will be fixed shortly.
 1.3 15-Sep-2006  gdamore branches: 1.3.6;
Convert mipsco to generic TODR and TC. Compile tested only. If the
port-mipsco mailing list is any indication, nobody has actually run netbsd
on this port for several years.
 1.2 15-Aug-2000  wdk branches: 1.2.2; 1.2.42; 1.2.72;
* Tidy up interrupt handlers by implementing an intr_establish()
handler to hook up device interrupts and softc callbacks.

Suggested by: Jason Thorpe and Toru Nishimura

* Fixup the indenting in a few places to conform to NetBSD style
 1.1 12-Aug-2000  wdk Initial commit of port to MIPS Computer Systems RC3xxx systems.
Currently supports the RC3230
 1.2.72.1 18-Nov-2006  ad Sync with head.
 1.2.42.2 03-Sep-2007  yamt sync with head.
 1.2.42.1 30-Dec-2006  yamt sync with head.
 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 15-Aug-2000  bouyer file sysconf.h was added on branch thorpej_scsipi on 2000-11-20 20:14:09 +0000
 1.3.6.1 12-Mar-2007  rmind Sync with HEAD.
 1.4.62.1 29-Dec-2010  matt Adapt to the new interrupt framework.
(XXX hpcmips still has calls to _spllower which are not supported.)
 1.4.58.1 13-May-2009  jym Sync with HEAD.

Commit is split, to avoid a "too many arguments" protocol error.
 1.4.52.1 28-Apr-2009  skrll Sync with HEAD.
 1.4.44.1 04-May-2009  yamt sync with head.
 1.5.8.1 05-Mar-2011  bouyer Sync with HEAD
 1.5.6.1 06-Jun-2011  jruoho Sync with HEAD.
 1.5.4.1 05-Mar-2011  rmind sync with head
 1.1 12-Aug-2000  wdk branches: 1.1.2;
Initial commit of port to MIPS Computer Systems RC3xxx systems.
Currently supports the RC3230
 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 12-Aug-2000  bouyer file trap.h was added on branch thorpej_scsipi on 2000-11-20 20:14:09 +0000
 1.7 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.6 17-Oct-2007  garbled branches: 1.6.2; 1.6.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.5 14-Jul-2007  ad branches: 1.5.10;
Generic soft interrupts are mandatory.
 1.4 15-Sep-2006  gdamore branches: 1.4.10; 1.4.18;
Convert mipsco to generic TODR and TC. Compile tested only. If the
port-mipsco mailing list is any indication, nobody has actually run netbsd
on this port for several years.
 1.3 05-Aug-2002  simonb branches: 1.3.22; 1.3.52;
Use a __HAVE_BOOTINFO_H define to check for bootinfo support instead of
speading port names in arch-dependant code.
 1.2 31-Mar-2001  wdk branches: 1.2.2; 1.2.8; 1.2.16;
Add softintr and ISA bus support
 1.1 12-Aug-2000  wdk branches: 1.1.2; 1.1.4;
Initial commit of port to MIPS Computer Systems RC3xxx systems.
Currently supports the RC3230
 1.1.4.1 09-Apr-2001  nathanw Catch up with -current.
 1.1.2.3 21-Apr-2001  bouyer Sync with HEAD
 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 12-Aug-2000  bouyer file types.h was added on branch thorpej_scsipi on 2000-11-20 20:14:09 +0000
 1.2.16.1 31-Aug-2002  gehenna catch up with -current.
 1.2.8.2 13-Aug-2002  nathanw Catch up to -current.
 1.2.8.1 31-Mar-2001  nathanw file types.h was added on branch nathanw_sa on 2002-08-13 02:18:31 +0000
 1.2.2.1 06-Sep-2002  jdolecek sync kqueue branch with HEAD
 1.3.52.1 18-Nov-2006  ad Sync with head.
 1.3.22.3 21-Jan-2008  yamt sync with head
 1.3.22.2 03-Sep-2007  yamt sync with head.
 1.3.22.1 30-Dec-2006  yamt sync with head.
 1.4.18.1 03-Oct-2007  garbled Sync with HEAD
 1.4.10.1 15-Jul-2007  ad Sync with head.
 1.5.10.2 23-Mar-2008  matt sync with HEAD
 1.5.10.1 06-Nov-2007  matt sync with HEAD
 1.6.8.1 23-Jan-2008  bouyer Sync with HEAD.
 1.6.2.1 18-Feb-2008  mjf 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 12-Aug-2000  wdk branches: 1.1.2;
Initial commit of port to MIPS Computer Systems RC3xxx systems.
Currently supports the RC3230
 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 12-Aug-2000  bouyer file varargs.h was added on branch thorpej_scsipi on 2000-11-20 20:14:09 +0000
 1.2 14-Dec-2009  matt Merge from matt-nb5-mips64
Merge mips-specific arch files.
 1.1 12-Aug-2000  wdk branches: 1.1.2; 1.1.132; 1.1.150;
Initial commit of port to MIPS Computer Systems RC3xxx systems.
Currently supports the RC3230
 1.1.150.1 11-Dec-2009  matt Use the default set of VM_FREELISTs in <mips/vmparam.h> but allow them to
be overridden (for pmax).
 1.1.132.1 11-Mar-2010  yamt sync with head
 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 12-Aug-2000  bouyer file vmparam.h was added on branch thorpej_scsipi on 2000-11-20 20:14:09 +0000
 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:37:53 +0000
 1.2 11-Dec-2005  christos branches: 1.2.18;
merge ktrace-lwp.
 1.1 05-Nov-2005  tsutsui branches: 1.1.2;
Add empty <machine/wired_map.h> for the MI mips/wired_map.c.
 1.1.2.2 10-Nov-2005  skrll Sync with HEAD. Here we go again...
 1.1.2.1 05-Nov-2005  skrll file wired_map.h was added on branch ktrace-lwp on 2005-11-10 13:57:47 +0000
 1.2.18.2 21-Jun-2006  yamt sync with head.
 1.2.18.1 11-Dec-2005  yamt file wired_map.h was added on branch yamt-lazymbuf on 2006-06-21 14:53:48 +0000
 1.8 29-Mar-2008  tsutsui Split softc and device_t for zsc(4) and its children.

XXX we should restructure MI APIs and make it really machine independent.
 1.7 07-Nov-2007  ad branches: 1.7.14;
Merge tty changes from the vmlocking branch.
 1.6 11-Dec-2005  christos branches: 1.6.30; 1.6.48; 1.6.50; 1.6.54; 1.6.56;
merge ktrace-lwp.
 1.5 07-Aug-2003  agc branches: 1.5.16;
Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22364, verified by myself.
 1.4 15-Dec-2001  wdk branches: 1.4.16;
Declare KGDB hook functions.
 1.3 31-Mar-2001  wdk branches: 1.3.2; 1.3.8;
Add softintr and ISA bus support
 1.2 07-Feb-2001  wdk branches: 1.2.2;
Add a MD zs_chanstate layer that carries bus_space information

Tidy up several comments at same time.
 1.1 12-Aug-2000  wdk branches: 1.1.2;
Initial commit of port to MIPS Computer Systems RC3xxx systems.
Currently supports the RC3230
 1.1.2.4 21-Apr-2001  bouyer Sync with HEAD
 1.1.2.3 11-Feb-2001  bouyer Sync with HEAD.
 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 12-Aug-2000  bouyer file z8530var.h was added on branch thorpej_scsipi on 2000-11-20 20:14:09 +0000
 1.2.2.1 09-Apr-2001  nathanw Catch up with -current.
 1.3.8.2 08-Jan-2002  nathanw Catch up to -current.
 1.3.8.1 31-Mar-2001  nathanw file z8530var.h was added on branch nathanw_sa on 2002-01-08 00:26:29 +0000
 1.3.2.1 10-Jan-2002  thorpej Sync kqueue branch with -current.
 1.4.16.3 21-Sep-2004  skrll Fix the sync with head I botched.
 1.4.16.2 18-Sep-2004  skrll Sync with HEAD.
 1.4.16.1 03-Aug-2004  skrll Sync with HEAD
 1.5.16.1 15-Nov-2007  yamt sync with head.
 1.6.56.1 19-Nov-2007  mjf Sync with HEAD.
 1.6.54.1 13-Nov-2007  bouyer Sync with HEAD
 1.6.50.1 08-Nov-2007  matt sync with -HEAD
 1.6.48.1 11-Nov-2007  joerg Sync with HEAD.
 1.6.30.1 03-Dec-2007  ad Sync with HEAD.
 1.7.14.1 03-Apr-2008  mjf Sync with HEAD.

RSS XML Feed