Home | History | Annotate | Download | only in include
History log of /src/sys/arch/mips/include/types.h
RevisionDateAuthorComments
 1.78  28-Mar-2023  nakayama Add missing PRIuBUSSIZE to mips.
 1.77  07-Jul-2022  martin branches: 1.77.4;
Add PRIuVSIZE
 1.76  15-May-2021  simonb The MIPS O64 ABI uses full 64-bit FP regs.
 1.75  29-Mar-2021  simonb branches: 1.75.2; 1.75.4;
Provide vm_offset_t and vm_size_t typedefs - used by dtrace.
 1.74  23-Jan-2021  christos branches: 1.74.2;
Document via __HAVE_BUS_SPACE_8 platforms that implement bus_space_*_8
 1.73  06-Dec-2020  christos don't expose vaddr_t to userland.
 1.72  17-Aug-2020  mrg branches: 1.72.2;
port crash(8) to mips. (most of the kernel side.)

- expose parts of _KERNEL to _KMEMUSER as well
- hide more things for _KERNEL
- avoid DB_MACHINE_COMMANDS in crash(8)
- XXX add mips_label_t for !_KERNEL and use it in the pcb to
avoid conflicting with the ddb/crash one
- enable dumppcb

some changes to make stack trace fail instead of SEGV and
the userland changes to crash itself not part of this change.
 1.71  30-Jul-2020  skrll Sort the #define __HAVEs. NFCI.
 1.70  30-Apr-2020  skrll G/C __HAVE_AST_PERPROC
 1.69  22-Mar-2020  ad Temporarily mark hppa, mips, powerpc and riscv with __HAVE_UNLOCKED_PMAP,
for the benefit of UVM.

These need some pmap changes to support concurrent faults on the same
object. I have changes to do just that, but they're a work in progress.
 1.68  06-Apr-2019  thorpej Overhaul the API used to fetch and store individual memory cells in
userspace. The old fetch(9) and store(9) APIs (fubyte(), fuword(),
subyte(), suword(), etc.) are retired and replaced with new ufetch(9)
and ustore(9) APIs that can return proper error codes, etc. and are
implemented consistently across all platforms. The interrupt-safe
variants are no longer supported (and several of the existing attempts
at fuswintr(), etc. were buggy and not actually interrupt-safe).

Also augmement the ucas(9) API, making it consistently available on
all plaforms, supporting uniprocessor and multiprocessor systems, even
those that do not have CAS or LL/SC primitives.

Welcome to NetBSD 8.99.37.
 1.67  09-Dec-2017  christos branches: 1.67.4;
provide 32 and 64 bit register struct definitions.
 1.66  27-Jan-2017  christos remove __HAVE_COMPAT_NETBSD32
 1.65  26-Jan-2017  christos provide __HAVE_COMPAT_NETBSD32 and fix multiple include protection consistently.
 1.64  11-Jul-2016  matt branches: 1.64.2; 1.64.4;
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.63  24-Jan-2016  christos expose label_t for _KMEMUSER
 1.62  24-Jan-2016  christos expose __fpregister_t too, merge definitions.
 1.61  23-Jan-2016  christos expose the kernel types for standalone code.
 1.60  23-Jan-2016  christos Hide {p,v}{addr,size}_t and register_t (and a couple more types that
are machine-specific) from userland unless _KERNEL/_KMEMUSER and a
new _KERNTYPES variables is defined. The _KERNTYPES should be fixed
for many subsystems that should not be using it (rump)...
 1.59  27-Aug-2015  pooka Fix PTHREAD_FOO_INITIALIZER for C++ by not using volatile in the relevant
pthread types in C++ builds, attempt 2.

The problem with attempt 1 was making assumptions of what the MD
__cpu_simple_lock_t (declared volatile) looks like. To get a same type
except non-volatile, we change the MD type to __cpu_simple_lock_nv_t
and typedef __cpu_simple_lock_t as a volatile __cpu_simple_lock_nv_t.
IMO, __cpu_simple_lock_t should not be volatile at all, but changing it
now is too risky.

