Home | History | Annotate | only in /src/sys/arch/mips/conf
History log of /src/sys/arch/mips/conf
RevisionDateAuthorComments
 1.2 21-Nov-2008  tsutsui No need to install kern.ldscript since /usr/lkm is gone and
modload(8) no longer uses a linker script.
 1.1 10-Oct-2002  simonb branches: 1.1.2; 1.1.110; 1.1.114; 1.1.120; 1.1.122;
Install the kernel linker script in /usr/lkm/ldscript so that modload(8)
works without needing to resort to -A abuse. LKMs work cleanly on MIPS
now.
 1.1.122.1 19-Jan-2009  skrll Sync with HEAD.
 1.1.120.1 13-Dec-2008  haad Update haad-dm branch to haad-dm-base2.
 1.1.114.1 04-May-2009  yamt sync with head.
 1.1.110.1 17-Jan-2009  mjf Sync with HEAD.
 1.1.2.2 18-Oct-2002  nathanw Catch up to -current.
 1.1.2.1 10-Oct-2002  nathanw file Makefile was added on branch nathanw_sa on 2002-10-18 02:38:43 +0000
 1.73 26-Jul-2023  rin Use OBJCOPY_STRIPFLAGS instead of STRIPFLAGS.
 1.72 26-Apr-2021  christos branches: 1.72.14;
Produce elf32 images for mipsn64eb too
 1.71 25-Apr-2021  christos use ${MACHINE_MIPS64}
 1.70 01-Jan-2019  christos branches: 1.70.16;
ELF2ECOFF -> MIPS_ELF2ECOFF
 1.69 22-Sep-2018  rin - Determine KERN_AS automatically depending on whether OPT_MODULAR is
set or not, in the same way as libcompat.

- Specify OPT_MODULAR in the port Makefile instead of KERN_AS.

Now, KERN_AS=library is used for kernels without module(7) for all ports.

OK christos
 1.68 05-Jun-2018  christos branches: 1.68.2;
use the compiler way of passing arguments to the linker.
 1.67 22-Feb-2017  maya branches: 1.67.12;
leave the part for GCC >= 5.3 in.

Was a little over-eager and accidentally removed the else case.
 1.66 22-Feb-2017  maya GC workaround for GCC 4.8 fixed in GCC 5+
 1.65 29-Mar-2016  macallan branches: 1.65.2; 1.65.4;
make sure we compile mips_fpu.c and fp.S with -mhard-float
 1.64 28-Mar-2016  martin Restrict float format hacks to gcc 4.8
 1.63 18-Feb-2016  macallan gcc does not pass floating point options to the assembler
by default, because it is afraid that the stricter tests
will break userland code. The new binutils is pickier about
this. Gcc 5.x fixes the issue so for now, set explicitly
the assembler soft-float flags when we build the kernel.
see: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64569
 1.62 24-Aug-2015  uebayasi Define ${LINKSCRIPT} in one place.
 1.61 15-Nov-2014  uebayasi branches: 1.61.2;
LINKSCRIPT is set only once, so use = not +=.
 1.60 15-Nov-2014  uebayasi Use LINKSCRIPT.
 1.59 10-Mar-2013  christos Explicitly set KERN_AS (this could be done in /usr/src/sys/conf/Makefile.*)
so that modules work, on config files that did not set it explicitly. All
the files now use the standard logic, except the ones that set KERN_AS=obj
and Makefile.usermode which sets KERN_AS=library.
 1.58 20-Feb-2011  matt branches: 1.58.4; 1.58.14;
Major merge forward from matt-nb5-mips64.
New fixup code.
New common SPL code.
New common interrupt code.
Move related variables into structures.
Cleanup locore (move MD variable into it).
Kill StudlyCaps
Use PCU for FPU
 1.57 01-Feb-2011  matt Use elf32-ntrad{little,big}mips
 1.56 21-Jan-2011  joerg Switch remaining platforms to modern CPP for assembler.
 1.55 14-Dec-2009  matt branches: 1.55.4; 1.55.6; 1.55.8;
Merge from matt-nb5-mips64
Merge mips-specific arch files.
 1.54 15-Feb-2009  cube Convert the recently introduced awk command to retrieve the value of the
option MODULAR to using %MODULAR%. While it is now possible to only
request the new version in the affected Makefiles, it is made mandatory for
everybody because I just fixed a bug in config(1) that would not make it
fail in the case of a syntax error in the Makefile template.
 1.53 14-Feb-2009  apb Now that "options MODULAR" is handled via defflag, the Makefile
generated by config(1) in the kernel compile directory no longer
contains IDENT=-DMODULAR. Instead, there's an opt_modular.h file that
might or might not contain "#define MODULAR 1".

Adapt to this by adding an OPT_MODULAR variable to relevant Makefiles,
set via an awk script that parses opt_modular.h.
 1.52 11-Dec-2008  alc branches: 1.52.2;
Clean-up makefile stub used to include in the build the binary HAL object
 1.51 13-Nov-2008  ad LKM -> MODULAR
 1.50 18-Feb-2008  tsutsui branches: 1.50.6; 1.50.10; 1.50.16; 1.50.18; 1.50.20; 1.50.24;
Backout previous. vr_idle.S no longer depends on assym.h.
 1.49 18-Feb-2008  joerg Another assym.h dependency for hpcmips
 1.48 03-Jan-2008  joerg Missing assym.h dependency.
 1.47 17-Oct-2007  garbled branches: 1.47.2; 1.47.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.46 25-May-2007  tsutsui branches: 1.46.10;
Preserve local symbols on linking a kernel so that
we can get more useful trace on ddb(4).
 1.45 17-May-2007  yamt merge yamt-idlelwp branch. asked by core@. some ports still needs work.

from doc/BRANCHES:

idle lwp, and some changes depending on it.

1. separate context switching and thread scheduling.
(cf. gmcgarry_ctxsw)
2. implement idle lwp.
3. clean up related MD/MI interfaces.
4. make scheduler(s) modular.
 1.44 27-Aug-2006  matt branches: 1.44.6; 1.44.8; 1.44.12; 1.44.14; 1.44.20; 1.44.22;
Add -msym32 to CFLAGS when MACHINE_ARCH is mips64e[bl].

Since kernels are always run out of KSEG0 (0xffffffff.8xxxxxxx), we can
take advantage of that if we load a 32 bit address (0x8xxxxxxx) that it
will be sign-extended to 64 bits (0xffffffff.8xxxxxxx).

So instead of 6 instructions (2 lui, 2 daddiu, dsll32, daddu) to load an
address, the normal number of 2 instructions (lui, daddiu) will be used.

Thus telling gcc/gas that symbols will always be 32 bits significantly
shrinks (by 10%) and speeds up a MIPS64 kernel.
 1.43 27-Aug-2006  matt Sign extend DEFTEXTADDR on MIPS64.
 1.42 26-Aug-2006  matt Nuke unneeded LP64 conditional section
 1.41 04-Apr-2006  gdamore Add support for using the MIPS Atheros HAL.
Atheros WLAN added to default evbmips DBAU1500, DBAU1550, and MTX-1 configs.
Note that AR5312 config will require unique HAL that we don't have yet.
 1.40 11-Nov-2005  simonb branches: 1.40.6; 1.40.8; 1.40.10; 1.40.12; 1.40.14;
Build libkern as a .o if LKMs are enabled so that all libkern functions
are available to LKMs, not just those needed by the kernel at link time.

From PR port-mips/31857 from Takehiko NOZAKI.
 1.39 31-May-2005  christos branches: 1.39.2;
s/GENASSYM/GENASSYM_CONF/ so we can use "GENASSYM" as the program name.
 1.38 01-Oct-2004  sekiya Set LP64 default to "no".
 1.37 01-Oct-2004  sekiya Rework previous slightly, so that ld is passed the right flags for 64-bit mode.
 1.36 29-Sep-2004  sekiya Allow arguments to as/ld to be specified in the kernel config file. Provide
a mechanism to override ranlib.
 1.35 04-Jun-2004  thorpej Add the %MAKEOPTIONSAPPEND token at the end of the file, after the
common Makefile.kern.inc has been included.
 1.34 05-Oct-2003  tsutsui branches: 1.34.4;
Define ELF2ECOFF here for native build.