Fixes at least Rumprun w/ gcc 5.1/5.2. Furthermore, the mpd application
(and possibly others) will no longer require NetBSD-specific patches.

Tested: build.sh for i386, Rumprun for x86_64 w/ gcc 5.2.

Based on the patch from Christos in lib/49989.
 1.58  11-Jun-2015  matt Add tlb_asid_t
 1.57  10-Jun-2015  matt Transition from __cpuset_t to kcpuset_t *. This brings the local pmap one
step closer to uvm/pmap, its eventual replacement. Tested on ERLITE MP kernel.
 1.56  06-Jun-2015  macallan introduce PRIxCPUSET to deal with 32bit __cpuset_t on o32
 1.55  29-Mar-2015  macallan use 32bit __cpuset_t in o32 kernels
ok matt@
 1.54  04-Jan-2014  dsl branches: 1.54.6;
Remove __HAVE_PROCESS_XFPREGS and add the extra parameter for the size
of the fp save area to all the process_read_fpregs() and
process_write_fpregs() functions.
None of the functions have been modified to use the new parameters.
The size is set for all the writes, but some of the arch-specific reads
just pass NULL.
The amd64 (and i386) need variable sized fp register save areas in order
to support AVX and other enhanced register areas.
These functions are rarely called - so the extra argument won't matter.
 1.53  16-Aug-2011  matt branches: 1.53.2; 1.53.12; 1.53.16;
Add support for the MIPS DSP ASE (as a second PCU).
 1.52  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.51  29-Apr-2011  matt branches: 1.51.2;
define<space> -> define<tab>
 1.50  15-Mar-2011  matt Add MIPS TLS support.
 1.49  24-Feb-2011  joerg Allow storing and receiving the LWP private pointer via ucontext_t
on all platforms except VAX and IA64. Add fast access via register for
AMD64, i386 and SH3 ports. Use this fast access in libpthread to replace
the stack based pthread_self(). Implement skeleton support for Alpha,
HPPA, PowerPC, SPARC and SPARC64, but leave it disabled.

Ports that support this feature provide __HAVE____LWP_GETPRIVATE_FAST in
machine/types.h and a corresponding __lwp_getprivate_fast in
machine/mcontext.h.

This material is based upon work partially supported by
The NetBSD Foundation under a contract with Joerg Sonnenberger.
 1.48  20-Feb-2011  rmind Minor fix of previous: remove __SWAP_BROKEN (it is no more in -current).
 1.47  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.46  22-Dec-2010  matt branches: 1.46.2; 1.46.4;
Add a define __HAVE_CPU_DATA_FIRST which means that cpu_data is the first
member in struct cpu_info.
 1.45  14-Dec-2009  matt branches: 1.45.4;
Merge from matt-nb5-mips64
Merge mips-specific arch files.
 1.44  21-Oct-2009  rmind Remove uarea swap-out functionality:

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

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

Discussed on <tech-kern>, reviewed by <ad>.
 1.43  29-Nov-2007  ad branches: 1.43.18; 1.43.36;
__HAVE_ATOMIC64_OPS if 64-bit
 1.42  24-Dec-2005  perry branches: 1.42.30; 1.42.42; 1.42.48; 1.42.50; 1.42.56;
Remove leading __ from __(const|inline|signed|volatile) -- it is obsolete.
 1.41  11-Dec-2005  christos merge ktrace-lwp.
 1.40  18-Jan-2004  martin branches: 1.40.16;
Do not export __HAVE_RAS to userland. Applications are supposed to try
rasctl() and detect failure with EOPNOTSUPP.
 1.39  26-Sep-2003  nathanw Move __cpu_simple_lock_t and __SIMPLELOCK_{UN,}LOCKED to machine/types.h
so that they can be used in a namespace-friendly way.
 1.38  07-Aug-2003  agc Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22364, verified by myself.
 1.37  28-Apr-2003  bjh21 branches: 1.37.2;
Add a new feature-test macro, _NETBSD_SOURCE. If this is defined
by the application, all NetBSD interfaces are made visible, even
if some other feature-test macro (like _POSIX_C_SOURCE) is defined.
<sys/featuretest.h> defined _NETBSD_SOURCE if none of _ANSI_SOURCE,
_POSIX_C_SOURCE and _XOPEN_SOURCE is defined, so as to preserve
existing behaviour.

This has two major advantages:
+ Programs that require non-POSIX facilities but define _POSIX_C_SOURCE
can trivially be overruled by putting -D_NETBSD_SOURCE in their CFLAGS.
+ It makes most of the #ifs simpler, in that they're all now ORs of the
various macros, rather than having checks for (!defined(_ANSI_SOURCE) ||
!defined(_POSIX_C_SOURCE) || !defined(_XOPEN_SOURCE)) all over the place.

I've tried not to change the semantics of the headers in any case where
_NETBSD_SOURCE wasn't defined, but there were some places where the
current semantics were clearly mad, and retaining them was harder than
correcting them. In particular, I've mostly normalised things so that
_ANSI_SOURCE gets you the smallest set of stuff, then _POSIX_C_SOURCE,
_XOPEN_SOURCE and _NETBSD_SOURCE in that order.

Tested by building for vax, encouraged by thorpej, and uncontested in
tech-userlevel for a week.
 1.36  03-Nov-2002  thorpej In the _MIPS_PADDR_T_64BIT case, only use "unsigned long long" if _LP64
is not defined.
 1.35  03-Nov-2002  nisimura Retire __HAVE_MD_RUNQUEUE from MD types.h and remove
setrunqueue/remrunqueue from locore.S. C codes are
compiled a bit shorter and provide better DIAGNOSTICs.
 1.34  02-Nov-2002  thorpej Make register_t == long long for N32, and == long for everthing else.
Use register_t in label_t.
 1.33  22-Sep-2002  simonb Use "#define\t" instead of "#define ".
 1.32  22-Sep-2002  gmcgarry Add __HAVE_MD_RUNQUEUE flag for MD code to override MI run queue primitives.
 1.31  28-Aug-2002  gmcgarry RAS support for MIPS. Tested on R3000.
 1.30  05-Mar-2002  simonb branches: 1.30.6;
Change a MIPS3 check to a MIPS3_PLUS check (XXX - still bogus!).
 1.29  28-Feb-2002  simonb Use "#define<tab>".
 1.28  28-Apr-2001  kleink branches: 1.28.2; 1.28.8;
* Move definitions of exact-width integer types from <machine/types.h>
to <sys/types.h> and <sys/stdint.h>.
* Add a new C99 <stdint.h> header, which provides integer types of
explicit width, related limits and integer constant macros.
* Extend <inttypes.h> to provide <stdint.h> definitions and format
macros for printf() and scanf().
* Add C99 strtoimax() and strtoumax() functions.
* Use the latter within scanf().
* Add C99 %j, %t and %z printf()/scanf() conversions for
intmax_t, pointer-type and size_t arguments.
 1.27  16-Jan-2001  thorpej branches: 1.27.2;
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.26  14-Jan-2001  thorpej Define __HAVE_AST_PERPROC.
 1.25  03-Jan-2001  takemura replace 'long long' with int64_t to compile stand alone program with
compiler other than GCC.
 1.24  09-Jun-2000  soda make paddr_t 64bit on arc port by introducing _MIPS_PADDR_T_64BIT.
 1.23  06-Jun-2000  soren Add rnd(4) glue for the MIPS3 cycle counter.
 1.22  22-Feb-2000  soda branches: 1.22.2;
mips is now vm_offset_t/vm_size_t clean
 1.21  09-Dec-1999  castor Fix typo on _MIPS_BSD_API switch.
 1.20  24-Apr-1999  simonb branches: 1.20.2; 1.20.8;