(BTW, objcopy with OMAGIC kernel won't work on old pmax and sgimips machines?)
 1.33 04-Jul-2003  simonb Add some dependancies on assym.h; helps "make -j N" kernel builds.
 1.32 09-Dec-2002  simonb branches: 1.32.6;
Remove the explicit `makeoptions MACHINE_ARCH="mipse{b,l}"' for kernel
builds and use the endianness of the toolchain being used to determine
the endianness of the kernel.
 1.31 09-Nov-2002  thorpej Build with kernel with -msoft-float.
 1.30 09-Nov-2002  thorpej * Add -mno-abicalls to AFLAGS.
* GCC 3.3's traditional preprocessor functions properly now, so we
no longer need to special-case it.
 1.29 09-Nov-2002  thorpej Nuke the CROSSDIR stuff.
 1.28 09-Nov-2002  thorpej No need to pass -mno-half-pic; NetBSD's compiler does not generate
half-pic references.
 1.27 04-Jun-2002  thorpej Don't use -traditional-cpp if HAVE_GCC3.
 1.26 05-Mar-2002  simonb branches: 1.26.6; 1.26.8;
Don't explicitly depend locore_*.S and fp.S on assym.h - this is done
for all .S files in /sys/conf/Makefile.kern.inc.
 1.25 09-Dec-2001  atatat Roll the rest of the ports over to the new MI kernel build machinery.
Any problems reported by testers have been fixed, and massive
cross-compiling of kernels has shown that any problems that remain
with actually building kernels are not related to this.
 1.24 26-Oct-2001  shin branches: 1.24.2;
remove " in assignment of ENDIAN.
fixes mipseb link breakage.
 1.23 26-Oct-2001  jmc Change defaults for kernel compiles. Default all to USETOOLS?=no and have
the etc Makefile override that by putting USETOOLS into $.MAKEOVERRIDES
This way the default for kernel compiles is still to use the installed
toolchain instead of depending on $TOOLDIR. $TOOLDIR can be used by
simply adding USETOOLS=yes to the command line as usual.

Adjust each ports template to set the default no setting and also pull in
bsd.own.mk if they weren't already to ensure they'll build correctly
with the new toolchain setup.
 1.22 23-Oct-2001  thorpej branches: 1.22.2;
For MIPS kernel Makefiles, don't set ENDIAN in std.${MACHINE}. Instead,
explicitly set MACHINE_ARCH to the appropriate thing. Makefile.mips will
then set all of the internal variables it needs to accordingly.
 1.21 23-Oct-2001  thorpej Use MACHINE, not TARGET_MACHINE.
 1.20 16-Oct-2001  uch R5900 support.
COP0_SYNC
In R5900 mtc0, tlbr, tlbp, tlbwi, tlbwr must be followed by sync.p.
if defined MIPS3_5900, COP0_SYNC is defined as sync.p. else nothing.
IPL_ICU_MASK
mask interrupt directly ICU instead of SR.IM.
I've added this feature to support software interrupt for R5900.
and this option may be useful for platform which has cascaded ICU.
 1.19 08-Oct-2001  simonb Use a separate variable (${KERNLDSCRIPT}) for the name of the kernel
ld script, so it can be used in other places.
 1.18 05-Oct-2001  simonb Use ".-include" instead of the ".if exists(...) ..." dance.
 1.17 05-Oct-2001  simonb Use a single ldscript instead of separate scripts for either endianness;
use command line parameters to ld(1) instead to set the endian format.
Clean up some endian decisions in mips/conf/Makefile.mips.
Wrap some long lines.
 1.16 19-Jul-2001  oster branches: 1.16.2;
By adding a well-placed space or two, 'make depend' no longer loses
due to a directory name like 'arc.current' messing up a sed substitution.
 1.15 15-Jul-2001  takemura Suppress warning message:
warning: duplicate script for target "fp.o" ignored
And delete verbose ifs.
 1.14 29-May-2001  mrg branches: 1.14.2;
define _KERNEL_OPT as well as _KERNEL. we will use this in the future to
get kernel "opt_foo.h" headers, rather than _KERNEL && !_LKM.
 1.13 23-May-2001  hubertf Allow overriding the 'install' target.

(I have a nice 'install' target for cobalts here, but that only works there.
I guess I'll put that into htdocs now that the cobalt port uses Makefile.mips)
 1.12 28-Mar-2001  tsutsui Define ${OBJCOPY}.

XXX: Should we use ${CROSSDIR} here or not?
 1.11 04-Jan-2001  shin branches: 1.11.2;
- don't ignore DEFCOPTS (Makefile.mips).
- DEFCOPTS of hpcmips is "-Os -mmemcpy" (std.hpcmips).
 1.10 17-Dec-2000  jdolecek delete obsolete comment
 1.9 09-Dec-2000  matt cpp/lorder/mkdep don't have cross specific versions.
 1.8 03-Dec-2000  matt branches: 1.8.2;
Add DEFGP/CROSSDIR for hpcmips.
 1.7 03-Dec-2000  matt Remove redundant depend of fp.S
 1.6 03-Dec-2000  matt Include FP support if NOFPU is *NOT* defined.
 1.5 03-Dec-2000  matt Revert back to a machinearch (really cputype) of mips. Put ENDIAN back.
 1.4 03-Dec-2000  matt Deal with lack of floating point on hpcmips, etc.
 1.3 03-Dec-2000  matt Change arch from mips to mipsel/mipseb as appropriate. Nuke the ENDIAN
makeoption. Key off MACHINE_ARCH for adding -EB/-EL to CFLAGS/AFLAGS/LD/
LINKFLAGS.
 1.2 03-Dec-2000  matt Add a POST_STRIP_SYSTEM_LD_FLAGS for mipsco and pmax.
 1.1 03-Dec-2000  matt Start using a Makefile.mips. Use a combination of makeoptions and
Makefile.sgimips.inc which has sgimips specific stuff.
 1.8.2.5 21-Apr-2001  bouyer Sync with HEAD
 1.8.2.4 05-Jan-2001  bouyer Sync with HEAD
 1.8.2.3 13-Dec-2000  bouyer Sync with HEAD (for UBC fixes).
 1.8.2.2 08-Dec-2000  bouyer Sync with HEAD.
 1.8.2.1 03-Dec-2000  bouyer file Makefile.mips was added on branch thorpej_scsipi on 2000-12-08 09:28:20 +0000
 1.11.2.2 21-Jun-2001  nathanw Catch up to -current.
 1.11.2.1 09-Apr-2001  nathanw Catch up with -current.
 1.14.2.4 23-Jun-2002  jdolecek catch up with -current on kqueue branch
 1.14.2.3 16-Mar-2002  jdolecek Catch up with -current.
 1.14.2.2 10-Jan-2002  thorpej Sync kqueue branch with -current.
 1.14.2.1 03-Aug-2001  lukem update to -current
 1.16.2.1 11-Oct-2001  fvdl Catch up with -current. Fix some bogons in the sparc64 kbd/ms
attach code. cd18xx conversion provided by mrg.
 1.22.2.2 12-Nov-2001  thorpej Sync the thorpej-mips-cache branch with -current.
 1.22.2.1 07-Nov-2001  shin sync with trunk.
fixes mipseb link error.
 1.24.2.6 11-Dec-2002  thorpej Sync with HEAD.
 1.24.2.5 11-Nov-2002  nathanw Catch up to -current
 1.24.2.4 20-Jun-2002  nathanw Catch up to -current.
 1.24.2.3 01-Apr-2002  nathanw Catch up to -current.
(CVS: It's not just a program. It's an adventure!)
 1.24.2.2 08-Jan-2002  nathanw Catch up to -current.
 1.24.2.1 26-Oct-2001  nathanw file Makefile.mips was added on branch nathanw_sa on 2002-01-08 00:26:15 +0000
 1.26.8.1 15-Nov-2002  lukem Pull up revision 1.31 (via patch) (requested by thorpej in ticket #976):
Build with kernel with -msoft-float.
 1.26.6.1 14-Jul-2002  gehenna catch up with -current.
 1.32.6.6 11-Dec-2005  christos Sync with head.
 1.32.6.5 10-Nov-2005  skrll Sync with HEAD. Here we go again...
 1.32.6.4 19-Oct-2004  skrll Sync with HEAD
 1.32.6.3 21-Sep-2004  skrll Fix the sync with head I botched.
 1.32.6.2 18-Sep-2004  skrll Sync with HEAD.
 1.32.6.1 03-Aug-2004  skrll Sync with HEAD
 1.34.4.1 06-Feb-2005  jmc Pull up patch (requested by martti in ticket #1086)
Move ipf to sys/dist/ipf and sync w. trunk
 1.39.2.4 21-Jan-2008  yamt sync with head
 1.39.2.3 03-Sep-2007  yamt sync with head.
 1.39.2.2 30-Dec-2006  yamt sync with head.
 1.39.2.1 21-Jun-2006  yamt sync with head.
 1.40.14.1 24-May-2006  tron Merge 2006-05-24 NetBSD-current into the "peter-altq" branch.
 1.40.12.1 19-Apr-2006  elad sync with head - hopefully this will work
 1.40.10.2 03-Sep-2006  yamt sync with head.
 1.40.10.1 11-Apr-2006  yamt sync with head
 1.40.8.1 22-Apr-2006  simonb Sync with head.
 1.40.6.1 09-Sep-2006  rpaulo sync with head
 1.44.22.1 03-Sep-2007  wrstuden Sync w/ NetBSD-4-RC_1
 1.44.20.2 26-Jun-2007  garbled Sync with HEAD.
 1.44.20.1 22-May-2007  matt Update to HEAD.
 1.44.14.1 11-Jul-2007  mjf Sync with head.
 1.44.12.1 27-May-2007  ad Sync with head.
 1.44.8.1 18-Apr-2007  ad - Further adaptations to MIPS for the yamt-idlelwp branch.
- Make curlwp a register variable on MIPS.
 1.44.6.1 11-Jun-2007  liamjfoy Pull up following revision(s) (requested by tsutsui in ticket #715):
sys/arch/mips/mips/trap.c: revision 1.212
sys/arch/sbmips/conf/GENERIC: revision 1.60
sys/arch/mips/conf/Makefile.mips: revision 1.46
Preserve local symbols on linking a kernel so that
we can get more useful trace on ddb(4).
Bump SYMTAB_SPACE so that it fits again.
Use the kernel symbol table to see the beginning of the current
subroutine to get more proper backtrace on ddb(4).
In the previous code it scans backwards from the current PC
for the end of the previous subroutine and checks "jr ra" or
"jr k0" instructions, but it often fails because gcc is
so aggressive nowadays as to reorder instruction blocks
to create efficient code path by branch predict etc. and
"jr ra" is not always located at the end of subroutines.
No objection on port-mips.
 1.46.10.2 09-Jan-2008  matt sync with HEAD
 1.46.10.1 06-Nov-2007  matt sync with HEAD
 1.47.8.1 08-Jan-2008  bouyer Sync with HEAD
 1.47.2.1 18-Feb-2008  mjf Sync with HEAD.
 1.50.24.7 21-Apr-2010  matt sync with netbsd-5
 1.50.24.6 14-Feb-2010  matt We use ntrad* and so make objcopy use them too.
 1.50.24.5 30-Jan-2010  matt Change MIPS_CURLWP from s7 to t8. In a MALTA64 kernel, s6 is used 9155 times
which means the compiler could really use s7 is was free to do so. The least
used temporary was t8 (288 times). Once the kernel was switched to use t8 for
MIPS_CURLWP, s7 was used 7524 times.

Additionally a MALTA32 kernel shrunk by 6205 instructions (24820 bytes) or
about 1% of its text size.

[For some reason, pre-change t1 was never used and post change t2 was never
used. Not sure why.]
 1.50.24.4 26-Jan-2010  matt Revamp pmap. Add exec page caching logic from powerpc oea pmap. Shrink struct
vm_page by placing the first pv_entry in it. Remove pv_flags since nothing
really needed it. Add pmap counters. Rework virtual cache alias logic.
Allow pmap_copy_page and pmap_zero_page to deal with non-KSEG0 mappable pages.
 1.50.24.3 16-Sep-2009  matt When making a ELF64 kernel, use objcopy to make a ELF32 N32 version as well.
The loader can't tell and this avoid requiring 64bit aware bootloaders.
 1.50.24.2 21-Aug-2009  matt Use LINKFORMAT, not LINKFLAGS.
 1.50.24.1 20-Aug-2009  matt Add support for building N64 kernels. This is done by adding
makeoptions LP64="yes"

to your config file.
 1.50.20.1 07-Aug-2009  snj Pull up following revision(s) (requested by sborrill in ticket #905):
sys/arch/alpha/conf/Makefile.alpha: revision 1.81
sys/arch/amd64/conf/Makefile.amd64: revision 1.26
sys/arch/i386/conf/Makefile.i386: revision 1.162
sys/arch/macppc/conf/Makefile.macppc: revision 1.31
sys/arch/mips/conf/Makefile.mips: revision 1.52
sys/arch/sparc64/conf/Makefile.sparc64: revision 1.68
sys/arch/xen/conf/Makefile.xen: revision 1.28
Clean-up makefile stub used to include in the build the binary HAL object
 1.50.18.2 03-Mar-2009  skrll Sync with HEAD.
 1.50.18.1 19-Jan-2009  skrll Sync with HEAD.
 1.50.16.1 13-Dec-2008  haad Update haad-dm branch to haad-dm-base2.
 1.50.10.2 11-Mar-2010  yamt sync with head
 1.50.10.1 04-May-2009  yamt sync with head.
 1.50.6.1 17-Jan-2009  mjf Sync with HEAD.
 1.52.2.1 13-May-2009  jym Sync with HEAD.

Commit is split, to avoid a "too many arguments" protocol error.
 1.55.8.2 05-Mar-2011  bouyer Sync with HEAD
 1.55.8.1 08-Feb-2011  bouyer Sync with HEAD
 1.55.6.1 06-Jun-2011  jruoho Sync with HEAD.
 1.55.4.1 05-Mar-2011  rmind sync with head
 1.58.14.2 03-Dec-2017  jdolecek update from HEAD
 1.58.14.1 23-Jun-2013  tls resync from head
 1.58.4.1 22-May-2014  yamt sync with head.

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

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.61.2.4 28-Aug-2017  skrll Sync with HEAD
 1.61.2.3 22-Apr-2016  skrll Sync with HEAD
 1.61.2.2 19-Mar-2016  skrll Sync with HEAD
 1.61.2.1 22-Sep-2015  skrll Sync with HEAD
 1.65.4.1 21-Apr-2017  bouyer Sync with HEAD
 1.65.2.1 20-Mar-2017  pgoyette Sync with HEAD
 1.67.12.3 18-Jan-2019  pgoyette Synch with HEAD
 1.67.12.2 30-Sep-2018  pgoyette Ssync with HEAD
 1.67.12.1 25-Jun-2018  pgoyette Sync with HEAD
 1.68.2.1 10-Jun-2019  christos Sync with HEAD
 1.70.16.1 13-May-2021  thorpej Sync with HEAD.
 1.72.14.1 11-Sep-2023  martin Pull up following revision(s) (requested by rin in ticket #363):

sys/arch/aarch64/conf/Makefile.aarch64: revision 1.24
sys/arch/aarch64/conf/Makefile.aarch64: revision 1.25
sys/arch/shark/conf/Makefile.shark.inc: revision 1.28
sys/arch/alpha/conf/Makefile.alpha: revision 1.88
sys/arch/mips/conf/Makefile.mips: revision 1.73
sys/conf/Makefile.kern.inc: revision 1.298
sys/conf/Makefile.kern.inc: revision 1.299
sys/arch/cats/conf/Makefile.cats.inc: revision 1.37
sys/arch/arm/conf/Makefile.arm: revision 1.56
sys/arch/arm/conf/Makefile.arm: revision 1.57
sys/arch/riscv/conf/Makefile.riscv: revision 1.10

Always use arm-elf2aout; no a.out support both for binutils{,.old}

Fix kernel size inflation for arm and aarch64 (PR toolchain/57146)

For some conditions, SYSTEM_LD_TAIL is set for arm and aarch64.
Then, ctfmerge(1) in default SYSTEM_LD_TAIL is unintentionally
skipped, which results in the catastrophic kernel size inflation,
as reported in the PR.

Also, introduce and use OBJCOPY_STRIPFLAGS variable instead of
STRIPFLAGS, as strip(1) is replaced by objcopy(1) during MI
kernel build procedure.

For Makefile.{arm,aarch64}, weird logic is used to determine how
to handle debug symbols; MKDEBUG{,KERNEL} are taken into account
later in sys/conf/Makefile.kern.inc.

Use OBJCOPY_STRIPFLAGS instead of STRIPFLAGS.
Simplify fix for PR toolchain/57146

Introduce ARCH_STRIP_SYMBOLS variable to centralize logic for debug
symbols from MD Makefile's to Makefile.kern.inc.
 1.4 23-Apr-2016  skrll Merge nick-nhusb

- API / infrastructure changes to support memory management changes.
- Memory management improvements and bug fixes.
- HCDs should now be MP safe
- conversion to KERNHIST based debug
- FS/LS isoc support on ehci(4).
- conversion to kmem(9)
- Some USB 3 support - mostly from Takahiro HAYASHI (t-hash).
- interrupt transfers now get proper DMA operations
- general bug fixes
- kern/48308
- uhub status notification improvements
- umass(4) probe fix (applied to HEAD already)
- ohci(4) short transfer fix
 1.3 04-Apr-2011  dyoung branches: 1.3.14; 1.3.30; 1.3.32; 1.3.36;
Make usb_dma a dependency of ahci(4), since it needs usb_allocmem(9).
 1.2 20-Mar-2007  dyoung branches: 1.2.2; 1.2.4; 1.2.10; 1.2.22; 1.2.68; 1.2.74;
Comment out admflash, I have not supplied a source file for that,
yet.
 1.1 20-Mar-2007  dyoung Add a port to the Infineon ADM5120.

Basics: the ADM5120 is a 175 MHz MIPS32 4Kc processor featuring a
6-port ethernet 10/100 switch with Auto MDI/X, a PCI controller,
USB 1.1 controller, UART, watchdog timer, eight GPIO pins, and a
multiport memory controller with both NOR and NAND flash support.
This code supports most of the devices on the ADM5120, including
the 6-port switch (each port attaches as an ethernet, admsw0 through
admsw5), the PCI controller, USB controller, GPIO, watchdog, and
UART.

Remaining work: the port includes no NOR/NAND flash drivers. No
bootloader is included. I have only tested the PCI bus driver with
the use of one PCI slot on the RouterBOARD 153. It is not possible
to exploit the capabilities of the ethernet switch using bridge(4).
I have only netbooted the ADM5120 on the RB153. Booting other
boards, and booting from flash memory, remains to be done.

Hardware availability: many low-cost routers, including the
RouterBOARD 100 series at RouterBOARD.com, use the Infineon ADM5120
processor.

Credits: Ruslan Ermilov and Vsevolod Lobko ported to the ADM5120,
and they wrote device drivers for the UART, USB controller, and
10/100 switch. Matt Isaacs brought the port up-to-date with
NetBSD-current, made it compile, and ran it first on the RB153.
I added drivers for the PCI controller, GPIO, and watchdog timer.
I produced the bus attachment for the CompactFlash slot with advice
from Mikrotik technical support and from Matt Thomas.
 1.2.74.1 06-Jun-2011  jruoho Sync with HEAD.
 1.2.68.1 21-Apr-2011  rmind sync with head
 1.2.22.2 03-Sep-2007  yamt sync with head.
 1.2.22.1 20-Mar-2007  yamt file files.adm5120 was added on branch yamt-lazymbuf on 2007-09-03 14:27:55 +0000
 1.2.10.2 11-Jul-2007  mjf Sync with head.
 1.2.10.1 20-Mar-2007  mjf file files.adm5120 was added on branch mjf-ufs-trans on 2007-07-11 20:00:45 +0000
 1.2.4.2 10-Apr-2007  ad Sync with head.
 1.2.4.1 20-Mar-2007  ad file files.adm5120 was added on branch vmlocking on 2007-04-10 13:22:44 +0000
 1.2.2.2 24-Mar-2007  yamt sync with head.
 1.2.2.1 20-Mar-2007  yamt file files.adm5120 was added on branch yamt-idlelwp on 2007-03-24 14:54:54 +0000
 1.3.36.1 23-Jan-2017  skrll Adapt to branch
 1.3.32.1 04-Dec-2014  skrll Rework roothub control transfers so that much of the code is shared
across HCDs.

I have retained the vendor/product reporting for each HCD for now,
but it maybe get removed later.

ahci(4) now reports a language table and uses the usb_makestrdesc
function instead of rolling its own version.
 1.3.30.1 05-Apr-2017  snj Pull up following revision(s) (requested by skrll in ticket #1395):
share/man/man4/axe.4: netbsd-7-nhusb
share/man/man4/axen.4: netbsd-7-nhusb
share/man/man4/cdce.4: netbsd-7-nhusb
share/man/man4/uaudio.4: netbsd-7-nhusb
share/man/man4/ucom.4: netbsd-7-nhusb
share/man/man4/uep.4: netbsd-7-nhusb
share/man/man4/urtw.4: netbsd-7-nhusb
share/man/man4/usb.4: netbsd-7-nhusb
share/man/man4/uyap.4: netbsd-7-nhusb
share/man/man4/xhci.4: netbsd-7-nhusb
share/man/man9/usbdi.9: netbsd-7-nhusb
sys/arch/amd64/conf/ALL: netbsd-7-nhusb
sys/arch/amd64/conf/GENERIC: netbsd-7-nhusb
sys/arch/amiga/dev/slhci_zbus.c: netbsd-7-nhusb
sys/arch/arm/allwinner/awin_otg.c: netbsd-7-nhusb
sys/arch/arm/allwinner/awin_usb.c: netbsd-7-nhusb
sys/arch/arm/amlogic/amlogic_dwctwo.c: netbsd-7-nhusb
sys/arch/arm/at91/at91ohci.c: netbsd-7-nhusb
sys/arch/arm/broadcom/bcm2835_dwctwo.c: netbsd-7-nhusb
sys/arch/arm/broadcom/bcm53xx_usb.c: netbsd-7-nhusb
sys/arch/arm/ep93xx/epohci.c: netbsd-7-nhusb
sys/arch/arm/gemini/obio_ehci.c: netbsd-7-nhusb
sys/arch/arm/imx/files.imx23: netbsd-7-nhusb
sys/arch/arm/imx/imxusb.c: netbsd-7-nhusb
sys/arch/arm/imx/imxusbreg.h: netbsd-7-nhusb
sys/arch/arm/omap/obio_ohci.c: netbsd-7-nhusb
sys/arch/arm/omap/omap3_ehci.c: netbsd-7-nhusb
sys/arch/arm/omap/omapl1x_ohci.c: netbsd-7-nhusb
sys/arch/arm/omap/tiotg.c: netbsd-7-nhusb
sys/arch/arm/s3c2xx0/ohci_s3c24x0.c: netbsd-7-nhusb
sys/arch/arm/samsung/exynos_usb.c: netbsd-7-nhusb
sys/arch/arm/xscale/pxa2x0_ohci.c: netbsd-7-nhusb
sys/arch/arm/zynq/zynq_usb.c: netbsd-7-nhusb
sys/arch/hpcarm/dev/nbp_slhci.c: netbsd-7-nhusb
sys/arch/hpcmips/dev/plumohci.c: netbsd-7-nhusb
sys/arch/i386/conf/ALL: netbsd-7-nhusb
sys/arch/i386/conf/GENERIC: netbsd-7-nhusb
sys/arch/i386/pci/gcscehci.c: netbsd-7-nhusb
sys/arch/luna68k/conf/GENERIC: netbsd-7-nhusb
sys/arch/mips/adm5120/dev/ahci.c: netbsd-7-nhusb
sys/arch/mips/adm5120/dev/ahcivar.h: netbsd-7-nhusb
sys/arch/mips/alchemy/dev/ohci_aubus.c: netbsd-7-nhusb
sys/arch/mips/atheros/dev/ehci_arbus.c: netbsd-7-nhusb
sys/arch/mips/atheros/dev/ohci_arbus.c: netbsd-7-nhusb
sys/arch/mips/conf/files.adm5120: netbsd-7-nhusb
sys/arch/mips/ralink/ralink_ehci.c: netbsd-7-nhusb
sys/arch/mips/ralink/ralink_ohci.c: netbsd-7-nhusb
sys/arch/mips/rmi/rmixl_ehci.c: netbsd-7-nhusb
sys/arch/mips/rmi/rmixl_ohci.c: netbsd-7-nhusb
sys/arch/playstation2/dev/ohci_sbus.c: netbsd-7-nhusb
sys/arch/powerpc/booke/dev/pq3ehci.c: netbsd-7-nhusb
sys/arch/powerpc/ibm4xx/dev/dwctwo_plb.c: netbsd-7-nhusb
sys/arch/x68k/dev/slhci_intio.c: netbsd-7-nhusb
sys/conf/files: netbsd-7-nhusb
sys/dev/cardbus/ehci_cardbus.c: netbsd-7-nhusb
sys/dev/cardbus/ohci_cardbus.c: netbsd-7-nhusb
sys/dev/cardbus/uhci_cardbus.c: netbsd-7-nhusb
sys/dev/ic/sl811hs.c: netbsd-7-nhusb
sys/dev/ic/sl811hsvar.h: netbsd-7-nhusb
sys/dev/isa/slhci_isa.c: netbsd-7-nhusb
sys/dev/marvell/ehci_mv.c: netbsd-7-nhusb
sys/dev/pci/ehci_pci.c: netbsd-7-nhusb
sys/dev/pci/ohci_pci.c: netbsd-7-nhusb
sys/dev/pci/uhci_pci.c: netbsd-7-nhusb
sys/dev/pci/xhci_pci.c: netbsd-7-nhusb
sys/dev/pcmcia/slhci_pcmcia.c: netbsd-7-nhusb
sys/dev/usb/Makefile.usbdevs: netbsd-7-nhusb
sys/dev/usb/TODO: netbsd-7-nhusb
sys/dev/usb/TODO.usbmp: netbsd-7-nhusb
sys/dev/usb/aubtfwl.c: netbsd-7-nhusb
sys/dev/usb/auvitek.c: netbsd-7-nhusb
sys/dev/usb/auvitek_audio.c: netbsd-7-nhusb
sys/dev/usb/auvitek_dtv.c: netbsd-7-nhusb
sys/dev/usb/auvitek_i2c.c: netbsd-7-nhusb
sys/dev/usb/auvitek_video.c: netbsd-7-nhusb
sys/dev/usb/auvitekvar.h: netbsd-7-nhusb
sys/dev/usb/ehci.c: netbsd-7-nhusb
sys/dev/usb/ehcireg.h: netbsd-7-nhusb
sys/dev/usb/ehcivar.h: netbsd-7-nhusb
sys/dev/usb/emdtv.c: netbsd-7-nhusb
sys/dev/usb/emdtv_dtv.c: netbsd-7-nhusb
sys/dev/usb/emdtv_ir.c: netbsd-7-nhusb
sys/dev/usb/emdtvvar.h: netbsd-7-nhusb
sys/dev/usb/ezload.c: netbsd-7-nhusb
sys/dev/usb/ezload.h: netbsd-7-nhusb
sys/dev/usb/files.usb: netbsd-7-nhusb
sys/dev/usb/hid.c: netbsd-7-nhusb
sys/dev/usb/hid.h: netbsd-7-nhusb
sys/dev/usb/if_athn_usb.c: netbsd-7-nhusb
sys/dev/usb/if_athn_usb.h: netbsd-7-nhusb
sys/dev/usb/if_atu.c: netbsd-7-nhusb
sys/dev/usb/if_atureg.h: netbsd-7-nhusb
sys/dev/usb/if_aue.c: netbsd-7-nhusb
sys/dev/usb/if_auereg.h: netbsd-7-nhusb
sys/dev/usb/if_axe.c: netbsd-7-nhusb
sys/dev/usb/if_axen.c: netbsd-7-nhusb
sys/dev/usb/if_axenreg.h: netbsd-7-nhusb
sys/dev/usb/if_axereg.h: netbsd-7-nhusb
sys/dev/usb/if_cdce.c: netbsd-7-nhusb
sys/dev/usb/if_cdcereg.h: netbsd-7-nhusb
sys/dev/usb/if_cue.c: netbsd-7-nhusb
sys/dev/usb/if_cuereg.h: netbsd-7-nhusb
sys/dev/usb/if_kue.c: netbsd-7-nhusb
sys/dev/usb/if_kuereg.h: netbsd-7-nhusb
sys/dev/usb/if_otus.c: netbsd-7-nhusb
sys/dev/usb/if_otusvar.h: netbsd-7-nhusb
sys/dev/usb/if_rum.c: netbsd-7-nhusb
sys/dev/usb/if_rumreg.h: netbsd-7-nhusb
sys/dev/usb/if_rumvar.h: netbsd-7-nhusb
sys/dev/usb/if_run.c: netbsd-7-nhusb
sys/dev/usb/if_runvar.h: netbsd-7-nhusb
sys/dev/usb/if_smsc.c: netbsd-7-nhusb
sys/dev/usb/if_smscreg.h: netbsd-7-nhusb
sys/dev/usb/if_smscvar.h: netbsd-7-nhusb
sys/dev/usb/if_udav.c: netbsd-7-nhusb
sys/dev/usb/if_udavreg.h: netbsd-7-nhusb
sys/dev/usb/if_upgt.c: netbsd-7-nhusb
sys/dev/usb/if_upgtvar.h: netbsd-7-nhusb
sys/dev/usb/if_upl.c: netbsd-7-nhusb
sys/dev/usb/if_ural.c: netbsd-7-nhusb
sys/dev/usb/if_uralreg.h: netbsd-7-nhusb
sys/dev/usb/if_uralvar.h: netbsd-7-nhusb
sys/dev/usb/if_url.c: netbsd-7-nhusb
sys/dev/usb/if_urlreg.h: netbsd-7-nhusb
sys/dev/usb/if_urndis.c: netbsd-7-nhusb
sys/dev/usb/if_urndisreg.h: netbsd-7-nhusb
sys/dev/usb/if_urtw.c: netbsd-7-nhusb
sys/dev/usb/if_urtwn.c: netbsd-7-nhusb
sys/dev/usb/if_urtwn_data.h: netbsd-7-nhusb
sys/dev/usb/if_urtwnreg.h: netbsd-7-nhusb
sys/dev/usb/if_urtwnvar.h: netbsd-7-nhusb
sys/dev/usb/if_urtwreg.h: netbsd-7-nhusb
sys/dev/usb/if_zyd.c: netbsd-7-nhusb
sys/dev/usb/if_zydreg.h: netbsd-7-nhusb
sys/dev/usb/irmce.c: netbsd-7-nhusb
sys/dev/usb/moscom.c: netbsd-7-nhusb
sys/dev/usb/motg.c: netbsd-7-nhusb
sys/dev/usb/motgvar.h: netbsd-7-nhusb
sys/dev/usb/ohci.c: netbsd-7-nhusb
sys/dev/usb/ohcireg.h: netbsd-7-nhusb
sys/dev/usb/ohcivar.h: netbsd-7-nhusb
sys/dev/usb/pseye.c: netbsd-7-nhusb
sys/dev/usb/slurm.c: netbsd-7-nhusb
sys/dev/usb/stuirda.c: netbsd-7-nhusb
sys/dev/usb/u3g.c: netbsd-7-nhusb
sys/dev/usb/uark.c: netbsd-7-nhusb
sys/dev/usb/uatp.c: netbsd-7-nhusb
sys/dev/usb/uaudio.c: netbsd-7-nhusb
sys/dev/usb/uberry.c: netbsd-7-nhusb
sys/dev/usb/ubsa.c: netbsd-7-nhusb
sys/dev/usb/ubsa_common.c: netbsd-7-nhusb
sys/dev/usb/ubsavar.h: netbsd-7-nhusb
sys/dev/usb/ubt.c: netbsd-7-nhusb
sys/dev/usb/uchcom.c: netbsd-7-nhusb
sys/dev/usb/ucom.c: netbsd-7-nhusb
sys/dev/usb/ucomvar.h: netbsd-7-nhusb
sys/dev/usb/ucycom.c: netbsd-7-nhusb
sys/dev/usb/udl.c: netbsd-7-nhusb
sys/dev/usb/udl.h: netbsd-7-nhusb
sys/dev/usb/udsbr.c: netbsd-7-nhusb
sys/dev/usb/udsir.c: netbsd-7-nhusb
sys/dev/usb/uep.c: netbsd-7-nhusb
sys/dev/usb/uftdi.c: netbsd-7-nhusb
sys/dev/usb/uftdireg.h: netbsd-7-nhusb
sys/dev/usb/ugen.c: netbsd-7-nhusb
sys/dev/usb/ugensa.c: netbsd-7-nhusb
sys/dev/usb/uhci.c: netbsd-7-nhusb
sys/dev/usb/uhcireg.h: netbsd-7-nhusb
sys/dev/usb/uhcivar.h: netbsd-7-nhusb
sys/dev/usb/uhid.c: netbsd-7-nhusb
sys/dev/usb/uhidev.c: netbsd-7-nhusb
sys/dev/usb/uhidev.h: netbsd-7-nhusb
sys/dev/usb/uhmodem.c: netbsd-7-nhusb
sys/dev/usb/uhso.c: netbsd-7-nhusb
sys/dev/usb/uhub.c: netbsd-7-nhusb
sys/dev/usb/uipad.c: netbsd-7-nhusb
sys/dev/usb/uipaq.c: netbsd-7-nhusb
sys/dev/usb/uirda.c: netbsd-7-nhusb
sys/dev/usb/uirdavar.h: netbsd-7-nhusb
sys/dev/usb/ukbd.c: netbsd-7-nhusb
sys/dev/usb/ukbdmap.c: netbsd-7-nhusb
sys/dev/usb/ukyopon.c: netbsd-7-nhusb
sys/dev/usb/ukyopon.h: netbsd-7-nhusb
sys/dev/usb/ulpt.c: netbsd-7-nhusb
sys/dev/usb/umass.c: netbsd-7-nhusb
sys/dev/usb/umass_isdata.c: netbsd-7-nhusb
sys/dev/usb/umass_isdata.h: netbsd-7-nhusb
sys/dev/usb/umass_quirks.c: netbsd-7-nhusb
sys/dev/usb/umass_quirks.h: netbsd-7-nhusb
sys/dev/usb/umass_scsipi.c: netbsd-7-nhusb
sys/dev/usb/umass_scsipi.h: netbsd-7-nhusb
sys/dev/usb/umassvar.h: netbsd-7-nhusb
sys/dev/usb/umcs.c: netbsd-7-nhusb
sys/dev/usb/umct.c: netbsd-7-nhusb
sys/dev/usb/umidi.c: netbsd-7-nhusb
sys/dev/usb/umidi_quirks.c: netbsd-7-nhusb
sys/dev/usb/umidi_quirks.h: netbsd-7-nhusb
sys/dev/usb/umodem.c: netbsd-7-nhusb
sys/dev/usb/umodem_common.c: netbsd-7-nhusb
sys/dev/usb/umodemvar.h: netbsd-7-nhusb
sys/dev/usb/ums.c: netbsd-7-nhusb
sys/dev/usb/uplcom.c: netbsd-7-nhusb
sys/dev/usb/urio.c: netbsd-7-nhusb
sys/dev/usb/urio.h: netbsd-7-nhusb
sys/dev/usb/usb.c: netbsd-7-nhusb
sys/dev/usb/usb.h: netbsd-7-nhusb
sys/dev/usb/usb_mem.c: netbsd-7-nhusb
sys/dev/usb/usb_mem.h: netbsd-7-nhusb
sys/dev/usb/usb_quirks.c: netbsd-7-nhusb
sys/dev/usb/usb_quirks.h: netbsd-7-nhusb
sys/dev/usb/usb_subr.c: netbsd-7-nhusb
sys/dev/usb/usbdevices.config: netbsd-7-nhusb
sys/dev/usb/usbdevs: netbsd-7-nhusb
sys/dev/usb/usbdevs.h: netbsd-7-nhusb
sys/dev/usb/usbdevs_data.h: netbsd-7-nhusb
sys/dev/usb/usbdi.c: netbsd-7-nhusb
sys/dev/usb/usbdi.h: netbsd-7-nhusb
sys/dev/usb/usbdi_util.c: netbsd-7-nhusb
sys/dev/usb/usbdi_util.h: netbsd-7-nhusb
sys/dev/usb/usbdivar.h: netbsd-7-nhusb
sys/dev/usb/usbhid.h: netbsd-7-nhusb
sys/dev/usb/usbhist.h: netbsd-7-nhusb
sys/dev/usb/usbroothub.c: netbsd-7-nhusb
sys/dev/usb/usbroothub.h: netbsd-7-nhusb
sys/dev/usb/usbroothub_subr.c: delete
sys/dev/usb/usbroothub_subr.h: delete
sys/dev/usb/uscanner.c: netbsd-7-nhusb
sys/dev/usb/uslsa.c: netbsd-7-nhusb
sys/dev/usb/usscanner.c: netbsd-7-nhusb
sys/dev/usb/ustir.c: netbsd-7-nhusb
sys/dev/usb/uthum.c: netbsd-7-nhusb
sys/dev/usb/utoppy.c: netbsd-7-nhusb
sys/dev/usb/uts.c: netbsd-7-nhusb
sys/dev/usb/uvideo.c: netbsd-7-nhusb
sys/dev/usb/uvisor.c: netbsd-7-nhusb
sys/dev/usb/uvscom.c: netbsd-7-nhusb
sys/dev/usb/uyap.c: netbsd-7-nhusb
sys/dev/usb/uyap_firmware.h: netbsd-7-nhusb
sys/dev/usb/uyurex.c: netbsd-7-nhusb
sys/dev/usb/x1input_rdesc.h: netbsd-7-nhusb
sys/dev/usb/xhci.c: netbsd-7-nhusb
sys/dev/usb/xhcireg.h: netbsd-7-nhusb
sys/dev/usb/xhcivar.h: netbsd-7-nhusb
sys/dev/usb/xinput_rdesc.h: netbsd-7-nhusb
sys/external/bsd/common/conf/files.linux: netbsd-7-nhusb
sys/external/bsd/common/include/linux/err.h: netbsd-7-nhusb
sys/external/bsd/common/include/linux/kernel.h: netbsd-7-nhusb
sys/external/bsd/common/include/linux/workqueue.h: netbsd-7-nhusb
sys/external/bsd/common/linux/linux_work.c: netbsd-7-nhusb
sys/external/bsd/drm2/dist/drm/radeon/atombios_encoders.c: netbsd-7-nhusb
sys/external/bsd/drm2/dist/drm/radeon/radeon_legacy_encoders.c: netbsd-7-nhusb
sys/external/bsd/drm2/drm/files.drmkms: netbsd-7-nhusb
sys/external/bsd/drm2/i915drm/files.i915drmkms: netbsd-7-nhusb
sys/external/bsd/drm2/include/linux/err.h: delete
sys/external/bsd/drm2/include/linux/workqueue.h: delete
sys/external/bsd/drm2/linux/files.drmkms_linux: netbsd-7-nhusb
sys/external/bsd/drm2/linux/linux_work.c: delete
sys/external/bsd/dwc2/dwc2.c: netbsd-7-nhusb
sys/external/bsd/dwc2/dwc2.h: netbsd-7-nhusb
sys/external/bsd/dwc2/dwc2var.h: netbsd-7-nhusb
sys/external/bsd/dwc2/dwctwo2netbsd: netbsd-7-nhusb
sys/external/bsd/dwc2/conf/files.dwc2: netbsd-7-nhusb
sys/external/bsd/dwc2/dist/dwc2_core.c: netbsd-7-nhusb
sys/external/bsd/dwc2/dist/dwc2_core.h: netbsd-7-nhusb
sys/external/bsd/dwc2/dist/dwc2_coreintr.c: netbsd-7-nhusb
sys/external/bsd/dwc2/dist/dwc2_hcd.c: netbsd-7-nhusb
sys/external/bsd/dwc2/dist/dwc2_hcd.h: netbsd-7-nhusb
sys/external/bsd/dwc2/dist/dwc2_hcdddma.c: netbsd-7-nhusb
sys/external/bsd/dwc2/dist/dwc2_hcdintr.c: netbsd-7-nhusb
sys/external/bsd/dwc2/dist/dwc2_hcdqueue.c: netbsd-7-nhusb
sys/external/bsd/dwc2/dist/dwc2_hw.h: netbsd-7-nhusb
sys/modules/drmkms_linux/Makefile: netbsd-7-nhusb
sys/modules/i915drmkms/Makefile: netbsd-7-nhusb
sys/rump/dev/lib/libugenhc/ugenhc.c: netbsd-7-nhusb
sys/rump/dev/lib/libusb/Makefile: netbsd-7-nhusb
sys/rump/dev/lib/libusb/USB.ioconf: netbsd-7-nhusb
sys/rump/dev/lib/libusb/usb_at_ugenhc.c: delete
sys/rump/dev/lib/libusb/opt/opt_usb.h: delete
sys/rump/dev/lib/libusb/opt/opt_usbverbose.h: delete
sys/sys/mbuf.h: netbsd-7-nhusb
usr.sbin/usbdevs/usbdevs.8: netbsd-7-nhusb
usr.sbin/usbdevs/usbdevs.c: netbsd-7-nhusb
Merge netbsd-7-nhusb:
- API / infrastructure changes to support memory management changes.
- Memory management improvements and bug fixes.
- HCDs should now be MP safe
- conversion to KERNHIST based debug
- FS/LS isoc support on ehci(4).
- conversion to kmem(9)
- Some USB 3 support - mostly from Takahiro HAYASHI (t-hash).
- interrupt transfers now get proper DMA operations
- general bug fixes
- kern/48308
- uhub status notification improvements
- umass(4) probe fix (applied to HEAD already)
- ohci(4) short transfer fix
- Change the SOFTINT level from NET to SERIAL for the USB softint handler.
This gives the callback a chance of running when another softint handler
at SOFTINT_NET has blocked holding a lock, e.g. softnet_lock and most of
the network stack.
- kern/49065 - ifconfig tun0 ... sequence locks up system / lockup:
softnet_lock held across usb xfr
- kern/50491 - unkillable wait in usbd_transfer while using usmsc0
on raspberry pi 2
- kern/51395 - USB Ethernet makes xhci hang
- Various improvements to slhci(4)
- Various improvements to dwc2(4)
 1.3.14.1 03-Dec-2017  jdolecek update from HEAD
 1.14 08-May-2019  isaki Merge isaki-audio2 branch, the overhaul of audio subsystem.
- Interrupt-oriented system rather than thread-oriented.
- Improve stability, quality and performance.
- Split playback and record cleanly. Improve halfduplex support.
- Many bugs are fixed including deadlocks, resource leaks, abuses, etc.
- Simplify audio filter mechanism. The encoding/channels/frequency
conversions are completely handled in the upper layer. So the hard-
ware driver only converts its hardware encoding (if necessary).
- audio_hw_if changes:
- Obsoletes query_encoding and add query_format instead.
- Obsoletes set_params and add set_format instead.
- Remove drain, setfd, mappage.
- The call sequences are changed.
- ioctl AUDIO_GETFD/SETFD, AUDIO_GETCHAN/SETCHAN are obsoleted.
- ioctl AUDIO_{QUERY,GET,SET}FORMAT are introduced.
- cleanup config attributes: au*conv and mulaw.
- All hardware drivers should follow it (I've done as much as possible).

Some file paths are changed:
- dev/audio.c -> dev/audio/audio.c (rewritten)
- dev/audiovar.h -> dev/audio/audiovar.h
- dev/audio_dai.h -> dev/audio/audio_dai.h
- dev/audio_if.h -> dev/audio/audio_if.h
- dev/audiobell.c -> dev/audio/audiobell.c
- dev/audiobellvar.h -> dev/audio/audiobellvar.h
- dev/mulaw.[ch] -> dev/audio/mulaw.[ch] + dev/audio/alaw.c
 1.13 02-Oct-2006  gdamore branches: 1.13.144; 1.13.146;
Add Alchemy PSC SPI bus protocol driver. Not activated on any boards yet,
that requires an evbmips commit.
 1.12 13-Jul-2006  gdamore branches: 1.12.4; 1.12.6;
Add an option COM_REGMAP to allow com(4) to use an array of register indices.
This allows us to convert aucom to just another com attachment, and cleanup
some code in the com_arbus.c.

Additionally, we use a common com_cleanup routine rather than having a
zillion copies of it in the attachment points.

This has been tested on a number architectures, and it has been shown to get
close to comparable performance when COM_REGMAP is defined, and comparable
when it is not defined.

Approved by core@. Fixes PR port-evbmips/32362.
 1.11 06-Mar-2006  shige branches: 1.11.8;
Add support for On-chip PSC SMBus protocol.
 1.10 24-Feb-2006  shige branches: 1.10.2;
Add Au1XXX PSC(Programable Serial Controller) bus-type driver.
PSC supports four protocols (AC97, I2S, SPI, SMBus).
These protocol drivers will be configured on the bus.
 1.9 23-Feb-2006  gdamore Initial commit of aupcmcia chip driver. It requires board specific logic
(coming in a the follow up commit for dbau1550 only), and is not yet complete.
It has serious problems, enough that it isn't yet usable, although the
functionality is all basically fleshed out. It is not enabled in any
default kernels at this point, so it should be benign. Hopefully the
bugs will soon be worked out and these caveats can be removed.
 1.8 16-Feb-2006  gdamore Reenable PCI on DBAU1500. May still be useful for PIO devices. Comments
in the config are left intact, though.
Add a PMAP-driven bus_space for access to upper memory, instead of using
wired entries.
Convert aupci to use said bus_space -- no measured performance impact.
 1.7 12-Feb-2006  gdamore Add GPIO driver, and GPIO access functions for other subsystems.
 1.6 09-Feb-2006  gdamore Add Au1550 PCI support (Au1500 not yet, coming shortly).
Closes PR port-evbmips/32087.
Reviewed by simonb@ (Also, earlier, matt@, and tsutsui@.)
 1.5 06-Feb-2006  gdamore Fix up incorrect ICU reporting, add processor specific switch tables for
IRQ routing and such.

Closes PR port-evbmips/31992.
Reviewed by simonb@, matt@, and izumi@
 1.4 11-Dec-2005  christos branches: 1.4.2; 1.4.4; 1.4.6;
merge ktrace-lwp.
 1.3 08-Nov-2003  simonb branches: 1.3.16;
Add a "COM_AU1x00" option, similar to COM_PXA2X0, for enabling Au1x00
features in the "com" driver.
 1.2 01-Apr-2003  hpeyerl branches: 1.2.2;
s/ohci.c/ohci_aubus.c/
 1.1 29-Jul-2002  simonb branches: 1.1.2; 1.1.4; 1.1.6;
Add support for the the Alchemy Semiconductor Au1x00 series on-chip
devices. Currently the serial ports and ethernet MAC have working
drivers, and this has only been physically tested on the Au1000 CPU,
but these devices should work on the Au1100 and Au1500 CPUs too.
 1.1.6.2 06-Sep-2002  jdolecek sync kqueue branch with HEAD
 1.1.6.1 29-Jul-2002  jdolecek file files.alchemy was added on branch kqueue on 2002-09-06 08:37:28 +0000
 1.1.4.2 31-Aug-2002  gehenna catch up with -current.
 1.1.4.1 29-Jul-2002  gehenna file files.alchemy was added on branch gehenna-devsw on 2002-08-31 13:45:18 +0000
 1.1.2.2 01-Aug-2002  nathanw Catch up to -current.
 1.1.2.1 29-Jul-2002  nathanw file files.alchemy was added on branch nathanw_sa on 2002-08-01 02:42:29 +0000
 1.2.2.3 21-Sep-2004  skrll Fix the sync with head I botched.
 1.2.2.2 18-Sep-2004  skrll Sync with HEAD.
 1.2.2.1 03-Aug-2004  skrll Sync with HEAD
 1.3.16.2 30-Dec-2006  yamt sync with head.
 1.3.16.1 21-Jun-2006  yamt sync with head.
 1.4.6.1 22-Apr-2006  simonb Sync with head.
 1.4.4.1 09-Sep-2006  rpaulo sync with head
 1.4.2.2 01-Mar-2006  yamt sync with head.
 1.4.2.1 18-Feb-2006  yamt sync with head.
 1.10.2.2 11-Aug-2006  yamt sync with head
 1.10.2.1 13-Mar-2006  yamt sync with head.
 1.11.8.1 15-Jun-2006  gdamore Configure com devices by default rather than aucom.
 1.12.6.1 22-Oct-2006  yamt sync with head
 1.12.4.1 18-Nov-2006  ad Sync with head.
 1.13.146.1 05-May-2019  isaki Remove obsoleted au{,rate,vol}conv and mulaw attributes.
audio provides the equivalent of them inseparably.
 1.13.144.1 10-Jun-2019  christos Sync with HEAD
 1.10 10-Jul-2011  matt Fix machine/ includes
 1.9 07-Jul-2011  matt Revamp / rework the Atheros MIPS SoC support. Add initial support for the
AR71xx (MIPS 24K core) SoC and the AR9344 (MIPS 74K core) SoC. Force use
of -mips32 for all Atheros kernels. Make code much more common.
 1.8 07-Oct-2006  gdamore Add Atheros SPI controller. This is a "pseudo-controller", as it has some
artificial limitations which really only make it good for use with serial
flash devices. One of the more annoying limitations is a restriction that
it can only transfer 8 bytes at a time. (4 command/address, plus 4 data.)

The driver includes design to work around those limitations, but these
changes are only appropriate for serial flash devices.

This driver is designed to run in interrupt driven mode, but due to lack
of adequate documentation, we run it in polled mode.

A subsequent commit will introduce the MI M25P flash driver, which has been
tested and is known to function somewhat reasonably..
 1.7 26-Sep-2006  gdamore Initial import of AR2315 support, specifically the Meraki Mini (see
the Meraki web site at http://www.meraki.net/ ) This includes changes
to the AR5312 to make it more conducive to sharing code with the AR5315,
and also includes improved early console support.

All devices including ethernet and wlan interfaces on the Meraki Mini are
functional with this port, _except_ SPI flash, which will be introduced
later.

This port was funded by the Champaign-Urbana Communit Wireless Network
Project (CUWiN).
 1.6 04-Sep-2006  gdamore branches: 1.6.2; 1.6.4; 1.6.6;
This is a boat-load of changes designed to finish parameterizing the
stuff necessary to separate out AR5312 from AR5315. This includes:

1) rework of arbus IRQs, so that IRQs are now seperately specified
as either MISC or CPU irqs
2) move board/chip-specific addresses into chip-dependent file
3) unencumber argpio from ar5312 specifics, using properties to pass
details such as reset-pin and sysled-pin.
4) an option to select which WiSoC is to be configured is provided.

AR5315 support should be forthcoming shortly now.
 1.5 28-Aug-2006  gdamore First pass at cleanup AR5312 WiSoC support to enable better & cleaner
sharing of code with the AR5315, which has many similarities, but many
differences from the AR5312.

No functional change at this time, other than the cpu_model string
(and also sysctl.hw.model node) is changed to reflect the WiSoC cpu
name rather than the identification string in ROM (which tends to not
be very informative.)
 1.4 07-Jul-2006  gdamore Add AR531X GPIO support. This also registers the reset button with sysmon,
so that when it is pressed the default reset button action (currently board
reset, no change to data in flash) is taken.

While here, remove the AR531X generic config, because it just doesn't make
sense.
 1.3 25-May-2006  gdamore branches: 1.3.2; 1.3.4;
Rename flash to athflash to reflect MD nature. Approved by simon@ and dyoung@
 1.2 14-May-2006  elad branches: 1.2.2;
integrate kauth.
 1.1 21-Mar-2006  gdamore branches: 1.1.2; 1.1.4; 1.1.6; 1.1.8;
Initial import of Atheros AR531X SoC support. Currently the onboard ethernet
and serial ports are supported, and the system appears stable with an NFS
mounted root. An earlier version of the code was reviewed by simon@, but it
has since had numerous improvements and cleanups.


At the moment, only AR5312 is known to work, but I suspect AR2313 will work
as well. Later 2315/2316 parts are substantially different, and are not yet
supported. Wifi and Marvell switch support found on some designs are not yet
supported.

Platforms known to include AR5312 include Senao Aries 2 (AP5054) and Netgear
WGU624.
 1.1.8.3 01-Jun-2006  kardel Sync with head.
 1.1.8.2 22-Apr-2006  simonb Sync with head.
 1.1.8.1 21-Mar-2006  simonb file files.atheros was added on branch simonb-timecounters on 2006-04-22 11:37:42 +0000
 1.1.6.2 19-Apr-2006  elad sync with head - hopefully this will work
 1.1.6.1 21-Mar-2006  elad file files.atheros was added on branch elad-kernelauth on 2006-04-19 02:33:18 +0000
 1.1.4.6 14-Sep-2006  yamt sync with head.
 1.1.4.5 03-Sep-2006  yamt sync with head.
 1.1.4.4 11-Aug-2006  yamt sync with head
 1.1.4.3 26-Jun-2006  yamt sync with head.
 1.1.4.2 11-Apr-2006  yamt sync files somehow mis-tagged by yamt-pdpolicy-base2.
 1.1.4.1 21-Mar-2006  yamt file files.atheros was added on branch yamt-pdpolicy on 2006-04-11 12:20:51 +0000
 1.1.2.2 28-Mar-2006  tron Merge 2006-03-28 NetBSD-current into the "peter-altq" branch.
 1.1.2.1 21-Mar-2006  tron file files.atheros was added on branch peter-altq on 2006-03-28 09:47:17 +0000
 1.2.2.1 19-Jun-2006  chap Sync with head.
 1.3.4.3 30-Dec-2006  yamt sync with head.
 1.3.4.2 21-Jun-2006  yamt sync with head.
 1.3.4.1 25-May-2006  yamt file files.atheros was added on branch yamt-lazymbuf on 2006-06-21 14:53:38 +0000
 1.3.2.2 13-Jul-2006  gdamore Merge from HEAD.
 1.3.2.1 15-Jun-2006  gdamore Adapt to new com framework. While here, make sure com only matches real com
devices.
 1.6.6.1 22-Oct-2006  yamt sync with head
 1.6.4.2 09-Sep-2006  rpaulo sync with head
 1.6.4.1 04-Sep-2006  rpaulo file files.atheros was added on branch rpaulo-netinet-merge-pcb on 2006-09-09 02:41:26 +0000
 1.6.2.1 18-Nov-2006  ad Sync with head.
 1.1 01-Aug-2009  matt branches: 1.1.2;
Extract bonito support from sys/arch/algor/conf/files.algor so it can be
used by multiple ports.
 1.1.2.2 19-Aug-2009  yamt sync with head.
 1.1.2.1 01-Aug-2009  yamt file files.bonito was added on branch yamt-nfs-mp on 2009-08-19 18:46:29 +0000
 1.10 21-May-2017  skrll branches: 1.10.8;
Provide and use some CP0 accessor functions instead of M[TF]C0 macros
for readability.

While here convert some other M[TF]C0 uses to already exising accessor
functions, e.g. mipsNN_cp0_ebase_read
 1.9 19-May-2017  skrll Move arch/mips/mips/bus_dma.c to correct location
 1.8 08-Oct-2015  macallan add a driver for the chip's EFUSE interface, use it to find the MAC address
for the onboard ethernet controller
 1.7 07-Aug-2015  macallan add driver for jz4780 random number generator
From Michael McConville
 1.6 11-Jul-2015  macallan - get rid of private bus space in ingenic_com.c
- move com to apbus
- attach the other UARTs
 1.5 04-Apr-2015  macallan preliminary driver for JZ4780's on-chip SMBus controllers
needs more work but it's good enough for talking to an RTC
 1.4 10-Mar-2015  macallan config goop for dme
 1.3 08-Mar-2015  macallan drivers for on-chip ohci and ehci
ohci works fine, ehci doesn't like high speed devices
 1.2 06-Dec-2014  macallan config goop for apbus and dwc2/usb
 1.1 22-Nov-2014  macallan branches: 1.1.2;
initial support for CI20 / Ingenic JZ4780
not much there yet, it loads, attaches a serial port and you can drop into
ddb
 1.1.2.4 28-Aug-2017  skrll Sync with HEAD
 1.1.2.3 27-Dec-2015  skrll Sync with HEAD (as of 26th Dec)
 1.1.2.2 22-Sep-2015  skrll Sync with HEAD
 1.1.2.1 06-Apr-2015  skrll Sync with HEAD
 1.10.8.2 03-Dec-2017  jdolecek update from HEAD
 1.10.8.1 21-May-2017  jdolecek file files.ingenic was added on branch tls-maxphys on 2017-12-03 11:36:27 +0000
 1.84 25-May-2021  simonb Alignment nit.
 1.83 23-Mar-2021  simonb branches: 1.83.2; 1.83.4;
Work in progress for MIPS modules. Only tested on mipseb64, not yet
enabled anywhere.
 1.82 23-Mar-2021  simonb Remove duplicate out-of-place comment.
 1.81 21-Oct-2020  christos branches: 1.81.2; 1.81.4;
make process_machdep.c included always since it provides register i/o used by
sys_process_getlwpstatus.c which is always included.
 1.80 20-Oct-2020  christos harmonize process_machdep.c inclusion.
 1.79 15-Aug-2020  mrg move stacktrace_subr() from trap.c into new mips_stacktrace.c so
it can be shared between ddb, other mips kernel components (see
locore), and an upcoming crash(8) port.

remove second copy of kdbpeek() (hidden by old DDB_TRACE
option, but they're functionally equivalent.)

tested on octeon.

ok simonb@
 1.78 09-Aug-2020  skrll More whitespace
 1.77 09-Aug-2020  skrll defflag foo on each line to make searching easier.

sort some lines and fix some indentation while I'm here.
 1.76 27-Jan-2019  pgoyette Merge the [pgoyette-compat] branch
 1.75 11-Jul-2016  matt branches: 1.75.16; 1.75.18;
Use sdcache routines.
Remove old cache support.
Switch to new cache routines.
 1.74 11-Jul-2016  matt Change MIPS to use the common pmap code.
Switch to 8KB pages on CPUs with a R4K MMU.
Simplify cache code.
Merge in most of changes from matt-mips64 branch
 1.73 29-Apr-2015  hikaru Initial import of Cavium Octeon and Octeon Plus SoC and
specifically Ubiquiti Networks EdgeRouter LITE support.
Currently the ethernet and uart are worked.
This support was contributed by Internet Initiative Japan Inc.
 1.72 16-Aug-2011  matt branches: 1.72.12; 1.72.30;
Add support for the MIPS DSP ASE (as a second PCU).
 1.71 31-Jul-2011  matt Add support for a loongson2_subr.S. This is needed since that chip needs
special handling to manually flush the ITLB on TLB updates.
 1.70 12-Jun-2011  rmind Welcome to 5.99.53! Merge rmind-uvmplock branch:

- Reorganize locking in UVM and provide extra serialisation for pmap(9).
New lock order: [vmpage-owner-lock] -> pmap-lock.

- Simplify locking in some pmap(9) modules by removing P->V locking.

- Use lock object on vmobjlock (and thus vnode_t::v_interlock) to share
the locks amongst UVM objects where necessary (tmpfs, layerfs, unionfs).

- Rewrite and optimise x86 TLB shootdown code, make it simpler and cleaner.
Add TLBSTATS option for x86 to collect statistics about TLB shootdowns.

- Unify /dev/mem et al in MI code and provide required locking (removes
kernel-lock on some ports). Also, avoid cache-aliasing issues.

Thanks to Andrew Doran and Joerg Sonnenberger, as their initial patches
formed the core changes of this branch.
 1.69 26-Apr-2011  joerg branches: 1.69.2;
Remove IRIX emulation
 1.68 14-Apr-2011  cliff - option MIPS_DDB_WATCH is deprecated, removed
 1.67 06-Apr-2011  matt slight reordering. no functional change.
 1.66 15-Mar-2011  matt Add separate support for MIPS32R2 and MIPS64R2.
Use EHB/SSNOP and jr.hb ra as appropriate (COP0_SYNC now uses them).
Add support for COP_0_HWRENA and COP_0_USERLOCAL (use by rdhwr $3,$29
instruction for TLS support).
Add mips3+ reserved instruction handler to emulate rdhwr is many fewer
instructions.
 1.65 20-Feb-2011  matt Major merge forward from matt-nb5-mips64.
New fixup code.
New common SPL code.
New common interrupt code.
Move related variables into structures.
Cleanup locore (move MD variable into it).
Kill StudlyCaps
Use PCU for FPU
 1.64 14-Dec-2009  matt branches: 1.64.2; 1.64.4; 1.64.6; 1.64.8;
Merge from matt-nb5-mips64
Merge mips-specific arch files.
 1.63 09-Aug-2009  matt Add latent ENABLE_MIPS_16KB_PAGE option.
 1.62 07-Aug-2009  matt Add loongson2 specific cache ops
 1.61 06-Aug-2009  matt Change MIPS64_LOONGSON2 to MIP3_LOONGSON2 since it's a MIPS3 and not MIPS64.
 1.60 01-Aug-2009  matt Add MIPS64_LOONGSON2F since it needs some special help in various places.
 1.59 19-Nov-2008  ad Make the emulations, exec formats, coredump, NFS, and the NFS server
into modules. By and large this commit:

- shuffles header files and ifdefs
- splits code out where necessary to be modular
- adds module glue for each of the components
- adds/replaces hooks for things that can be installed at runtime
 1.58 25-Jan-2008  joerg branches: 1.58.6; 1.58.10; 1.58.16; 1.58.18; 1.58.24;
Refactor in_cksum/in4_cksum/in6_cksum implementations:
- All three functions are included in the kernel by default.
They call a backend function cpu_in_cksum after possibly
computing the checksum of the pseudo header.
- cpu_in_cksum is the core to implement the one-complement sum.
The default implementation is moderate fast on most platforms
and provides a 32bit accumulator with 16bit addends for L32 platforms
and a 64bit accumulator with 32bit addends for L64 platforms.
It handles edge cases like very large mbuf chains (could happen with
native IPv6 in the future) and provides a good base for new native
implementations.
- Modify i386 and amd64 assembly to use the new interface.

This disables the MD implementations on !x86 until the conversion is
done. For Alpha, the portable version is faster.
 1.57 17-Oct-2007  garbled branches: 1.57.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.56 07-Jul-2007  tsutsui branches: 1.56.2; 1.56.10;
Remove leftover netns stuff.
 1.55 09-Feb-2007  ad branches: 1.55.6; 1.55.8; 1.55.14;
Merge newlock2 to head.
 1.54 25-Mar-2006  tsutsui branches: 1.54.8;
Update FPE trapsignal functions for new siginfo,
based on a patch provided by Matthias Drochner.

Ok'ed by christos, and fixes PR port-mips/26410.
 1.53 11-Dec-2005  christos branches: 1.53.4; 1.53.6; 1.53.8; 1.53.10; 1.53.12;
merge ktrace-lwp.
 1.52 05-Nov-2005  tsutsui Add MI mips3 wired map functions based on patch in port-mips/31915
from Garrett D'Amore of Tadpole Computer Inc.
Please refer discussion filed in the PR for details.
 1.51 24-Jan-2005  drochner branches: 1.51.6; 1.51.8; 1.51.14;
-remove definition of "struct sigframe" -- haven't found a use of it
(should fix build problems w/o COMPAT_16 reported by Markus W Kilbinger
per PR port-mips/29041 and by Havard Eidnes)
-further shuffle COMPAT_* conditionals to allow COMPAT_ULTRIX
w/o COMPAT_16
 1.50 04-Mar-2004  drochner branches: 1.50.8;
fix some problems with FPU exception signaling:
-The MachFPTrap did generate pre-siginfo arguments to trapsignal(),
leading to an immediate crash.
Put the siginfo generation into a separate .c file for simplicity.
-The exception bits in MIPS_FPU_CSR didn't get cleared, leading to
trouble later ("kernel used FPU" on pmax).
XXX This should probably be done for the "unimplemented fpu instruction"
case as well, but I don't know how to test this. Or, even better -
centralize the CSR clearing before the branch in MachFPTrap.
 1.49 12-Dec-2003  sekiya Remove preprocessor conditional MIPS3_L2CACHE_ABSENT, which was rendered
superfluous by Tsutsui-san's previous changes.

(this change differs slightly from that posted to port-mips@, as
mips_flushcache_allpvh should be compiled iff MIPS3_PLUS is defined and
MIPS3_L2CACHE_ABSENT should be removed from files.mips as well)
 1.48 29-Oct-2003  christos add compat_16_machdep.c
 1.47 05-Oct-2003  tsutsui Add R10000 cache ops, written by KIYOHARA Takashi and posted on port-sgimips.
Enabled by options ENABLE_MIPS4_CACHE_R10K for now.
 1.46 08-Mar-2003  rafal branches: 1.46.2;
Add support for R5k secondary caches, from code Chris Sekiya sent me a long
time ago, with small tweaks by me. Since the R5k doesn't do VCE, the pmap
still needs to be whacked for R5kSC CPUs to work correctly, but this is a
start.
 1.45 15-Nov-2002  simonb Put the MIPS64_SB1 option in opt_cputype.h.
 1.44 09-Nov-2002  nisimura - Make monolistic files into smaller manageable pieces, resulting
three new files;
sig_machdep.c (from mips_machdep.c)
copy.S and sigcode.S (from locore.S)
- Nuke the local use of struct sigframe, which is now identical to
struct sigcontext, from sendsig() as the consequence of new signal
trampoline.
 1.43 08-Nov-2002  simonb Note a new MIPS64_SB1 option that should be included in opt_cputype.h
one day.
 1.42 06-Jul-2002  gmcgarry Overhaul the emulation facility. We do this by:

- accumulating all emulation code (including floating-point) in one place
- steal MachFPInterrupt() back from SOFTFLOAT for use only with interrupts
and traps from *real* FPUs
- introducing MachEmulateInst() as a common dispatch point for all
emulated instructions
- cleaning up emulation dispatch in trap()

Also, while we're here, implement MIPS2 LL/SC/SYNC emulation for MIPS1.

Tested on r3k with and without SOFTFLOAT enabled.
 1.41 01-Jun-2002  simonb Use the current MIPS in_cksum for in4_cksum too.
 1.40 03-Apr-2002  simonb branches: 1.40.2;
Don't make arch/mips/mips/mips_mcclock.c mandatory for all mips ports
with an mcclock - pmax is the only one currently using this.
 1.39 13-Mar-2002  simonb All the mips ports had an identical procfs_machdep.c, so use a common
file under arch/mips/mips.
 1.38 05-Mar-2002  simonb Add support for MIPS32 and MIPS64 architectures:
- Build mips3/5900/32/64 support subroutines.
- Move arch/mips/mips/fp.S to central location.
- Move NOFPU to opt_cputype.h.
 1.37 14-Jan-2002  soren Options MIPS3_5200 and MIPS3_L2CACHE_PRESENT are gone.
 1.36 02-Dec-2001  uch TX39, R5900 cache configuration.
 1.35 28-Nov-2001  lukem - convert usage of "defopt" to "defflag" where the relevant option does
not support a value (e.g., it's to be used as "options FOO" instead of
"options FOO=xxx"). options that take a value were converted to
defparam recently.
- minor whitespace & formatting cleanups
 1.34 26-Nov-2001  manu Added COMPAT_IRIX (being developped, not functionnal at that time)
 1.33 20-Nov-2001  lukem cleanup:
options SPACE TAB
makeoptions TAB
psuedo-device TAB
remove trailing whitespace
replace multiple spaces -> tabs
options "FOO" -> options FOO
options "FOO=bar" -> options FOO=bar
options "FOO=\"bar\"" -> options FOO="\"bar\""
 1.32 14-Nov-2001  thorpej branches: 1.32.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.31 23-Sep-2001  manu branches: 1.31.2;
Moved COMPAT_LINUX config stuff from arch/sgimips to arch/mips, so that it's
available on all Mips ports.
 1.30 16-Jan-2001  thorpej branches: 1.30.2; 1.30.4;
New syscall entry implementation based on the Alpha version
as hacked by mycroft.
- Use syscall_intern() to give a process a plain or fancy
syscall based on ktrace flags.
- Avoid copying from the trapframe into a local array as much
as possible.

Yields roughly 5% improvement on a 25MHz R3000 (DECstation 5000/200)
on a simple syscall benchmark.

There's still some work that can be done using __HAVE_MINIMAL_EMUL.
 1.29 31-Oct-2000  jeffs Add MIPS3_NO_PV_UNCACHED option to handle virtual coherency issues by
only allowing one mapping at a time instead of mapping uncached. Done
by removing conflicting mappings from the pmap when entering a new
mapping. UVM will remember and re-fault the requested page when needed
for the original mapping. Originally done to support our internal machine
that does not support uncached memory completely. Not enabled by default
currently. It may make sense to try on the cobalt or sgi ports.
 1.28 04-Oct-2000  cgd provide indicators of a few more things that might go in opt_cputype.h
 1.27 17-Jul-2000  jeffs Pull in geocast mips ddb improvements and start bringing in kgdb support.
Add ddb support for QED opcodes, fill in enough routines so "next" usually
works, kdbpoke support for any size. Add callback that ports can hook when
entering and leaving ddb. This can be used for things like turning
off watchdogs while in ddb.
 1.26 23-May-2000  soren MachForceCacheUpdate and cacheflush_bug have never been used in NetBSD,
so remove references them, and do a little other cleanup.
 1.25 21-May-2000  soren Populate the cputype defopt (not enabled yet).
 1.24 29-Apr-2000  soren Allow non-pmax to use COMPAT_ULTRIX.
 1.23 14-Feb-2000  thorpej Allow arch-specific code to specify in4_cksum() like it can specify
in_cksum().
 1.22 22-Dec-1999  jun FIX:
port-mips/9016 [serious/medium]:
MIPS FPU emulator points wrong epc on exception case

Responsible: port-mips-maintainer (NetBSD/mips Portmasters)
State: open
Class: sw-bug
Originator: Shuichiro URATA
Release: current 12/11/1999
Arrival-Date: Fri Dec 17 10:18:00 1999
commit patch
http://www.a-r.org/~ur/softfloat1211.diff.gz
by Shuichiro URATA (ur@a-r.org)
 1.21 18-Nov-1999  jun on port-mips@netbsd.org:
Shuichiro URATA <ur@a-r.org> makes kernel softfloat emulation code.

http://www.a-r.org/~ur/softfloat1116.diff.gz

is Patch for
sys/arch/mips/conf/files.mips
sys/arch/mips/mips/fp.S
sys/arch/mips/mips/fpemu.c
sys/arch/mips/mips/genassym.cf
sys/arch/mips/mips/locore.S
sys/arch/mips/mips/mips_machdep.c
sys/arch/mips/mips/process_machdep.c
sys/arch/mips/mips/trap.c
sys/arch/mips/mips/vm_machdep.c
After apply this patch,pmax package binary works on hpcmips!
 1.20 24-Apr-1999  simonb branches: 1.20.2; 1.20.8;
Nuke register and remove trailling white space.
 1.19 14-Jan-1999  castor branches: 1.19.4;
Add defopt opt_mips_cache.h and allow 'clock' device to not require the mc6xx files
 1.18 02-Oct-1998  drochner compat_13_sigreturn is needed for compat_ultrix too
 1.17 13-Sep-1998  thorpej Make signal delivery work again.
 1.16 15-Jul-1998  jonathan Add empty opt_cputype.h to satisfy changes committed during
defopt'ing of network options.
 1.15 19-Apr-1998  jonathan Configure mips_mclock if "clock|mccclock".

All(?) ARC boxes use mcclock, but QBus decstations use the same
time-of-year clock architecturally mandated for VAXes.
 1.14 05-Jan-1998  perry RCSID Police.
 1.13 12-Aug-1997  jonathan Fix for mbufs that start on odd-byte-aligned boundaries, and use.
 1.12 09-Aug-1997  jonathan MIPS cpu-speed detection using mc146818 clock.

Compute CPU speed(MHz) and loop multiplier for DELAY() based on
counting empty loop between mcclock ticks. New global: cpu_mhz.
Change pmax/pmax/machdep.c to build baseboard model names from cpu_mhz.
Set 'cpuspeed' for more realistic DELAY() on mips3 models.

Mips CPU constants, testing, and calibration from D. Sean Davidson
<davidson@zk3.dec.com> and Simon Burge <simonb@telstra.com.au>.
 1.11 25-Jul-1997  jonathan branches: 1.11.2;
revert to MI in_cksum code.
 1.10 20-Jul-1997  jonathan mips-tuned bcopy from Jon Kay (UCSD) released under BSD copyright,
with standard BSD in_cksum() interface by Jonathan Stone.
 1.9 20-Jul-1997  jonathan Add ddb to mips/conf/files.mips. Garbage-collect mdb.
 1.8 28-Jun-1997  mhitch Fix typo.
Include minidebug.c with options MDB.
 1.7 16-Jun-1997  jonathan Use generic MIPS pmap vm_machdep.c
 1.6 09-Jun-1997  jonathan Move the mips sys_machdep.c from pmax/pmax to mips/mips, to enforce a
common sysarch on all mips ports.
 1.5 11-Nov-1996  jonathan Eliminate old mips/mips/elf.c ELF exec code.
Don't call into from the a.out exec hook; don't configure it into kernels.
 1.4 13-Oct-1996  jonathan Change pmax port over to using ``mips MI'' trap handler.
 1.3 12-Oct-1996  mhitch Add arch/mips/mips/mips_machdep.c, it's now compiled as a separate file.
 1.2 26-Mar-1996  jonathan Add mips/mips/mem.c and mips/mips/process_machdep.c
 1.1 19-Mar-1996  jonathan Kernel config file for source code shared by mips-based NetBSD ports.
 1.11.2.1 23-Aug-1997  thorpej Update marc-pcmcia branch from trunk.
 1.19.4.1 21-Jun-1999  thorpej Sync w/ -current.
 1.20.8.1 27-Dec-1999  wrstuden Pull up to last week's -current.
 1.20.2.3 18-Jan-2001  bouyer Sync with head (for UBC+NFS fixes, mostly).
 1.20.2.2 22-Nov-2000  bouyer Sync with HEAD.
 1.20.2.1 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.30.4.5 06-Sep-2002  jdolecek sync kqueue branch with HEAD
 1.30.4.4 23-Jun-2002  jdolecek catch up with -current on kqueue branch
 1.30.4.3 16-Mar-2002  jdolecek Catch up with -current.
 1.30.4.2 11-Feb-2002  jdolecek Sync w/ -current.
 1.30.4.1 10-Jan-2002  thorpej Sync kqueue branch with -current.
 1.30.2.1 01-Oct-2001  fvdl Catch up with -current.
 1.31.2.1 24-Oct-2001  thorpej Pull in new cache code, conditional on which CPU arch's are configured
into the kernel.
 1.32.2.9 11-Dec-2002  thorpej Sync with HEAD.
 1.32.2.8 11-Nov-2002  nathanw Catch up to -current
 1.32.2.7 01-Aug-2002  nathanw Catch up to -current.
 1.32.2.6 20-Jun-2002  nathanw Catch up to -current.
 1.32.2.5 17-Apr-2002  nathanw Catch up to -current.
 1.32.2.4 01-Apr-2002  nathanw Catch up to -current.
(CVS: It's not just a program. It's an adventure!)
 1.32.2.3 28-Feb-2002  nathanw Catch up to -current.
 1.32.2.2 08-Jan-2002  nathanw Catch up to -current.
 1.32.2.1 14-Nov-2001  nathanw file files.mips was added on branch nathanw_sa on 2002-01-08 00:26:15 +0000
 1.40.2.2 16-Jul-2002  gehenna catch up with -current.
 1.40.2.1 14-Jul-2002  gehenna catch up with -current.
 1.46.2.5 10-Nov-2005  skrll Sync with HEAD. Here we go again...
 1.46.2.4 04-Feb-2005  skrll Sync with HEAD.
 1.46.2.3 21-Sep-2004  skrll Fix the sync with head I botched.
 1.46.2.2 18-Sep-2004  skrll Sync with HEAD.
 1.46.2.1 03-Aug-2004  skrll Sync with HEAD
 1.50.8.1 29-Apr-2005  kent sync with -current
 1.51.14.1 19-Apr-2006  tron Pull up following revision(s) (requested by tsutsui in ticket #1260):
sys/arch/mips/mips/fp.S: revision 1.31
sys/arch/mips/mips/mips_fputrap.c: revision 1.3
sys/arch/mips/conf/files.mips: revision 1.54
Update FPE trapsignal functions for new siginfo,
based on a patch provided by Matthias Drochner.
Ok'ed by christos, and fixes PR port-mips/26410.
 1.51.8.4 04-Feb-2008  yamt sync with head.
 1.51.8.3 03-Sep-2007  yamt sync with head.
 1.51.8.2 26-Feb-2007  yamt sync with head.
 1.51.8.1 21-Jun-2006  yamt sync with head.
 1.51.6.1 19-Apr-2006  tron Pull up following revision(s) (requested by tsutsui in ticket #1260):
sys/arch/mips/mips/fp.S: revision 1.31
sys/arch/mips/mips/mips_fputrap.c: revision 1.3
sys/arch/mips/conf/files.mips: revision 1.54
Update FPE trapsignal functions for new siginfo,
based on a patch provided by Matthias Drochner.
Ok'ed by christos, and fixes PR port-mips/26410.
 1.53.12.1 28-Mar-2006  tron Merge 2006-03-28 NetBSD-current into the "peter-altq" branch.
 1.53.10.1 19-Apr-2006  elad sync with head - hopefully this will work
 1.53.8.1 01-Apr-2006  yamt sync with head.
 1.53.6.1 22-Apr-2006  simonb Sync with head.
 1.53.4.1 09-Sep-2006  rpaulo sync with head
 1.54.8.1 29-Dec-2006  ad Checkpoint work in progress.
 1.55.14.1 03-Oct-2007  garbled Sync with HEAD
 1.55.8.1 11-Jul-2007  mjf Sync with head.
 1.55.6.1 15-Jul-2007  ad Sync with head.
 1.56.10.2 23-Mar-2008  matt sync with HEAD
 1.56.10.1 06-Nov-2007  matt sync with HEAD
 1.56.2.1 18-Jul-2007  matt Add netbsd32 entry
 1.57.2.1 18-Feb-2008  mjf Sync with HEAD.
 1.58.24.20 27-Feb-2012  matt Add option NOMIPSEMUL so disable (almost) all emulation.
 1.58.24.19 27-Dec-2011  matt Add core_r4k_pcache*.S files.
 1.58.24.18 23-Dec-2011  matt Split syncicache functions into separate file: pmap_syncicache.
Support up to 1024 ASIDs.
Always use atomic ops for manipulating pm_shootdown_pending
Nuke PMAP_POOLPAGE_DEBUG
defparam MIPS_PAGE_SHIFT
Track colors of execpages.
 1.58.24.17 02-Dec-2011  matt Add support for 8KB pages.
 1.58.24.16 29-Nov-2011  matt Take part of the KSEG2 space and use it to "almost" direct another 256MB
of memory so that N32 kernels can make use of ram outside of KSEG0. This
allows N32 kernels to be useful on systems with 4GB of RAM or more.
 1.58.24.15 26-May-2011  matt Add MIPS64_RMIXL (XLR/XLS) and MIPS64R2_RMIXL (XLP). This allows the kernel
to treat this special which is needed for MP support. When accessing the TLB,
always lock the TLB before hand. If in the miss handlers, the TLB is already
locked let trap deal with the exeception.
 1.58.24.14 29-Apr-2011  matt Major merge to/from current.
Adds MIPS32/MIPS64 R2 support (24k, 74k, etc.) including COP0_USERLOCAL
Adds support for emulation of rdhwr $3,$29 instruction.
Major cleanup of SMP code. (stable on multi-core / single thread per core)
llsc locking code only used in MP capable kernels.
 1.58.24.13 05-Feb-2011  cliff - define config options flag MIPS_DDB_WATCH, enables COP0 watchpoint support in ddb
 1.58.24.12 29-Dec-2010  matt Break out break slot instruction emualtion into its own .S file.
Redo that and simplify
 1.58.24.11 28-Feb-2010  matt Split FPU support into separate file and keep internals private to that file.
Make it MPSAFE. Change interface to be very similar to what's used on other
architectures.
Add l_md.md_fpcpu to mdlwp (needed for MPSAFE)
Move pridtab from <mips/cpu.h> to <mips/locore.h>
Add initial common IPI dispatcher.
Split cpu_* routines from mips_machdep.c into cpu_subr.c
Add cpu_startup_common which has the code replicated in half-dozen
plus machdep.c files.
 1.58.24.10 28-Feb-2010  matt Add spl_stubs.c
 1.58.24.9 27-Feb-2010  matt Add mipsXX_tlb_enter which modifies/sets a specific TLB entry with a new
mapping (useful for wired TLB entries).
Add mips_fixup_exceptions which will walk through the exception vectors
and allows the fixup of any cpu_info references to be changed to a more
MP-friendly incarnation.
Define a common fixup method to use a wired TLB entry at -PAGE_SIZE allowing
direct loads using a negative based from the zero register.
Change varible pmap_tlb_info t pmap_tlb0_info.
 1.58.24.8 06-Feb-2010  cliff add entry for mips/spl.S so kernel can compile
 1.58.24.7 05-Feb-2010  matt Add __HAVE_FAST_SOFTINTS support.
Add routine to remap an uarea via a direct-mapped address. This avoids
TLB machinations when swtching to/from the softint thread. This can only
be done for lwp which won't exit.
 1.58.24.6 29-Jan-2010  matt Change mips kernel options SOFTFLOAT to FPEMUL. Allow a kernel to have
no FP emulation code. Fix insufficient SYMTAB_SPACE. When a kernel without
an FPU and with FPEMUL code, the application will trap with a SIGILL/ILL_ILLOPC
signal, not SIGSEGV/SEGV_MAPERR.
 1.58.24.5 22-Jan-2010  matt Seperate the pmap TLB functions into their own file.
For 32 bit kernels, make sure that mips_virtual_end doesn't go past
VM_MAX_KERNEL_ADDRESS.
 1.58.24.4 30-Dec-2009  matt Please segtab lookups into separate file.
Add mips_add_physload
Add mips_init_lwp0_uarea
cleanup lwp0/cpu_info_store initialization.
 1.58.24.3 13-Sep-2009  cliff add MIPS64_XLP MIPS64_XLR MIPS64_XLS to list of flags in opt_cputype.h
 1.58.24.2 12-Sep-2009  matt Add COMPAT_NETBSD32 support
 1.58.24.1 23-Aug-2009  uebayasi Make ddb(4) trace work on 64-bit ABIs.

For now:

- Values are shown in 32-bit.
- Only 4 arguments are shown.
- DDB_TRACE (heuristic version) is left as is.


Reviewed By: matt
 1.58.18.1 19-Jan-2009  skrll Sync with HEAD.
 1.58.16.1 13-Dec-2008  haad Update haad-dm branch to haad-dm-base2.
 1.58.10.3 11-Mar-2010  yamt sync with head
 1.58.10.2 19-Aug-2009  yamt sync with head.
 1.58.10.1 04-May-2009  yamt sync with head.
 1.58.6.1 17-Jan-2009  mjf Sync with HEAD.
 1.64.8.1 05-Mar-2011  bouyer Sync with HEAD
 1.64.6.1 06-Jun-2011  jruoho Sync with HEAD.
 1.64.4.4 31-May-2011  rmind sync with head
 1.64.4.3 21-Apr-2011  rmind sync with head
 1.64.4.2 05-Mar-2011  rmind sync with head
 1.64.4.1 18-Mar-2010  rmind Unify /dev/{mem,kmem,zero,null} implementations in MI code. Based on patch
from Joerg Sonnenberger, proposed on tech-kern@, in February 2008.

Work and depression still in progress.
 1.64.2.2 30-Oct-2010  uebayasi Implement pmap_physload_device(9) to replace xmd(4) MD backend.
Implement pmap_mmap(9) and use it from mem(4) and xmd(4).
 1.64.2.1 28-Aug-2010  uebayasi xmd(4) glue for mips. Not tested.
 1.69.2.1 23-Jun-2011  cherry Catchup with rmind-uvmplock merge.
 1.72.30.2 05-Oct-2016  skrll Sync with HEAD
 1.72.30.1 06-Jun-2015  skrll Sync with HEAD
 1.72.12.1 03-Dec-2017  jdolecek update from HEAD
 1.75.18.1 10-Jun-2019  christos Sync with HEAD
 1.75.16.1 29-Sep-2018  pgoyette Add glue for netbsd32 compat_13 and _16 modules
 1.81.4.1 03-Apr-2021  thorpej Sync with HEAD.
 1.81.2.1 03-Apr-2021  thorpej Sync with HEAD.
 1.83.4.1 31-May-2021  cjep sync with head
 1.83.2.1 17-Jun-2021  thorpej Sync w/ HEAD.
 1.14 06-Sep-2025  thorpej Step towards modularizing the Flattened Device Tree code.

Define attributes for each of the specific device bindings: clock,
dai, dma, gpio, i2c, iommu, mbox, mmc_pwrseq, phy, power, power domain,
pwm, regulator, reset controller, spi, system controller, pin
controller. Include these support files only if either a provider
or consumer with one of these attributes is present in the kernel
config.

Add the necessary attributes to the device / attach declarations for
each provider and consumer.

There are some bindings that are consumed by generic code (iommu, pinctrl,
power, power domain). Provide weak stubs for these routines to handle
situations where there is no provider.

No actual code changed; NFCI.
 1.13 26-Mar-2024  riastradh mips/conf/files.octeon: octrnm does not depend on rnd

Whether or not we have /dev/random and /dev/urandom baked into the
kernel, configuring `octrnm* at ...' in the kernel config requires
octeon_rnm.c.

Related to PR kern/46728.
 1.12 16-Jul-2020  jmcneill Add USB3 support.
 1.11 16-Jul-2020  jmcneill Add driver for Cavium Interrupt Bus.
 1.10 16-Jul-2020  jmcneill FDT support for Cavium OCTEON MIPS SoCs. WIP.
 1.9 24-Jun-2020  simonb Redo cnmac attachments - cnmacM @ gmxN @ pip0 @ iobus

Missed one file - thanks martin@.
 1.8 22-Jun-2020  simonb Remove unmaintained CNMAC_DEBUG debug code.
 1.7 15-Jun-2020  simonb Finish CPU core support for Octeon Cavium CN70XX:
- decode actual CPU name
- per CPU core reset logic (partially adapted from OpenBSD)
- handle Octeon 3 ioclock rate differences to other cores (from OpenBSD)
 1.6 31-May-2020  simonb Rename all Cavium Octeon device driver functions, structs etc from
"octeon_foo" to "octfoo", except "octeon_eth" becomes "cnmac".
 1.5 31-May-2020  simonb Clean up Cavium Octeon device names. Rename devices from "octeon_foo"
to "octfoo" - this follows the naming conventions used by many other
MIPS CPUs.
 1.4 06-Jun-2015  matt branches: 1.4.2; 1.4.18;
Add a wdog for octeon
 1.3 01-Jun-2015  matt Rework cavium support in preparation for MULTIPROCESSOR support
 1.2 01-May-2015  hikaru Use dwc2 instead of octeon_usbc, and unify octeon_usbn to new octeon_dwctwo.
Internal USB memory stick of EdgeRouter Lite works now.
 1.1 29-Apr-2015  hikaru Initial import of Cavium Octeon and Octeon Plus SoC and
specifically Ubiquiti Networks EdgeRouter LITE support.
Currently the ethernet and uart are worked.
This support was contributed by Internet Initiative Japan Inc.
 1.4.18.2 03-Dec-2017  jdolecek update from HEAD
 1.4.18.1 06-Jun-2015  jdolecek file files.octeon was added on branch tls-maxphys on 2017-12-03 11:36:27 +0000
 1.4.2.2 06-Jun-2015  skrll Sync with HEAD
 1.4.2.1 06-Jun-2015  skrll file files.octeon was added on branch nick-nhusb on 2015-06-06 14:40:01 +0000
 1.4 28-Apr-2014  matt Add pci attachment
 1.3 02-Aug-2011  cliff branches: 1.3.2; 1.3.12; 1.3.16; 1.3.26;
CFI NOR support for mips/ralink
 1.2 28-Jul-2011  matt Bring forward from matt-nb5-mips64. Support for Ralink RT3883 MIPS 74K SoC
from CradlePoint Technology.
 1.1 01-Jul-2011  matt branches: 1.1.2;
file files.ralink was initially added on branch matt-nb5-mips64.
 1.1.2.1 01-Jul-2011  matt Add basic support for the Ralink RT3883 SOC. No support for the wireless
interfaces is present but i2c, uart, ethernet, gpio, ehci, ohci are supported.
This support was contributed by Cradlepoint Technology.
 1.3.26.1 10-Aug-2014  tls Rebase.
 1.3.16.1 18-May-2014  rmind sync with head
 1.3.12.1 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.3.2.1 22-May-2014  yamt sync with head.

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

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.5 07-Oct-2024  andvar s/periperal/peripheral/ in comments.
 1.4 18-Mar-2011  cliff branches: 1.4.92;
- add config for gpio
- add config for iobus, nand, flash
 1.3 20-Feb-2011  matt Major merge forward from matt-nb5-mips64.
New fixup code.
New common SPL code.
New common interrupt code.
Move related variables into structures.
Cleanup locore (move MD variable into it).
Kill StudlyCaps
Use PCU for FPU
 1.2 14-Dec-2009  matt branches: 1.2.4; 1.2.6; 1.2.8; 1.2.10;
Merge from matt-nb5-mips64
Merge mips-specific arch files.
 1.1 13-Sep-2009  cliff branches: 1.1.2;
file files.rmixl was initially added on branch matt-nb5-mips64.
 1.1.2.20 05-Nov-2013  matt Add XLP2XX support.
 1.1.2.19 19-Jan-2012  matt Cleanup/update attachments.
 1.1.2.18 04-Jan-2012  matt Rework Fast Messaging Network support (it's now lockless).
Workaround a problem with bus 0 BAR sizing causing the registers behind
the BAR to become inaccessible.
Move much/most of the startup code from evbmips/rmixl/machdep to
mips/rmi/rmixl_machdep.c
Move the code to find the XLP variant to the early boot so it can be used
early.
8bit and 16bit accessed to PCI bus 0 cause cache errors so chagne the access
of pci mem to 32bits.
 1.1.2.17 30-Dec-2011  matt Change devices name from rmixl_* to xl*.
 1.1.2.16 28-Dec-2011  matt Add NOR support for XLP.
 1.1.2.15 27-Dec-2011  matt Add NOR/NAND (from HEAD)/SPI attachments.
 1.1.2.14 24-Dec-2011  matt Add XLP support (i2c, console, pci, sdhc works).
 1.1.2.13 17-Apr-2010  cliff - rename "pcie" bus space files to "pci" to reflect common use
by either pcie or pcix, depending on RMI chip type.
 1.1.2.12 12-Apr-2010  cliff - rmixl_pcix and rmixl_pcie get 'needs-flag'
 1.1.2.11 07-Apr-2010  cliff - configure XLR PCI-X interface
- this config can be used on XLS or XLR chip systems
 1.1.2.10 21-Mar-2010  cliff - add files rmixl_spl.S, rmixl_fmn.c
- add 'tmsk' locator to obio, allows specifying a thread (vCPU) mask
for interrupt routing; default is -1 which means route to any
 1.1.2.9 20-Jan-2010  matt cleanup attachments so that other mips cpus can use the same scheme.
 1.1.2.8 16-Jan-2010  cliff - cpucore and cpu config info moved here from to arch/evbmips/conf/files.rmixl
- obio now attaches to cpunode instead of mainbus
 1.1.2.7 14-Dec-2009  cliff - replace single bus space with two (big & little endian) bus spaces for obio
- configure RMI XLx USB Interface driver rmixl_usbi
- attach ohci at rmixl_usbi
- attach ehci at rmixl_usbi
 1.1.2.6 15-Nov-2009  cliff - we don't need -el bus space for obio, get rid of it and clean up the naming
- delete rmixl_eb_space.c, rmixl_el_space.c
- add mixl_obio_space.c, provides -eb bus space for obio devices
 1.1.2.5 14-Nov-2009  cliff - rmixls_subr.S is replaced by rmixl_subr.S
 1.1.2.4 09-Nov-2009  cliff - configure MD PCI stuff:
pci attches to rmixl_pcie attaches to obio
- configure file arch/mips/rmi/rmixls_subr.S
THIS IS TEMPORARY and should not be needed
once we have mtcp/mfcp, and a better place for the xkseg &etc addrs
 1.1.2.3 22-Sep-2009  cliff add CONSFREQ to opt_com.h options
 1.1.2.2 15-Sep-2009  cliff obio now provides both big endian and little endian bus spaces
to allow child devices to use according to access method needs

also preparing for dual bus_dma methods, one for addrs <4GB,
the other for all memory, including addrs >= 4GB
the bulk of XLS DMA work is still TBD
 1.1.2.1 13-Sep-2009  cliff add netbsd support for RMI XLS6ATX_7A board and XL SoC family
 1.2.10.1 05-Mar-2011  bouyer Sync with HEAD
 1.2.8.1 06-Jun-2011  jruoho Sync with HEAD.
 1.2.6.2 21-Apr-2011  rmind sync with head
 1.2.6.1 05-Mar-2011  rmind sync with head
 1.2.4.2 11-Mar-2010  yamt sync with head
 1.2.4.1 14-Dec-2009  yamt file files.rmixl was added on branch yamt-nfs-mp on 2010-03-11 15:02:38 +0000
 1.4.92.1 02-Aug-2025  perseant Sync with HEAD
 1.8 24-Jul-2017  mrg mostly converted sbmips -> evbmips. the SBMIPS kernel builds fully
sans disksubr.c. intr.h does not need any additional fixes now,
only disklabel.h.

also test-built some other mips kernels.
 1.7 20-Feb-2011  matt branches: 1.7.14; 1.7.32; 1.7.48;
Major merge forward from matt-nb5-mips64.
New fixup code.
New common SPL code.
New common interrupt code.
Move related variables into structures.
Cleanup locore (move MD variable into it).
Kill StudlyCaps
Use PCU for FPU
 1.6 12-Aug-2009  simonb branches: 1.6.4; 1.6.6; 1.6.8;
Remove many magic numbers for addresses and interrupt numbers, and use
constants defined in SiByte/Broadcom standard header files. Switch from
using offsets for locators to actual addresses.

Tested on a swarm (my rhone is dead, but should be OK there too).
 1.5 25-Oct-2003  simonb branches: 1.5.106; 1.5.124;
Rename the "strtc" device to "m41t81rtc" so that it doesn't conflict with
the MI i2c "strtc" device.
XXX: This should use the MI "strtc" device - the M41T81 should be
compatible enough with the M41ST84 currently supported by that
driver.
 1.4 12-Nov-2002  simonb branches: 1.4.6;
Add support for the ST M41T81 RTC found on pass 2 swarm boards.
XXX: Much of this should live in arch/sbmips instead of arch/mips/sibyte.
XXX: These should be replaced with MI SMBus drivers one day.
 1.3 31-Jul-2002  simonb Add support for the watchdog timers on the BCM1xxx parts.
 1.2 04-Jun-2002  simonb Add an extremely rough SMBus handler and RTC driver. This will be
cleaned up significantly when we have an MI SMBus framework, but at
least we can see the RTC on the swarm now.
 1.1 05-Mar-2002  simonb branches: 1.1.4; 1.1.8; 1.1.10;
Add support for the on-chip peripherals on the Broadcom SiByte SB1250 CPU
and support routines for the Broadcom CFE (Common Firmware Environment).

This code is provided by the Broadband Processor Business Unit at
Broadcom Corp with minor updates by me.
 1.1.10.2 31-Aug-2002  gehenna catch up with -current.
 1.1.10.1 14-Jul-2002  gehenna catch up with -current.
 1.1.8.5 11-Dec-2002  thorpej Sync with HEAD.
 1.1.8.4 01-Aug-2002  nathanw Catch up to -current.
 1.1.8.3 20-Jun-2002  nathanw Catch up to -current.
 1.1.8.2 01-Apr-2002  nathanw Catch up to -current.
(CVS: It's not just a program. It's an adventure!)
 1.1.8.1 05-Mar-2002  nathanw file files.sibyte was added on branch nathanw_sa on 2002-04-01 07:40:56 +0000
 1.1.4.4 06-Sep-2002  jdolecek sync kqueue branch with HEAD
 1.1.4.3 23-Jun-2002  jdolecek catch up with -current on kqueue branch
 1.1.4.2 16-Mar-2002  jdolecek Catch up with -current.
 1.1.4.1 05-Mar-2002  jdolecek file files.sibyte was added on branch kqueue on 2002-03-16 15:58:33 +0000
 1.4.6.1 03-Aug-2004  skrll Sync with HEAD
 1.5.124.4 10-Jun-2010  cliff add bus watcher support for sibyte
 1.5.124.3 21-Jan-2010  cyber Remove sbpcihb, unused
 1.5.124.2 21-Jan-2010  matt sbldthb is dead. ppb.c will now take care of it.
sbpcihb is now brain dead. only print whether we are in host or device mode
 1.5.124.1 21-Jan-2010  matt Add rest of pci framework functions.
Disable pciide compat intr establish for sbmips
 1.5.106.1 19-Aug-2009  yamt sync with head.
 1.6.8.1 05-Mar-2011  bouyer Sync with HEAD
 1.6.6.1 06-Jun-2011  jruoho Sync with HEAD.
 1.6.4.1 05-Mar-2011  rmind sync with head
 1.7.48.1 30-Aug-2017  martin Pull up following revision(s) (requested by mrg in ticket #231):
distrib/sets/lists/base/md.evbmips 1.3
doc/CHANGES 1.2303-1.2304
etc/etc.evbmips/MAKEDEV.conf 1.8
etc/etc.evbmips/Makefile.inc 1.22
etc/mtree/Makefile 1.37
etc/mtree/NetBSD.dist.evbmips 1.1
sys/arch/evbmips/Makefile 1.9
sys/arch/evbmips/conf/SBMIPS upto 1.2
sys/arch/evbmips/conf/SBMIPS.MP upto 1.2
sys/arch/evbmips/conf/SBMIPS64 upto 1.2
sys/arch/evbmips/conf/SBMIPS64.MP upto 1.2
sys/arch/evbmips/conf/files.sbmips upto 1.2
sys/arch/evbmips/conf/std.sbmips upto 1.2
sys/arch/evbmips/include/disklabel.h 1.6
sys/arch/evbmips/include/loadfile_machdep.h
sys/arch/evbmips/include/param.h 1.10
sys/arch/evbmips/include/pci_machdep.h 1.3
sys/arch/evbmips/sbmips/TODO
sys/arch/evbmips/sbmips/autoconf.c
sys/arch/evbmips/sbmips/autoconf.h
sys/arch/evbmips/sbmips/console.c
sys/arch/evbmips/sbmips/cpu.c upto 1.3
sys/arch/evbmips/sbmips/cpuvar.h
sys/arch/evbmips/sbmips/disksubr.c
sys/arch/evbmips/sbmips/leds.h
sys/arch/evbmips/sbmips/locore_machdep.S
sys/arch/evbmips/sbmips/machdep.c upto 1.2
sys/arch/evbmips/sbmips/rtc.c upto 1.2
sys/arch/evbmips/sbmips/sb1250_icu.c upto 1.2
sys/arch/evbmips/sbmips/swarm.h
sys/arch/evbmips/sbmips/systemsw.c upto 1.2
sys/arch/evbmips/sbmips/systemsw.h
sys/arch/evbmips/sbmips/zbbus.c upto 1.2
sys/arch/evbmips/stand/Makefile 1.1
sys/arch/evbmips/stand/sbmips/Makefile
sys/arch/evbmips/stand/sbmips/Makefile.bootprogs upto 1.2
sys/arch/evbmips/stand/sbmips/Makefile.bootprogs 1.3
sys/arch/evbmips/stand/sbmips/Makefile.bootxx
sys/arch/evbmips/stand/sbmips/Makefile.inc upto 1.3
sys/arch/evbmips/stand/sbmips/boot/Makefile
sys/arch/evbmips/stand/sbmips/boot/filesystem.c
sys/arch/evbmips/stand/sbmips/boot/version
sys/arch/evbmips/stand/sbmips/bootxx_cd9660/Makefile
sys/arch/evbmips/stand/sbmips/bootxx_ffs/Makefile
sys/arch/evbmips/stand/sbmips/bootxx_lfs/Makefile
sys/arch/evbmips/stand/sbmips/common/bbinfo.h
sys/arch/evbmips/stand/sbmips/common/blkdev.c upto 1.2
sys/arch/evbmips/stand/sbmips/common/blkdev.h
sys/arch/evbmips/stand/sbmips/common/boot.c upto 1.2
sys/arch/evbmips/stand/sbmips/common/boot.ldscript
sys/arch/evbmips/stand/sbmips/common/booted_dev.c upto 1.2
sys/arch/evbmips/stand/sbmips/common/bootxx.c
sys/arch/evbmips/stand/sbmips/common/cfe.c
sys/arch/evbmips/stand/sbmips/common/cfe_api.c
sys/arch/evbmips/stand/sbmips/common/cfe_api.h
sys/arch/evbmips/stand/sbmips/common/cfe_api_int.h
sys/arch/evbmips/stand/sbmips/common/cfe_error.h
sys/arch/evbmips/stand/sbmips/common/cfe_ioctl.h
sys/arch/evbmips/stand/sbmips/common/checksize.sh
sys/arch/evbmips/stand/sbmips/common/common.h
sys/arch/evbmips/stand/sbmips/common/panic_putstr.c
sys/arch/evbmips/stand/sbmips/common/putstr.c
sys/arch/evbmips/stand/sbmips/common/start.S
sys/arch/evbmips/stand/sbmips/netboot/Makefile
sys/arch/evbmips/stand/sbmips/netboot/conf.c
sys/arch/evbmips/stand/sbmips/netboot/dev_net.c
sys/arch/evbmips/stand/sbmips/netboot/devopen.c
sys/arch/evbmips/stand/sbmips/netboot/getsecs.c upto 1.2
sys/arch/evbmips/stand/sbmips/netboot/if_cfe.c upto 1.2
sys/arch/evbmips/stand/sbmips/netboot/version
sys/arch/mips/conf/files.sibyte 1.8
sys/arch/mips/include/pmap.h 1.70
sys/arch/mips/sibyte/dev/sbbuswatch.c 1.4
sys/arch/mips/sibyte/dev/sbmac.c 1.49
sys/arch/mips/sibyte/dev/sbscn.c 1.43
sys/arch/mips/sibyte/dev/sbsmbus.c 1.17
sys/arch/mips/sibyte/dev/sbtimer.c 1.21
sys/arch/mips/sibyte/dev/sbwdog.c 1.15
sys/arch/mips/sibyte/pci/sbbrz_pci.c 1.8
usr.sbin/installboot/installboot.8 1.94

Move sys/arch/sbmips/* into sys/arch/evbmips/*/sbmips.
 1.7.32.1 28-Aug-2017  skrll Sync with HEAD
 1.7.14.1 03-Dec-2017  jdolecek update from HEAD
 1.12 23-Apr-2021  simonb Merge the .text.* sections into the .text section on MIPS, SPARC and
SPARC64 as is done on all other ports. Mostly costmetic, but does mean
that main() now appears before the _etext symbol instead of after it.
 1.11 25-Aug-2015  uebayasi Replace a constant in ldscript.
 1.10 24-Aug-2015  uebayasi Don't mention stab and DWARF sections, because these (poorly mtaintained)
lists only help to make them harder to read.

If those sections are found in inputs, they simply appear in outputs as
orphaned sections, sorted by section types and attributes.
 1.9 21-Aug-2015  uebayasi I bet setting search-directory for ld.so is useless in any kernel.
 1.8 20-Aug-2015  uebayasi Indent with 2 spaces.
 1.7 05-Mar-2011  matt branches: 1.7.14; 1.7.32;
Add missing .debug lines from usr/libdata/ldscripts
Add missing .mdebug lines from usr/libdata/ldscripts
Fixes PR/40522
 1.6 20-Feb-2011  matt Major merge forward from matt-nb5-mips64.
New fixup code.
New common SPL code.
New common interrupt code.
Move related variables into structures.
Cleanup locore (move MD variable into it).
Kill StudlyCaps
Use PCU for FPU
 1.5 27-Aug-2006  tsutsui branches: 1.5.78; 1.5.82; 1.5.88; 1.5.90;
Put .rodata.str1.4 and .rodata.cst4 sections by gcc4 into .rodata section.
Fixes malloc(9) failure at early boot on newsmips.
 1.4 05-Oct-2001  simonb branches: 1.4.4; 1.4.36; 1.4.50; 1.4.54;
Use a single ldscript instead of separate scripts for either endianness;
use command line parameters to ld(1) instead to set the endian format.
Clean up some endian decisions in mips/conf/Makefile.mips.
Wrap some long lines.
 1.3 21-May-2000  soren branches: 1.3.2; 1.3.4;
Also share BE ldscripts.
 1.2 23-Jun-1997  jonathan branches: 1.2.24;
Set kernel text start address in port-specific Makefile, not ldscript.
 1.1 23-May-1997  jonathan GNU ld script for linking mips kernels, contributed by Arne Juul.
 1.2.24.1 20-Nov-2000  bouyer Remove files that are no longer on the trunck
 1.3.4.1 11-Oct-2001  fvdl Catch up with -current. Fix some bogons in the sparc64 kbd/ms
attach code. cd18xx conversion provided by mrg.
 1.3.2.1 10-Jan-2002  thorpej Sync kqueue branch with -current.
 1.4.54.1 03-Sep-2006  yamt sync with head.
 1.4.50.1 09-Sep-2006  rpaulo sync with head
 1.4.36.1 30-Dec-2006  yamt sync with head.
 1.4.4.2 05-Oct-2001  simonb Use a single ldscript instead of separate scripts for either endianness;
use command line parameters to ld(1) instead to set the endian format.
Clean up some endian decisions in mips/conf/Makefile.mips.
Wrap some long lines.
 1.4.4.1 05-Oct-2001  simonb file kern.ldscript was added on branch nathanw_sa on 2001-10-05 05:03:28 +0000
 1.5.90.1 05-Mar-2011  bouyer Sync with HEAD
 1.5.88.1 06-Jun-2011  jruoho Sync with HEAD.
 1.5.82.2 06-Mar-2011  rmind sync with head (and fix few botches with this)
 1.5.82.1 05-Mar-2011  rmind sync with head
 1.5.78.2 03-Dec-2011  matt Add __cacheline_aligned and __read_mostly from -HEAD.
 1.5.78.1 22-Dec-2010  matt Rework how fixups are processed. Inside of generating a table, we just
scan kernel text for jumps to locations between (__stub_start, __stub_end]
and if found, we actually decode the instructions in the stub to find out
where the stub would eventually jump to and then patch the original jump
to jump directly to it bypassing the stub. This is slightly slower than
the previous method but it's a simplier and new stubs get automagically
handled.
 1.7.32.1 22-Sep-2015  skrll Sync with HEAD
 1.7.14.1 03-Dec-2017  jdolecek update from HEAD
 1.4 05-Oct-2001  simonb Use a single ldscript instead of separate scripts for either endianness;
use command line parameters to ld(1) instead to set the endian format.
Clean up some endian decisions in mips/conf/Makefile.mips.
Wrap some long lines.
 1.3 01-Jun-2001  thorpej branches: 1.3.2; 1.3.4;
Remove 4096-byte gap between .reginfo and .data, suggested by
Ian Taylor <ian@zembu.com>.
 1.2 21-May-2000  soren branches: 1.2.6; 1.2.8;
Fix RCS ID line.
 1.1 21-May-2000  soren Also share BE ldscripts.
 1.2.8.1 21-Jun-2001  nathanw Catch up to -current.
 1.2.6.2 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.2.6.1 21-May-2000  bouyer file kern.ldscript.be was added on branch thorpej_scsipi on 2000-11-20 20:13:30 +0000
 1.3.4.1 11-Oct-2001  fvdl Catch up with -current. Fix some bogons in the sparc64 kbd/ms
attach code. cd18xx conversion provided by mrg.
 1.3.2.1 10-Jan-2002  thorpej Sync kqueue branch with -current.
 1.3 05-Oct-2001  simonb Use a single ldscript instead of separate scripts for either endianness;
use command line parameters to ld(1) instead to set the endian format.
Clean up some endian decisions in mips/conf/Makefile.mips.
Wrap some long lines.
 1.2 01-Jun-2001  thorpej branches: 1.2.2; 1.2.4;
Remove 4096-byte gap between .reginfo and .data, suggested by
Ian Taylor <ian@zembu.com>.
 1.1 21-May-2000  soren branches: 1.1.6; 1.1.8;
Also share BE ldscripts.
 1.1.8.1 21-Jun-2001  nathanw Catch up to -current.
 1.1.6.2 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.1.6.1 21-May-2000  bouyer file kern.ldscript.le was added on branch thorpej_scsipi on 2000-11-20 20:13:30 +0000
 1.2.4.1 11-Oct-2001  fvdl Catch up with -current. Fix some bogons in the sparc64 kbd/ms
attach code. cd18xx conversion provided by mrg.
 1.2.2.1 10-Jan-2002  thorpej Sync kqueue branch with -current.
 1.8 23-Apr-2021  simonb Merge the .text.* sections into the .text section on MIPS, SPARC and
SPARC64 as is done on all other ports. Mostly costmetic, but does mean
that main() now appears before the _etext symbol instead of after it.
 1.7 22-Aug-2015  uebayasi .rel/.rela should not be generated in kernels.
 1.6 20-Aug-2015  uebayasi Indent with 2 spaces.
 1.5 04-Oct-2013  christos branches: 1.5.6;
discard eh sections
 1.4 04-May-2010  tsutsui branches: 1.4.8; 1.4.18; 1.4.22;
Merge .rodata.* sections (like .rodata.str1.4) into .rodata section.
Newer binutils creates such sections and old firmware might be confused.
 1.3 05-Oct-2001  simonb branches: 1.3.4; 1.3.126; 1.3.146; 1.3.148;
Use a single ldscript instead of separate scripts for either endianness;
use command line parameters to ld(1) instead to set the endian format.
Clean up some endian decisions in mips/conf/Makefile.mips.
Wrap some long lines.
 1.2 21-May-2000  soren branches: 1.2.2; 1.2.4;
Also share BE ldscripts.
 1.1 05-Oct-1997  jonathan branches: 1.1.2; 1.1.20;
GNU ld script for linking standalone MIPS code (e.g., bootblocks).
 1.1.20.1 20-Nov-2000  bouyer Remove files that are no longer on the trunck
 1.1.2.2 14-Oct-1997  thorpej Update marc-pcmcia branch from trunk.
 1.1.2.1 05-Oct-1997  thorpej file stand.ldscript was added on branch marc-pcmcia on 1997-10-14 10:17:20 +0000
 1.2.4.1 11-Oct-2001  fvdl Catch up with -current. Fix some bogons in the sparc64 kbd/ms
attach code. cd18xx conversion provided by mrg.
 1.2.2.1 10-Jan-2002  thorpej Sync kqueue branch with -current.
 1.3.148.1 30-May-2010  rmind sync with head
 1.3.146.1 17-Aug-2010  uebayasi Sync with HEAD.
 1.3.126.1 11-Aug-2010  yamt sync with head.
 1.3.4.2 05-Oct-2001  simonb Use a single ldscript instead of separate scripts for either endianness;
use command line parameters to ld(1) instead to set the endian format.
Clean up some endian decisions in mips/conf/Makefile.mips.
Wrap some long lines.
 1.3.4.1 05-Oct-2001  simonb file stand.ldscript was added on branch nathanw_sa on 2001-10-05 05:03:28 +0000
 1.4.22.1 18-May-2014  rmind sync with head
 1.4.18.2 03-Dec-2017  jdolecek update from HEAD
 1.4.18.1 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.4.8.1 22-May-2014  yamt sync with head.

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

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.5.6.1 22-Sep-2015  skrll Sync with HEAD
 1.3 05-Oct-2001  simonb Use a single ldscript instead of separate scripts for either endianness;
use command line parameters to ld(1) instead to set the endian format.
Clean up some endian decisions in mips/conf/Makefile.mips.
Wrap some long lines.
 1.2 11-Jul-2000  soren branches: 1.2.2; 1.2.4; 1.2.6;
Oops.
 1.1 21-May-2000  soren branches: 1.1.4;
Also share BE ldscripts.
 1.1.4.1 03-Sep-2000  soren Pull up rev 1.2:
> date: 2000/07/11 01:15:47; author: soren; state: Exp; lines: +2 -2
> Oops (was LE rather than BE).
 1.2.6.1 10-Jan-2002  thorpej Sync kqueue branch with -current.
 1.2.4.1 11-Oct-2001  fvdl Catch up with -current. Fix some bogons in the sparc64 kbd/ms
attach code. cd18xx conversion provided by mrg.
 1.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 11-Jul-2000  bouyer file stand.ldscript.be was added on branch thorpej_scsipi on 2000-11-20 20:13:30 +0000
 1.2 05-Oct-2001  simonb Use a single ldscript instead of separate scripts for either endianness;
use command line parameters to ld(1) instead to set the endian format.
Clean up some endian decisions in mips/conf/Makefile.mips.
Wrap some long lines.
 1.1 21-May-2000  soren branches: 1.1.6; 1.1.8; 1.1.10;
Also share BE ldscripts.
 1.1.10.1 10-Jan-2002  thorpej Sync kqueue branch with -current.
 1.1.8.1 11-Oct-2001  fvdl Catch up with -current. Fix some bogons in the sparc64 kbd/ms
attach code. cd18xx conversion provided by mrg.
 1.1.6.2 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.1.6.1 21-May-2000  bouyer file stand.ldscript.le was added on branch thorpej_scsipi on 2000-11-20 20:13:30 +0000
 1.6 11-May-2021  simonb Revert rev 1.5 - put the NOFPU option back. Older cnMIPS cores don't
have an FPU.
 1.5 18-Apr-2021  simonb branches: 1.5.2; 1.5.4;
Delete the NOFPU option. These CPUs do have an FPU. Allows o32
binaries to work now.
 1.4 01-Jun-2015  matt branches: 1.4.2; 1.4.18;
Rework cavium support in preparation for MULTIPROCESSOR support
 1.3 25-May-2015  matt Switch to MIPS64R2
 1.2 19-May-2015  matt Let the compiler/assembler know we compiling for octeon.
 1.1 29-Apr-2015  hikaru Initial import of Cavium Octeon and Octeon Plus SoC and
specifically Ubiquiti Networks EdgeRouter LITE support.
Currently the ethernet and uart are worked.
This support was contributed by Internet Initiative Japan Inc.
 1.4.18.2 03-Dec-2017  jdolecek update from HEAD
 1.4.18.1 01-Jun-2015  jdolecek file std.octeon was added on branch tls-maxphys on 2017-12-03 11:36:27 +0000
 1.4.2.2 06-Jun-2015  skrll Sync with HEAD
 1.4.2.1 01-Jun-2015  skrll file std.octeon was added on branch nick-nhusb on 2015-06-06 14:40:01 +0000
 1.5.4.1 31-May-2021  cjep sync with head
 1.5.2.1 13-May-2021  thorpej Sync with HEAD.

RSS XML Feed