Nuke register and remove trailling white space.
 1.19  31-Jan-1999  castor branches: 1.19.4;
Remove genpubassym.cf stuff. The macro _MIPS_BSD_API allows selection of a
64-bit clean compilation model.
 1.18  14-Jan-1999  castor * Create mips_reg_t data type to allow register size to be
decoupled from long or int or long long. Define macros in asm.h to facilitate
choosing these on a port by port basis.

* Create <machine/pubassym.h> mechanism to allow jmp_buf structure size
to be calculated at system build time.

* Define _MIPS_BSD_SIM macro which specifies what calling style is appropritae
for the architecture. For 64-bit oriented systems set the Status Register
to allow 64-bit instructions.

* Remove UADDR related macros because kernel U structure is now mapped
normally.
* Separate cpu.h into cpu.h and cpuarch.h to keep things neat.
* Add support for QED 52xx processors
 1.17  06-Jan-1999  nisimura - Complete vm_offset_t purge for mips processor.
- bzero() -> memset() and bcopy() -> memcpy().
- Garbage collection in trap.c and db_interface.c.
 1.16  13-Aug-1998  eeh branches: 1.16.2;
Merge paddr_t changes into the main branch.
 1.15  14-Jun-1998  kleink branches: 1.15.2;
GC the unused `physadr' type, which was not able to hold a complete physical
address on 2 architectures anyhow. Also, move the definition of the `label_t'
type inside _KERNEL protection, since it is specific to the in-kernel
setjmp()/longjmp() implementations.
 1.14  05-Nov-1997  thorpej Mark uses of long long with /* LONGLONG */ for lint. From
Chris Demetriou <cgd@pa.dec.com>.
 1.13  15-Jun-1997  mhitch branches: 1.13.8;
From Toru Nishimura: _FORKBRAINDAMAGE is gone, user process entered through
proc_trampoline().
 1.12  09-Apr-1996  jonathan Fixes for -Wall -Wmissing-prototypes:
Do not define __BDEVSW_DUMP_OLD_TYPE, as it breaks prototyping
of device dump functions, and should be port-dependent in any case.
The pmax 4.4bsd/pmax-derived drivers are being fixed, and the pica port
uses the MI scsi drivers already.
 1.11  09-Dec-1995  mycroft Define __FORK_BRAINDAMAGE.
 1.10  06-Jul-1995  cgd add <sys/cdefs.h> inclusions. namsspace-protect physadr, label_t
def'ns against _POSIX_SOURCE and _ANSI_SOURCE.
 1.9  28-Jun-1995  cgd remove unused cpu_exec() definitions. moved "broken swap" markers, for
ports that still need it, to types.h.
 1.8  26-Jun-1995  cgd define __BDEVSW_DUMP_OLD_TYPE for ports where it's true. clean up
some m68k ports inclusion of common header.
 1.7  26-Oct-1994  cgd new RCS ID format.
 1.6  20-Oct-1994  cgd update for new syscall args description mechanism
 1.5  20-Jul-1994  cgd define __BIT_TYPES_DEFINED__ for compatibility with things like BIND and nvi
 1.4  27-May-1994  glass branches: 1.4.2;
bsd 4.4-lite pmax port as ported to NetBSD
 1.3  27-May-1994  glass upgrade to bsd 4.4-lite code base. only mod is rcsids
 1.2  14-Mar-1994  cgd add basic integral types (a la sparc port) that new nvi wants.
mark old 'basic integral types' as XXX -- they should be squished
when whoever gets this port working.
 1.1  12-Oct-1993  deraadt branches: 1.1.1;
Initial revision
 1.1.1.1  12-Oct-1993  deraadt pmax code from <ralphc@pyramid.com> & <rick@snowhite.cis.uoguelph.ca>
 1.4.2.1  20-Jul-1994  cgd update from trunk.
 1.13.8.1  05-Nov-1997  thorpej Update from trunk: Mark usese of long long with /* LONGLONG */ for lint.
 1.15.2.2  12-Aug-1998  eeh Protect XOPEN and POSIX code from vm_offset_t, paddr_t, vaddr_t, vm_size_t, psize_t, and vsize_t.
 1.15.2.1  30-Jul-1998  eeh Split vm_offset_t and vm_size_t into paddr_t, psize_t, vaddr_t, and vsize_t.
 1.16.2.1  19-Nov-1998  nisimura - Forgot to commit most important changes.
 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  05-Jan-2001  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.22.2.1  22-Jun-2000  minoura Sync w/ netbsd-1-5-base.
 1.27.2.1  21-Jun-2001  nathanw Catch up to -current.
 1.28.8.5  11-Nov-2002  nathanw Catch up to -current
 1.28.8.4  18-Oct-2002  nathanw Catch up to -current.
 1.28.8.3  17-Sep-2002  nathanw Catch up to -current.
 1.28.8.2  01-Apr-2002  nathanw Catch up to -current.
(CVS: It's not just a program. It's an adventure!)
 1.28.8.1  28-Apr-2001  nathanw file types.h was added on branch nathanw_sa on 2002-04-01 07:41:00 +0000
 1.28.2.3  10-Oct-2002  jdolecek sync kqueue with -current; this includes merge of gehenna-devsw branch,
merge of i386 MP branch, and part of autoconf rototil work
 1.28.2.2  06-Sep-2002  jdolecek sync kqueue branch with HEAD
 1.28.2.1  16-Mar-2002  jdolecek Catch up with -current.
 1.30.6.1  31-Aug-2002  gehenna catch up with -current.
 1.37.2.3  21-Sep-2004  skrll Fix the sync with head I botched.
 1.37.2.2  18-Sep-2004  skrll Sync with HEAD.
 1.37.2.1  03-Aug-2004  skrll Sync with HEAD
 1.40.16.2  07-Dec-2007  yamt sync with head
 1.40.16.1  21-Jun-2006  yamt sync with head.
 1.42.56.1  08-Dec-2007  mjf Sync with HEAD.
 1.42.50.1  09-Jan-2008  matt sync with HEAD
 1.42.48.1  03-Dec-2007  joerg Sync with HEAD.
 1.42.42.1  18-Jul-2007  matt Deal with n32/n64 ABIs too.
 1.42.30.2  03-Dec-2007  ad Sync with HEAD.
 1.42.30.1  03-Dec-2007  ad Sync with HEAD.
 1.43.36.17  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.43.36.16  19-Aug-2010  matt Use __HAVE_CPU_VMSPACE_EXEC instead of a mips-specific #ifdef.
 1.43.36.15  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.43.36.14  23-Feb-2010  matt Make sure <mips/locore.h> is not included by MI code.
Add send_ipi and cpu_offline_md hooks to locoresw.
Add MP support to pmap (pvlist locking, tlb locking).
Add TLB shootdown support (see comment at the top of mips/pmap_tlb.c).
Add mipsXX_tlb_invalidate_globals routine
 1.43.36.13  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.43.36.12  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.43.36.11  20-Jan-2010  matt Revamp things a bit. Move of the globals mips uses into either cpu_info,
mips_options, or mips_cache_info. Make MALT64 be able to boot MULTIPROCESSOR.
(some pmap MP work).
 1.43.36.10  12-Sep-2009  matt Because of the N32 support, register32_t on mips is really 64-bits wide.
 1.43.36.9  09-Sep-2009  matt Expose label_t if NETBSD_SOURCE to make libkvm happy when including <mips/pcb.h>
 1.43.36.8  07-Sep-2009  matt Add symbolic constants for what's stored in label_t.
 1.43.36.7  06-Sep-2009  matt make label_t 2 registers larger.
 1.43.36.6  05-Sep-2009  matt ATOMIC64_OPS are available for all kernels except O32 ones.
 1.43.36.5  23-Aug-2009  matt Fix LP64 botch with vaddr_t/vsize_t
 1.43.36.4  23-Aug-2009  matt PRIxVADDR, PRIdVSIZE, PRIxVSIZE, or PRIxPADDR as appropriate.
Use __intXX_t or __uintXX_t as appropriate in <mips/types.h>
 1.43.36.3  23-Aug-2009  matt Change lazy fp load/save is done. fpcurlwp is never NULL.
If no current lwp has the FP, then fpcurlwp is set to lwp0.
this allows many check for NULL and avoids a few null-derefs.
Since savefpregs clear COP1, loadfpregs can be called to reload
fpregs. If it notices that situation, it just sets COP1 and returns
Save does not reset fpcurlwp, just clears COP1. load does set fpcurlwp.

If MIPS3_SR_FR is set, all 32 64-bit FP registers are saved/restored via Xdc1.
If MIPS3_SR_FR is clear, only 32 32-bit FP register are saved/restore via Xwc1.
This preserves the existing ABI.
 1.43.36.2  21-Aug-2009  matt Adapt to ABI variations. Make sure mips_reg_t == register_t.
Add PRIx{{P,V}{ADDR,SIZE}} and PRIxREGISTER{,32} macros to assist
printing out above types.
 1.43.36.1  16-Aug-2009  matt Kill use of _MIPS_BSD_ABI - switch to __mips_<abi>
Use device_t where appropriate.
Remove magic numbers.
 1.43.18.1  11-Mar-2010  yamt sync with head
 1.45.4.5  31-May-2011  rmind sync with head
 1.45.4.4  21-Apr-2011  rmind sync with head
 1.45.4.3  05-Mar-2011  rmind sync with head
 1.45.4.2  02-Jun-2010  rmind Add code, dev_mem_getva() and dev_mem_relva(), to deal with cache-aliasing
issues by allocating an appropriate KVA from physical address, according to
the colour. Used by architectures, which have such requirement. For now,
enable only for MIPS, others will follow. This renames previously invented
mm_md_getva() and mm_md_relva(), since we do this in MI way, instead of MD.
Architectures just need to define __HAVE_MM_MD_CACHE_ALIASING as indicator.

Reviewed by Matt Thomas.
 1.45.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.46.4.1  05-Mar-2011  bouyer Sync with HEAD
 1.46.2.1  06-Jun-2011  jruoho Sync with HEAD.
 1.51.2.1  23-Jun-2011  cherry Catchup with rmind-uvmplock merge.
 1.53.16.1  18-May-2014  rmind sync with head
 1.53.12.2  03-Dec-2017  jdolecek update from HEAD
 1.53.12.1  20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.53.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.54.6.5  05-Feb-2017  skrll Sync with HEAD
 1.54.6.4  05-Oct-2016  skrll Sync with HEAD
 1.54.6.3  19-Mar-2016  skrll Sync with HEAD
 1.54.6.2  22-Sep-2015  skrll Sync with HEAD
 1.54.6.1  06-Apr-2015  skrll Sync with HEAD
 1.64.4.1  21-Apr-2017  bouyer Sync with HEAD
 1.64.2.1  20-Mar-2017  pgoyette Sync with HEAD
 1.67.4.2  08-Apr-2020  martin Merge changes from current as of 20200406
 1.67.4.1  10-Jun-2019  christos Sync with HEAD
 1.72.2.2  03-Apr-2021  thorpej Sync with HEAD.
 1.72.2.1  14-Dec-2020  thorpej Sync w/ HEAD.
 1.74.2.1  03-Apr-2021  thorpej Sync with HEAD.
 1.75.4.1  31-May-2021  cjep sync with head
 1.75.2.1  17-Jun-2021  thorpej Sync w/ HEAD.
 1.77.4.1  03-Apr-2023  martin Additionally pull up following revision(s) for ticket #128
to unbreak the build:

sys/arch/mips/include/types.h: revision 1.78
sys/arch/mips/include/bus_space_defs.h: revision 1.5

Add missing PRIuBUSSIZE to mips.

RSS XML Feed