Home | History | Annotate | only in /src/sys/arch/amigappc/include
History log of /src/sys/arch/amigappc/include
RevisionDateAuthorComments
 1.26 21-Dec-2015  christos Add mips fenv.h (From FreeBSD)
 1.25 23-Jul-2014  alnsn branches: 1.25.4;
Rename sljitarch.h to sljit_machdep.h.
 1.24 17-Nov-2013  alnsn branches: 1.24.2;
Enable sljit and bpfjit on powerpc.
 1.23 24-Jan-2010  phx branches: 1.23.12; 1.23.22; 1.23.26;
Fixed a typo. Make ./build.sh release work.
 1.22 21-Jul-2009  phx Some improvements based on the work of Adam Ciarcinski.
Adapted everything to integrate with current 5.99 source.
Added an Amiga PIC for interrupt handling.

Status:
A CSPPC machine probably boots into single user, but only few devices
will attach without problems (e.g. keyboard, serial, parallel, floppy disk,
the RTC, CC graphics, sometimes Ariande ethernet and A4000 IDE.
BPPC support is prepared, but unfinished and untested (I don't own a BPPC).

A problem which has to be solved is interrupt acknowledging, which may happen
twice. Once in the amiga drivers from sys/arch/amiga/dev and then in the PPC
specific pic_amiga.c.
 1.21 09-Feb-2007  ad branches: 1.21.48;
Merge newlock2 to head.
 1.20 26-Jul-2006  drochner branches: 1.20.4;
don't install <machine/db_machdep.h>, this is kernel only
 1.19 11-Dec-2005  christos branches: 1.19.4; 1.19.8;
merge ktrace-lwp.
 1.18 08-May-2004  kleink branches: 1.18.12;
Factor out W{CHAR,INT}_{MAX,MIN} into their own header file.
 1.17 21-Jan-2003  kleink branches: 1.17.2;
Add <machine/mcontext.h> wrapper.
 1.16 26-Nov-2002  lukem Remove KDIR=, since SYS_INCLUDE=symlinks and KDIR are not supported any more.
 1.15 06-Sep-2002  gehenna Merge the gehenna-devsw branch into the trunk.

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

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

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

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

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

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

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

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

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

pmc(9) is meant to be a general interface. Initially, the Intel XScale
counters are the only ones supported.
 1.13 04-Apr-2002  bjh21 branches: 1.13.2;
... and lock.h.
 1.12 04-Apr-2002  bjh21 Install endian_machdep.h.
 1.11 04-Apr-2002  bjh21 Install reloc.h.
 1.10 28-Nov-2001  kleink No point in installing svr4_machdep.h.
 1.9 19-Sep-2001  thorpej Amiga doesn't need its own fbio.h anymore; screenblank(8) uses
<dev/sun/fbio.h>, and the ioctl that this file defines is compatible.
 1.8 15-Apr-2001  kleink branches: 1.8.2; 1.8.4;
Add definitions of C99 integer format conversion macros.
XXX Fastest minimum-width integer types haven't been decided upon yet.
 1.7 15-Apr-2001  kleink Add definitions of C99 specified-width integer type limits.
XXX Fastest minimum-width integer types haven't been decided upon yet.
 1.6 14-Apr-2001  kleink Add long-missing(!) <machine/math.h>.
 1.5 14-Apr-2001  kleink Add definitions of C99 integer constant macros.
Tidy Makefiles up a little.
 1.4 14-Apr-2001  kleink Add definitions of C99 minimum-width and greatest-width integer types.
XXX Fastest minimum-width integer types haven't been decided upon yet.
 1.3 26-Jun-2000  kleink branches: 1.3.2; 1.3.4;
Add <machine/int_types.h>, which provides namespace-pure definitions
of exact-width integer types.
 1.2 05-Jun-2000  is This is amigappc, not amiga.
 1.1 25-May-2000  is branches: 1.1.2;
Initial AmigaPPC commit.

Lots of the work was done by Adam Ciarcinsky.

Currently, this only supports CyberPPC boards by Phase 5. Blizzard PPC
expected later.

The kernel is useless but for demonstrating that it starts... especially
interupts, and most of MMU support, is not in yet. Builtin console works,
however, and you can look at the kernel startup messages.
 1.1.2.1 22-Jun-2000  minoura Sync w/ netbsd-1-5-base.
 1.3.4.1 21-Jun-2001  nathanw Catch up to -current.
 1.3.2.3 21-Apr-2001  bouyer Sync with HEAD
 1.3.2.2 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.3.2.1 26-Jun-2000  bouyer file Makefile was added on branch thorpej_scsipi on 2000-11-20 19:59:37 +0000
 1.8.4.1 01-Oct-2001  fvdl Catch up with -current.
 1.8.2.4 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.8.2.3 06-Sep-2002  jdolecek sync kqueue branch with HEAD
 1.8.2.2 23-Jun-2002  jdolecek catch up with -current on kqueue branch
 1.8.2.1 10-Jan-2002  thorpej Sync kqueue branch with -current.
 1.13.2.2 30-Aug-2002  gehenna catch up with -current.
 1.13.2.1 19-May-2002  gehenna Remove port-dependent conf.h.
 1.17.2.3 21-Sep-2004  skrll Fix the sync with head I botched.
 1.17.2.2 18-Sep-2004  skrll Sync with HEAD.
 1.17.2.1 03-Aug-2004  skrll Sync with HEAD
 1.18.12.2 26-Feb-2007  yamt sync with head.
 1.18.12.1 30-Dec-2006  yamt sync with head.
 1.19.8.1 11-Aug-2006  yamt sync with head
 1.19.4.1 09-Sep-2006  rpaulo sync with head
 1.20.4.1 01-Feb-2007  ad Header file cleanup.
 1.21.48.2 11-Mar-2010  yamt sync with head
 1.21.48.1 19-Aug-2009  yamt sync with head.
 1.23.26.1 18-May-2014  rmind sync with head
 1.23.22.2 03-Dec-2017  jdolecek update from HEAD
 1.23.22.1 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.23.12.1 22-May-2014  yamt sync with head.

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

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.24.2.1 10-Aug-2014  tls Rebase.
 1.25.4.1 27-Dec-2015  skrll Sync with HEAD (as of 26th Dec)
 1.1 25-May-2000  is branches: 1.1.6;
Initial AmigaPPC commit.

Lots of the work was done by Adam Ciarcinsky.

Currently, this only supports CyberPPC boards by Phase 5. Blizzard PPC
expected later.

The kernel is useless but for demonstrating that it starts... especially
interupts, and most of MMU support, is not in yet. Builtin console works,
however, and you can look at the kernel startup messages.
 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 25-May-2000  bouyer file ansi.h was added on branch thorpej_scsipi on 2000-11-20 19:59:37 +0000
 1.1 25-May-2000  is branches: 1.1.6;
Initial AmigaPPC commit.

Lots of the work was done by Adam Ciarcinsky.

Currently, this only supports CyberPPC boards by Phase 5. Blizzard PPC
expected later.

The kernel is useless but for demonstrating that it starts... especially
interupts, and most of MMU support, is not in yet. Builtin console works,
however, and you can look at the kernel startup messages.
 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 25-May-2000  bouyer file aout_machdep.h was added on branch thorpej_scsipi on 2000-11-20 19:59:37 +0000
 1.1 25-May-2000  is branches: 1.1.6;
Initial AmigaPPC commit.

Lots of the work was done by Adam Ciarcinsky.

Currently, this only supports CyberPPC boards by Phase 5. Blizzard PPC
expected later.

The kernel is useless but for demonstrating that it starts... especially
interupts, and most of MMU support, is not in yet. Builtin console works,
however, and you can look at the kernel startup messages.
 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 25-May-2000  bouyer file asm.h was added on branch thorpej_scsipi on 2000-11-20 19:59:37 +0000
 1.2 26-Sep-2020  skrll G/C arm/atomic.h
 1.1 21-Jul-2009  phx branches: 1.1.2;
Some improvements based on the work of Adam Ciarcinski.
Adapted everything to integrate with current 5.99 source.
Added an Amiga PIC for interrupt handling.

Status:
A CSPPC machine probably boots into single user, but only few devices
will attach without problems (e.g. keyboard, serial, parallel, floppy disk,
the RTC, CC graphics, sometimes Ariande ethernet and A4000 IDE.
BPPC support is prepared, but unfinished and untested (I don't own a BPPC).

A problem which has to be solved is interrupt acknowledging, which may happen
twice. Once in the amiga drivers from sys/arch/amiga/dev and then in the PPC
specific pic_amiga.c.
 1.1.2.2 19-Aug-2009  yamt sync with head.
 1.1.2.1 21-Jul-2009  yamt file atomic.h was added on branch yamt-nfs-mp on 2009-08-19 18:45:57 +0000
 1.2 05-Mar-2024  thorpej Move the at-shutdown call to resettodr() from cpu_reboot() to kern_reboot().

It's a small step, but it's a step.
 1.1 21-Jul-2009  phx branches: 1.1.2;
Some improvements based on the work of Adam Ciarcinski.
Adapted everything to integrate with current 5.99 source.
Added an Amiga PIC for interrupt handling.

Status:
A CSPPC machine probably boots into single user, but only few devices
will attach without problems (e.g. keyboard, serial, parallel, floppy disk,
the RTC, CC graphics, sometimes Ariande ethernet and A4000 IDE.
BPPC support is prepared, but unfinished and untested (I don't own a BPPC).

A problem which has to be solved is interrupt acknowledging, which may happen
twice. Once in the amiga drivers from sys/arch/amiga/dev and then in the PPC
specific pic_amiga.c.
 1.1.2.2 19-Aug-2009  yamt sync with head.
 1.1.2.1 21-Jul-2009  yamt file autoconf.h was added on branch yamt-nfs-mp on 2009-08-19 18:45:57 +0000
 1.2 21-Jul-2009  phx Some improvements based on the work of Adam Ciarcinski.
Adapted everything to integrate with current 5.99 source.
Added an Amiga PIC for interrupt handling.

Status:
A CSPPC machine probably boots into single user, but only few devices
will attach without problems (e.g. keyboard, serial, parallel, floppy disk,
the RTC, CC graphics, sometimes Ariande ethernet and A4000 IDE.
BPPC support is prepared, but unfinished and untested (I don't own a BPPC).

A problem which has to be solved is interrupt acknowledging, which may happen
twice. Once in the amiga drivers from sys/arch/amiga/dev and then in the PPC
specific pic_amiga.c.
 1.1 25-May-2000  is branches: 1.1.6; 1.1.134; 1.1.148;
Initial AmigaPPC commit.

Lots of the work was done by Adam Ciarcinsky.

Currently, this only supports CyberPPC boards by Phase 5. Blizzard PPC
expected later.

The kernel is useless but for demonstrating that it starts... especially
interupts, and most of MMU support, is not in yet. Builtin console works,
however, and you can look at the kernel startup messages.
 1.1.148.1 24-Oct-2010  jym Sync with HEAD
 1.1.134.1 19-Aug-2009  yamt sync with head.
 1.1.6.2 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.1.6.1 25-May-2000  bouyer file bat.h was added on branch thorpej_scsipi on 2000-11-20 19:59:37 +0000
 1.1 25-May-2000  is branches: 1.1.6;
Initial AmigaPPC commit.

Lots of the work was done by Adam Ciarcinsky.

Currently, this only supports CyberPPC boards by Phase 5. Blizzard PPC
expected later.

The kernel is useless but for demonstrating that it starts... especially
interupts, and most of MMU support, is not in yet. Builtin console works,
however, and you can look at the kernel startup messages.
 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 25-May-2000  bouyer file bswap.h was added on branch thorpej_scsipi on 2000-11-20 19:59:38 +0000
 1.8 18-Jul-2011  dyoung Do the bus.h -> bus_{defs,funcs}.h split and change all occurrences of
<machine/bus.h> to <sys/bus.h>.
 1.7 03-Feb-2010  phx Ensure reorder protection for amigappc in all bus space functions.
The ne(4) driver (XSurf2), which is the only bus_space device I got,
works now.
 1.6 20-Oct-2009  snj Remove 3rd and 4th clause on Leo Weppelman's license. OK leo@.
 1.5 21-Jul-2009  phx Some improvements based on the work of Adam Ciarcinski.
Adapted everything to integrate with current 5.99 source.
Added an Amiga PIC for interrupt handling.

Status:
A CSPPC machine probably boots into single user, but only few devices
will attach without problems (e.g. keyboard, serial, parallel, floppy disk,
the RTC, CC graphics, sometimes Ariande ethernet and A4000 IDE.
BPPC support is prepared, but unfinished and untested (I don't own a BPPC).

A problem which has to be solved is interrupt acknowledging, which may happen
twice. Once in the amiga drivers from sys/arch/amiga/dev and then in the PPC
specific pic_amiga.c.
 1.4 14-Mar-2009  dsl Remove all the __P() from sys (excluding sys/dist)
Diff checked with grep and MK1 eyeball.
i386 and amd64 GENERIC and sys still build.
 1.3 16-Feb-2006  perry branches: 1.3.72; 1.3.80; 1.3.86;
Change "inline" back to "__inline" in .h files -- C99 is still too
new, and some apps compile things in C89 mode. C89 keywords stay.

As per core@.
 1.2 24-Dec-2005  perry branches: 1.2.2; 1.2.4; 1.2.6;
__inline__ -> inline
 1.1 25-May-2000  is branches: 1.1.6; 1.1.44;
Initial AmigaPPC commit.

Lots of the work was done by Adam Ciarcinsky.

Currently, this only supports CyberPPC boards by Phase 5. Blizzard PPC
expected later.

The kernel is useless but for demonstrating that it starts... especially
interupts, and most of MMU support, is not in yet. Builtin console works,
however, and you can look at the kernel startup messages.
 1.1.44.1 21-Jun-2006  yamt sync with head.
 1.1.6.2 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.1.6.1 25-May-2000  bouyer file bus.h was added on branch thorpej_scsipi on 2000-11-20 19:59:38 +0000
 1.2.6.1 22-Apr-2006  simonb Sync with head.
 1.2.4.1 09-Sep-2006  rpaulo sync with head
 1.2.2.1 18-Feb-2006  yamt sync with head.
 1.3.86.1 13-May-2009  jym Sync with HEAD.

Commit is split, to avoid a "too many arguments" protocol error.
 1.3.80.1 28-Apr-2009  skrll Sync with HEAD.
 1.3.72.3 11-Mar-2010  yamt sync with head
 1.3.72.2 19-Aug-2009  yamt sync with head.
 1.3.72.1 04-May-2009  yamt sync with head.
 1.8 06-Mar-2020  christos gayle wants stride_1swap now, so declare the rest of the bus methods since
we already define them anyway.
 1.7 23-Sep-2019  skrll Provide PRIxBUSADDR, PRIxBUSSIZE, PRIuBUSSIZE, and PRIxBSH for all arches
to follow arm and (generic) mips.

Reviewed by christos.
 1.6 22-Jan-2014  christos branches: 1.6.4; 1.6.22; 1.6.30; 1.6.34;
need stride 0x1000 for gayle
 1.5 19-Sep-2011  christos branches: 1.5.2; 1.5.12; 1.5.16;
Add 32 bit methods
 1.4 25-Aug-2011  dyoung Delete an unnecessary #include and an unnecessary comment.
 1.3 12-Aug-2011  dyoung Make amigappc compile again by adding barebones definitions of some of
the bus_dma(9) types.
 1.2 25-Jul-2011  dyoung Change u_intXX_t to uintXX_t throughout.
 1.1 18-Jul-2011  dyoung Do the bus.h -> bus_{defs,funcs}.h split and change all occurrences of
<machine/bus.h> to <sys/bus.h>.
 1.5.16.1 18-May-2014  rmind sync with head
 1.5.12.1 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.5.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.6.34.1 08-Mar-2020  martin Pull up following revision(s) (requested by is in ticket #760):

sys/arch/amiga/dev/gayle_pcmcia.c: revision 1.32
sys/arch/amigappc/include/bus_defs.h: revision 1.8

The Gayle interface uses swapped (little-endian) word accesses, so we
need to use the amiga_bus_stride_1swap methods for the word accesses.

Analyzed and submitted via port-amiga@ by Martin �berg.

Tested on formerly working hardware
- by Jukka Andberg with Dlink DE-660+ (ne)
- by Frank Wille with D-Link DFE-670TXD (ne)

Tested on formerly not working hardware:
- by Martin with 3Com 3c589 Etherling III (ep)
- by Martin and Frank with CompactFlash cards (wdc)

-

gayle wants stride_1swap now, so declare the rest of the bus methods since
we already define them anyway.
 1.6.30.2 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.6.30.1 08-Apr-2020  martin Merge changes from current as of 20200406
 1.6.22.1 08-Mar-2020  martin Pull up following revision(s) (requested by is in ticket #1518):

sys/arch/amigappc/include/bus_defs.h: revision 1.8

gayle wants stride_1swap now, so declare the rest of the bus methods since
we already define them anyway.
 1.6.4.1 08-Mar-2020  martin Pull up following revision(s) (requested by is in ticket #1725):

sys/arch/amigappc/include/bus_defs.h: revision 1.8

gayle wants stride_1swap now, so declare the rest of the bus methods since
we already define them anyway.
 1.2 16-Feb-2022  riastradh powerpc: Sprinkle "memory" clobbers on eieio and nearby asm blocks.

Otherwise the compiler may reorder these around loads and stores,
which mostly defeats the purpose. `asm volatile' just ensures the
instruction isn't _deleted_; it may still move around.
 1.1 18-Jul-2011  dyoung Do the bus.h -> bus_{defs,funcs}.h split and change all occurrences of
<machine/bus.h> to <sys/bus.h>.
 1.1 25-May-2000  is branches: 1.1.6;
Initial AmigaPPC commit.

Lots of the work was done by Adam Ciarcinsky.

Currently, this only supports CyberPPC boards by Phase 5. Blizzard PPC
expected later.

The kernel is useless but for demonstrating that it starts... especially
interupts, and most of MMU support, is not in yet. Builtin console works,
however, and you can look at the kernel startup messages.
 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 25-May-2000  bouyer file cdefs.h was added on branch thorpej_scsipi on 2000-11-20 19:59:38 +0000
 1.6 06-Sep-2002  gehenna Merge the gehenna-devsw branch into the trunk.

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

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

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

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

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

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

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

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

- In compile time, device major numbers list is packed into the kernel and
the LKM framework will refer it to assign device major number dynamically.
 1.5 27-Feb-2002  christos branches: 1.5.8;
- define other DEV_ constants that the local port uses.
- delete cdev_decl(mm) since <sys/conf.h> does it.
 1.4 01-Dec-2001  aymeric catch up with amiga's conf.h by adding definition of cdev_par_init
 1.3 26-Mar-2001  lukem branches: 1.3.2;
- add dev_noimpl(xxx,yyy) macro to replace "(dev_type_xxx((*))) yyy",
and use appropriately

- create more helper macros:
. cdev__xyz_init(c,n), such as cdev__ocri_init() for
/* open, close, read, ioctl */, etc.
. cdev__xRy_init(c,n), where nullop is used instead of enodev to dummy out
method `R' and the comments now read /* xxx (read) yyy */ instead
. cdev__xyz_t_init(c,n,t) - as per cdev__xyz_init, but sets d_type = t
as well

- use seltrue instead of dev_noimpl(poll,*), as (IIRC) cdevsw.d_poll should
always DTRT WRT returning a valid result. (a few devices previously
incorrectly returned ENODEV)

- use dev_noimpl(stop,enodev) instead of dev_noimpl(stop,nullop) if tty
== 0, because it doesn't matter if dev_type_stop isn't implemented in that
case, and it allows the use of the cdev__xyz_init macros. certain ports
(sparc,sparc64,x68k) used the nullop method for dev_type_stop in a few
drivers, whereas everything else uses enodev

- ensure that the comments are accurate WRT the behaviour of a given entry
 1.2 21-Mar-2001  lukem now that duplicated stuff has been moved to sys/conf.h, remove unnecessary
defs for: lpt, joy, pc
 1.1 25-May-2000  is branches: 1.1.6; 1.1.8;
Initial AmigaPPC commit.

Lots of the work was done by Adam Ciarcinsky.

Currently, this only supports CyberPPC boards by Phase 5. Blizzard PPC
expected later.

The kernel is useless but for demonstrating that it starts... especially
interupts, and most of MMU support, is not in yet. Builtin console works,
however, and you can look at the kernel startup messages.
 1.1.8.1 09-Apr-2001  nathanw Catch up with -current.
 1.1.6.3 27-Mar-2001  bouyer Sync with HEAD.
 1.1.6.2 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.1.6.1 25-May-2000  bouyer file conf.h was added on branch thorpej_scsipi on 2000-11-20 19:59:38 +0000
 1.3.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.3.2.2 16-Mar-2002  jdolecek Catch up with -current.
 1.3.2.1 10-Jan-2002  thorpej Sync kqueue branch with -current.
 1.5.8.1 19-May-2002  gehenna Remove port-dependent conf.h.
 1.21 16-Feb-2022  riastradh powerpc: Sprinkle "memory" clobbers on eieio and nearby asm blocks.

Otherwise the compiler may reorder these around loads and stores,
which mostly defeats the purpose. `asm volatile' just ensures the
instruction isn't _deleted_; it may still move around.
 1.20 20-Jun-2011  matt Don't expose port-specific if _MODULE is defined.
Don't _MACHINE_CPU_H_, _<PORT>_CPU_H_
 1.19 20-Jan-2011  phx branches: 1.19.2;
Add missing is_a600() definition, used by amiga devices.
We simply define it as 0, because an A600 will never have a PPC installed.
 1.18 09-Feb-2010  phx branches: 1.18.2; 1.18.4; 1.18.6;
Moved the macros amiga_cpu_sync() and amiga_membarrier() from amiga/device.h
to the MD include/cpu.h.
Also make sure that grf_cvreg.h includes cpu.h as it is needed by Xamiga
in xsrc/xfree/xc/programs/Xserver/hw/netbsd/amiga/s3/amigaCV.h.
 1.17 02-Feb-2010  phx branches: 1.17.2;
Make it compile with all devices from amiga/dev.
 1.16 21-Jul-2009  phx Some improvements based on the work of Adam Ciarcinski.
Adapted everything to integrate with current 5.99 source.
Added an Amiga PIC for interrupt handling.

Status:
A CSPPC machine probably boots into single user, but only few devices
will attach without problems (e.g. keyboard, serial, parallel, floppy disk,
the RTC, CC graphics, sometimes Ariande ethernet and A4000 IDE.
BPPC support is prepared, but unfinished and untested (I don't own a BPPC).

A problem which has to be solved is interrupt acknowledging, which may happen
twice. Once in the amiga drivers from sys/arch/amiga/dev and then in the PPC
specific pic_amiga.c.
 1.15 14-Mar-2009  dsl Remove all the __P() from sys (excluding sys/dist)
Diff checked with grep and MK1 eyeball.
i386 and amd64 GENERIC and sys still build.
 1.14 04-Mar-2007  christos branches: 1.14.44; 1.14.52; 1.14.58;
Kill caddr_t; there will be some MI fallout, but it will be fixed shortly.
 1.13 16-Feb-2007  ad branches: 1.13.2;
Remove spllowersoftclock() and CLKF_BASEPRI(), and always dispatch callouts
via a soft interrupt. In the near future, softclock will be run from process
context.
 1.12 11-Dec-2005  christos merge ktrace-lwp.
 1.11 04-Jan-2004  jdolecek branches: 1.11.16;
Rearrange process exit path to avoid need to free resources from different
process context ('reaper').

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

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

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

g/c now unneeded routines and variables, including the reaper kernel thread
 1.10 02-Nov-2003  jdolecek add /* nothing */ comment to cpu_wait()/cpu_swapout()
 1.9 27-Sep-2003  is Bring some stuff up-to-date. To be continued.
 1.8 03-Dec-2001  aymeric branches: 1.8.16;
remove things that were copied verbatim from powerpc_cpu.h
and #include <powepc/powerpc_cpu.h>
 1.7 30-May-2001  mrg branches: 1.7.2;
use _KERNEL_OPT
 1.6 18-Feb-2001  is branches: 1.6.2;
Initial version of interupt handling, by Adam Ciarcinski.
 1.5 14-Dec-2000  mycroft Partial syscall cleanup, as per other ports.
 1.4 25-Aug-2000  thorpej branches: 1.4.2;
Make need_resched() take a "struct cpu_info *" argument. This
causes gives a primitive form of processor affinity. Its use in
roundrobin() still needs some work.
 1.3 16-Jun-2000  is Define schedstate_percpu.
 1.2 26-May-2000  thorpej branches: 1.2.2;
First sweep at scheduler state cleanup. Collect MI scheduler
state into global and per-CPU scheduler state:

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

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

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

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

Tested on i386 and Alpha. Changes are mostly mechanical, but apologies
in advance if it doesn't compile on a particular platform.
 1.1 25-May-2000  is Initial AmigaPPC commit.

Lots of the work was done by Adam Ciarcinsky.

Currently, this only supports CyberPPC boards by Phase 5. Blizzard PPC
expected later.

The kernel is useless but for demonstrating that it starts... especially
interupts, and most of MMU support, is not in yet. Builtin console works,
however, and you can look at the kernel startup messages.
 1.2.2.1 22-Jun-2000  minoura Sync w/ netbsd-1-5-base.
 1.4.2.4 12-Mar-2001  bouyer Sync with HEAD.
 1.4.2.3 05-Jan-2001  bouyer Sync with HEAD
 1.4.2.2 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.4.2.1 25-Aug-2000  bouyer file cpu.h was added on branch thorpej_scsipi on 2000-11-20 19:59:39 +0000
 1.6.2.1 21-Jun-2001  nathanw Catch up to -current.
 1.7.2.1 10-Jan-2002  thorpej Sync kqueue branch with -current.
 1.8.16.3 21-Sep-2004  skrll Fix the sync with head I botched.
 1.8.16.2 18-Sep-2004  skrll Sync with HEAD.
 1.8.16.1 03-Aug-2004  skrll Sync with HEAD
 1.11.16.2 03-Sep-2007  yamt sync with head.
 1.11.16.1 26-Feb-2007  yamt sync with head.
 1.13.2.1 12-Mar-2007  rmind Sync with HEAD.
 1.14.58.1 13-May-2009  jym Sync with HEAD.

Commit is split, to avoid a "too many arguments" protocol error.
 1.14.52.1 28-Apr-2009  skrll Sync with HEAD.
 1.14.44.3 11-Mar-2010  yamt sync with head
 1.14.44.2 19-Aug-2009  yamt sync with head.
 1.14.44.1 04-May-2009  yamt sync with head.
 1.17.2.1 30-Apr-2010  uebayasi Sync with HEAD.
 1.18.6.1 08-Feb-2011  bouyer Sync with HEAD
 1.18.4.1 06-Jun-2011  jruoho Sync with HEAD.
 1.18.2.1 05-Mar-2011  rmind sync with head
 1.19.2.1 23-Jun-2011  cherry Catchup with rmind-uvmplock merge.
 1.1 05-Feb-2003  nakayama Replace machine/rnd.h with more appropriate name to share it
with cycle counter based microtime in kern/kern_microtime.c.
 1.2 21-Jul-2009  phx Some improvements based on the work of Adam Ciarcinski.
Adapted everything to integrate with current 5.99 source.
Added an Amiga PIC for interrupt handling.

Status:
A CSPPC machine probably boots into single user, but only few devices
will attach without problems (e.g. keyboard, serial, parallel, floppy disk,
the RTC, CC graphics, sometimes Ariande ethernet and A4000 IDE.
BPPC support is prepared, but unfinished and untested (I don't own a BPPC).

A problem which has to be solved is interrupt acknowledging, which may happen
twice. Once in the amiga drivers from sys/arch/amiga/dev and then in the PPC
specific pic_amiga.c.
 1.1 25-May-2000  is branches: 1.1.6; 1.1.134; 1.1.148;
Initial AmigaPPC commit.

Lots of the work was done by Adam Ciarcinsky.

Currently, this only supports CyberPPC boards by Phase 5. Blizzard PPC
expected later.

The kernel is useless but for demonstrating that it starts... especially
interupts, and most of MMU support, is not in yet. Builtin console works,
however, and you can look at the kernel startup messages.
 1.1.148.1 24-Oct-2010  jym Sync with HEAD
 1.1.134.1 19-Aug-2009  yamt sync with head.
 1.1.6.2 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.1.6.1 25-May-2000  bouyer file cpufunc.h was added on branch thorpej_scsipi on 2000-11-20 19:59:39 +0000
 1.2 21-Jul-2009  phx Some improvements based on the work of Adam Ciarcinski.
Adapted everything to integrate with current 5.99 source.
Added an Amiga PIC for interrupt handling.

Status:
A CSPPC machine probably boots into single user, but only few devices
will attach without problems (e.g. keyboard, serial, parallel, floppy disk,
the RTC, CC graphics, sometimes Ariande ethernet and A4000 IDE.
BPPC support is prepared, but unfinished and untested (I don't own a BPPC).

A problem which has to be solved is interrupt acknowledging, which may happen
twice. Once in the amiga drivers from sys/arch/amiga/dev and then in the PPC
specific pic_amiga.c.
 1.1 08-Dec-2002  manu branches: 1.1.2; 1.1.114; 1.1.128;
A working fork/vfork implementation. Darwin fork differs from our fork by
two ways:
- the child gets its pid as retval[0] (userland stub will turn it into a 0),
retval[1] is 1 and it is 0 in the parent.
- in the child, the fork syscall is successful, hence we must skip the next
instruction.
 1.1.128.1 24-Oct-2010  jym Sync with HEAD
 1.1.114.1 19-Aug-2009  yamt sync with head.
 1.1.2.1 11-Dec-2002  thorpej Sync with HEAD.
 1.1 25-May-2000  is branches: 1.1.6;
Initial AmigaPPC commit.

Lots of the work was done by Adam Ciarcinsky.

Currently, this only supports CyberPPC boards by Phase 5. Blizzard PPC
expected later.

The kernel is useless but for demonstrating that it starts... especially
interupts, and most of MMU support, is not in yet. Builtin console works,
however, and you can look at the kernel startup messages.
 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 25-May-2000  bouyer file db_machdep.h was added on branch thorpej_scsipi on 2000-11-20 19:59:39 +0000
 1.3 30-Aug-2011  bouyer Add getlabelusesmbr(), as proposed in
http://mail-index.netbsd.org/tech-userlevel/2011/08/25/msg005404.html
This is used by disk tools such as disklabel(8) to dynamically decide is
the undelyling platform uses a disklabel-in-mbr-partition or not
(instead of using a compile-time list of ports).
getlabelusesmbr() reads the sysctl kern.labelusesmbr, takes its value from the
machdep #define LABELUSESMBR.
For evbmips, make LABELUSESMBR 1 if the platform uses pmon
as bootloader, and 0 (the previous value) otherwise.
 1.2 12-Sep-2009  phx Make disklabel.h from amiga and amigappc include the MI sys/disklabel_rdb.h.
amiga/amiga/adosglue.h was deleted and moved into sys_disklabel_rdb.h, as both
are always needed together (disksubr.c and ofppc/stand/ofwboot/rdb.c).
 1.1 25-May-2000  is branches: 1.1.6; 1.1.134;
Initial AmigaPPC commit.

Lots of the work was done by Adam Ciarcinsky.

Currently, this only supports CyberPPC boards by Phase 5. Blizzard PPC
expected later.

The kernel is useless but for demonstrating that it starts... especially
interupts, and most of MMU support, is not in yet. Builtin console works,
however, and you can look at the kernel startup messages.
 1.1.134.1 16-Sep-2009  yamt sync with head
 1.1.6.2 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.1.6.1 25-May-2000  bouyer file disklabel.h was added on branch thorpej_scsipi on 2000-11-20 19:59:40 +0000
 1.1 25-May-2000  is branches: 1.1.6;
Initial AmigaPPC commit.

Lots of the work was done by Adam Ciarcinsky.

Currently, this only supports CyberPPC boards by Phase 5. Blizzard PPC
expected later.

The kernel is useless but for demonstrating that it starts... especially
interupts, and most of MMU support, is not in yet. Builtin console works,
however, and you can look at the kernel startup messages.
 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 25-May-2000  bouyer file elf_machdep.h was added on branch thorpej_scsipi on 2000-11-20 19:59:40 +0000
 1.1 25-May-2000  is branches: 1.1.6;
Initial AmigaPPC commit.

Lots of the work was done by Adam Ciarcinsky.

Currently, this only supports CyberPPC boards by Phase 5. Blizzard PPC
expected later.

The kernel is useless but for demonstrating that it starts... especially
interupts, and most of MMU support, is not in yet. Builtin console works,
however, and you can look at the kernel startup messages.
 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 25-May-2000  bouyer file endian.h was added on branch thorpej_scsipi on 2000-11-20 19:59:40 +0000
 1.1 25-May-2000  is branches: 1.1.6;
Initial AmigaPPC commit.

Lots of the work was done by Adam Ciarcinsky.

Currently, this only supports CyberPPC boards by Phase 5. Blizzard PPC
expected later.

The kernel is useless but for demonstrating that it starts... especially
interupts, and most of MMU support, is not in yet. Builtin console works,
however, and you can look at the kernel startup messages.
 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 25-May-2000  bouyer file endian_machdep.h was added on branch thorpej_scsipi on 2000-11-20 19:59:40 +0000
 1.2 19-Sep-2001  thorpej Amiga doesn't need its own fbio.h anymore; screenblank(8) uses
<dev/sun/fbio.h>, and the ioctl that this file defines is compatible.
 1.1 25-May-2000  is branches: 1.1.6; 1.1.8; 1.1.10;
Initial AmigaPPC commit.

Lots of the work was done by Adam Ciarcinsky.

Currently, this only supports CyberPPC boards by Phase 5. Blizzard PPC
expected later.

The kernel is useless but for demonstrating that it starts... especially
interupts, and most of MMU support, is not in yet. Builtin console works,
however, and you can look at the kernel startup messages.
 1.1.10.1 10-Jan-2002  thorpej Sync kqueue branch with -current.
 1.1.8.1 01-Oct-2001  fvdl Catch up with -current.
 1.1.6.2 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.1.6.1 25-May-2000  bouyer file fbio.h was added on branch thorpej_scsipi on 2000-11-20 19:59:41 +0000
 1.1 20-Dec-2015  christos branches: 1.1.2; 1.1.18;
new powerpc fenv.h
 1.1.18.2 03-Dec-2017  jdolecek update from HEAD
 1.1.18.1 20-Dec-2015  jdolecek file fenv.h was added on branch tls-maxphys on 2017-12-03 11:35:49 +0000
 1.1.2.2 27-Dec-2015  skrll Sync with HEAD (as of 26th Dec)
 1.1.2.1 20-Dec-2015  skrll file fenv.h was added on branch nick-nhusb on 2015-12-27 12:09:29 +0000
 1.1 25-May-2000  is branches: 1.1.6;
Initial AmigaPPC commit.

Lots of the work was done by Adam Ciarcinsky.

Currently, this only supports CyberPPC boards by Phase 5. Blizzard PPC
expected later.

The kernel is useless but for demonstrating that it starts... especially
interupts, and most of MMU support, is not in yet. Builtin console works,
however, and you can look at the kernel startup messages.
 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 25-May-2000  bouyer file float.h was added on branch thorpej_scsipi on 2000-11-20 19:59:41 +0000
 1.1 25-May-2000  is branches: 1.1.6;
Initial AmigaPPC commit.

Lots of the work was done by Adam Ciarcinsky.

Currently, this only supports CyberPPC boards by Phase 5. Blizzard PPC
expected later.

The kernel is useless but for demonstrating that it starts... especially
interupts, and most of MMU support, is not in yet. Builtin console works,
however, and you can look at the kernel startup messages.
 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 25-May-2000  bouyer file fpu.h was added on branch thorpej_scsipi on 2000-11-20 19:59:41 +0000
 1.1 25-May-2000  is branches: 1.1.6;
Initial AmigaPPC commit.

Lots of the work was done by Adam Ciarcinsky.

Currently, this only supports CyberPPC boards by Phase 5. Blizzard PPC
expected later.

The kernel is useless but for demonstrating that it starts... especially
interupts, and most of MMU support, is not in yet. Builtin console works,
however, and you can look at the kernel startup messages.
 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 25-May-2000  bouyer file frame.h was added on branch thorpej_scsipi on 2000-11-20 19:59:42 +0000
 1.2 21-Jul-2009  phx Some improvements based on the work of Adam Ciarcinski.
Adapted everything to integrate with current 5.99 source.
Added an Amiga PIC for interrupt handling.

Status:
A CSPPC machine probably boots into single user, but only few devices
will attach without problems (e.g. keyboard, serial, parallel, floppy disk,
the RTC, CC graphics, sometimes Ariande ethernet and A4000 IDE.
BPPC support is prepared, but unfinished and untested (I don't own a BPPC).

A problem which has to be solved is interrupt acknowledging, which may happen
twice. Once in the amiga drivers from sys/arch/amiga/dev and then in the PPC
specific pic_amiga.c.
 1.1 25-May-2000  is branches: 1.1.6; 1.1.134; 1.1.148;
Initial AmigaPPC commit.

Lots of the work was done by Adam Ciarcinsky.

Currently, this only supports CyberPPC boards by Phase 5. Blizzard PPC
expected later.

The kernel is useless but for demonstrating that it starts... especially
interupts, and most of MMU support, is not in yet. Builtin console works,
however, and you can look at the kernel startup messages.
 1.1.148.1 24-Oct-2010  jym Sync with HEAD
 1.1.134.1 19-Aug-2009  yamt sync with head.
 1.1.6.2 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.1.6.1 25-May-2000  bouyer file hid.h was added on branch thorpej_scsipi on 2000-11-20 19:59:42 +0000
 1.1 25-May-2000  is branches: 1.1.6;
Initial AmigaPPC commit.

Lots of the work was done by Adam Ciarcinsky.

Currently, this only supports CyberPPC boards by Phase 5. Blizzard PPC
expected later.

The kernel is useless but for demonstrating that it starts... especially
interupts, and most of MMU support, is not in yet. Builtin console works,
however, and you can look at the kernel startup messages.
 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 25-May-2000  bouyer file ieee.h was added on branch thorpej_scsipi on 2000-11-20 19:59:42 +0000
 1.1 25-May-2000  is branches: 1.1.6;
Initial AmigaPPC commit.

Lots of the work was done by Adam Ciarcinsky.

Currently, this only supports CyberPPC boards by Phase 5. Blizzard PPC
expected later.

The kernel is useless but for demonstrating that it starts... especially
interupts, and most of MMU support, is not in yet. Builtin console works,
however, and you can look at the kernel startup messages.
 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 25-May-2000  bouyer file ieeefp.h was added on branch thorpej_scsipi on 2000-11-20 19:59:42 +0000
 1.1 14-Apr-2001  kleink branches: 1.1.2; 1.1.4;
Add definitions of C99 integer constant macros.
 1.1.4.1 21-Jun-2001  nathanw Catch up to -current.
 1.1.2.2 21-Apr-2001  bouyer Sync with HEAD
 1.1.2.1 14-Apr-2001  bouyer file int_const.h was added on branch thorpej_scsipi on 2001-04-21 17:53:07 +0000
 1.1 15-Apr-2001  kleink branches: 1.1.2; 1.1.4;
Add definitions of C99 integer format conversion macros.
XXX Fastest minimum-width integer types haven't been decided upon yet.
 1.1.4.1 21-Jun-2001  nathanw Catch up to -current.
 1.1.2.2 21-Apr-2001  bouyer Sync with HEAD
 1.1.2.1 15-Apr-2001  bouyer file int_fmtio.h was added on branch thorpej_scsipi on 2001-04-21 17:53:07 +0000
 1.1 15-Apr-2001  kleink branches: 1.1.2; 1.1.4;
Add definitions of C99 specified-width integer type limits.
XXX Fastest minimum-width integer types haven't been decided upon yet.
 1.1.4.1 21-Jun-2001  nathanw Catch up to -current.
 1.1.2.2 21-Apr-2001  bouyer Sync with HEAD
 1.1.2.1 15-Apr-2001  bouyer file int_limits.h was added on branch thorpej_scsipi on 2001-04-21 17:53:07 +0000
 1.1 14-Apr-2001  kleink branches: 1.1.2; 1.1.4;
Add definitions of C99 minimum-width and greatest-width integer types.
XXX Fastest minimum-width integer types haven't been decided upon yet.
 1.1.4.1 21-Jun-2001  nathanw Catch up to -current.
 1.1.2.2 21-Apr-2001  bouyer Sync with HEAD
 1.1.2.1 14-Apr-2001  bouyer file int_mwgwtypes.h was added on branch thorpej_scsipi on 2001-04-21 17:53:07 +0000
 1.1 26-Jun-2000  kleink branches: 1.1.2;
Add <machine/int_types.h>, which provides namespace-pure definitions
of exact-width integer types.
 1.1.2.2 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.1.2.1 26-Jun-2000  bouyer file int_types.h was added on branch thorpej_scsipi on 2000-11-20 19:59:43 +0000
 1.27 15-Dec-2019  tsutsui Remove clause 3 and 4 leftovers from TNF licenses in more sources.

Confirmed by martin@ in PR/54760.
 1.26 19-Jun-2011  matt branches: 1.26.54; 1.26.58;
move compat splN calls to intr.h where they belong.
 1.25 17-Jun-2011  matt intr.h must not include cpu due to deadly embrace with SOFTINT_COUNT.
Cleanup intr.h so MD definitions can overload common definitions.
Rototill pic/intr.c. Virtual IRQs can now be reclaimed. separate virq
from hwirq from picirq. Redo intr mask calculations.
tested on pmppc and macppc (MP).
 1.24 13-Nov-2010  uebayasi branches: 1.24.6;
Don't pull in huge sys/device.h definitions.
 1.23 02-Feb-2010  phx branches: 1.23.4;
Make it compile with all devices from amiga/dev.
 1.22 21-Jul-2009  phx Some improvements based on the work of Adam Ciarcinski.
Adapted everything to integrate with current 5.99 source.
Added an Amiga PIC for interrupt handling.

Status:
A CSPPC machine probably boots into single user, but only few devices
will attach without problems (e.g. keyboard, serial, parallel, floppy disk,
the RTC, CC graphics, sometimes Ariande ethernet and A4000 IDE.
BPPC support is prepared, but unfinished and untested (I don't own a BPPC).

A problem which has to be solved is interrupt acknowledging, which may happen
twice. Once in the amiga drivers from sys/arch/amiga/dev and then in the PPC
specific pic_amiga.c.
 1.21 14-Mar-2009  dsl Remove all the __P() from sys (excluding sys/dist)
Diff checked with grep and MK1 eyeball.
i386 and amd64 GENERIC and sys still build.
 1.20 28-Apr-2008  martin branches: 1.20.8; 1.20.14;
Remove clause 3 and 4 from TNF licenses
 1.19 16-Feb-2007  ad branches: 1.19.44; 1.19.46; 1.19.48;
Remove spllowersoftclock() and CLKF_BASEPRI(), and always dispatch callouts
via a soft interrupt. In the near future, softclock will be run from process
context.
 1.18 16-Feb-2006  perry Change "inline" back to "__inline" in .h files -- C99 is still too
new, and some apps compile things in C89 mode. C89 keywords stay.

As per core@.
 1.17 24-Dec-2005  perry branches: 1.17.2; 1.17.4; 1.17.6;
__asm__ -> __asm
__const__ -> const
__inline__ -> inline
__volatile__ -> volatile
 1.16 24-Dec-2005  perry Remove leading __ from __(const|inline|signed|volatile) -- it is obsolete.
 1.15 11-Dec-2005  christos merge ktrace-lwp.
 1.14 10-Dec-2003  jmc branches: 1.14.16;
Oops. _KERNEL, not KERNEL
 1.13 09-Dec-2003  jmc Wrap sys root'd includes with #ifdef KERNEL so this will compile for things
including machine/cpu.h (which includes this)
 1.12 16-Jun-2003  thorpej branches: 1.12.2;
Rename IPL_IMP -> IPL_VM.
 1.11 05-Jul-2002  matt Peform a rototill over the powerpc-based ports.

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

Add user Altivec support.

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

Use ci_fpuproc in cpu_info instead of separate fpuproc.

Add separate syscall.c and defined __HAVE_SYSCALL_INTERN.
 1.10 11-Feb-2002  wiz branches: 1.10.4; 1.10.8;
"doesn't" should have an 's'.
 1.9 11-Feb-2002  wiz achive is not a good word.
 1.8 13-Apr-2001  thorpej branches: 1.8.2;
Remove the use of splimp() from the NetBSD kernel. splnet()
and only splnet() is allowed for the protection of data structures
used by network devices.
 1.7 18-Feb-2001  is branches: 1.7.2;
Initial version of interupt handling, by Adam Ciarcinski.
 1.6 15-Jan-2001  thorpej Make softclock a generic soft interrupt of the API is available,
adding the requisite void * argument to softclock().
 1.5 14-Jan-2001  thorpej Rename __GENERIC_SOFT_INTERRUPTS to __HAVE_GENERIC_SOFT_INTERRUPTS,
and place the definition in <machine/types.h>. This can now be used
as a flag to indicate whether or not <machine/intr.h> can be included
to get the generic soft interrupt API.
 1.4 14-Jan-2001  thorpej Make sure everybody has an splvm() and equate it with splimp() (splimp()
is the historical name for this interrupt level, and the historical name
is going to go away in the near future).
 1.3 22-Aug-2000  thorpej branches: 1.3.2;
Add spllock(). See spl(9) for details.
 1.2 21-Aug-2000  thorpej Make sure we provide splsched() as described in spl(9).
 1.1 25-May-2000  is Initial AmigaPPC commit.

Lots of the work was done by Adam Ciarcinsky.

Currently, this only supports CyberPPC boards by Phase 5. Blizzard PPC
expected later.

The kernel is useless but for demonstrating that it starts... especially
interupts, and most of MMU support, is not in yet. Builtin console works,
however, and you can look at the kernel startup messages.
 1.3.2.5 21-Apr-2001  bouyer Sync with HEAD
 1.3.2.4 12-Mar-2001  bouyer Sync with HEAD.
 1.3.2.3 18-Jan-2001  bouyer Sync with head (for UBC+NFS fixes, mostly).
 1.3.2.2 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.3.2.1 22-Aug-2000  bouyer file intr.h was added on branch thorpej_scsipi on 2000-11-20 19:59:43 +0000
 1.7.2.1 21-Jun-2001  nathanw Catch up to -current.
 1.8.2.2 06-Sep-2002  jdolecek sync kqueue branch with HEAD
 1.8.2.1 16-Mar-2002  jdolecek Catch up with -current.
 1.10.8.1 16-Jul-2002  gehenna catch up with -current.
 1.10.4.1 17-Mar-2002  thorpej IPL_IMP -> IPL_VM
 1.12.2.3 21-Sep-2004  skrll Fix the sync with head I botched.
 1.12.2.2 18-Sep-2004  skrll Sync with HEAD.
 1.12.2.1 03-Aug-2004  skrll Sync with HEAD
 1.14.16.2 26-Feb-2007  yamt sync with head.
 1.14.16.1 21-Jun-2006  yamt sync with head.
 1.17.6.1 22-Apr-2006  simonb Sync with head.
 1.17.4.1 09-Sep-2006  rpaulo sync with head
 1.17.2.1 18-Feb-2006  yamt sync with head.
 1.19.48.4 11-Mar-2010  yamt sync with head
 1.19.48.3 19-Aug-2009  yamt sync with head.
 1.19.48.2 04-May-2009  yamt sync with head.
 1.19.48.1 16-May-2008  yamt sync with head.
 1.19.46.1 18-May-2008  yamt sync with head.
 1.19.44.1 02-Jun-2008  mjf Sync with HEAD.
 1.20.14.1 13-May-2009  jym Sync with HEAD.

Commit is split, to avoid a "too many arguments" protocol error.
 1.20.8.1 28-Apr-2009  skrll Sync with HEAD.
 1.23.4.1 05-Mar-2011  rmind sync with head
 1.24.6.1 23-Jun-2011  cherry Catchup with rmind-uvmplock merge.
 1.26.58.1 18-Dec-2019  martin Pull up following revision(s) (requested by tsutsui in ticket #570):

sys/compat/netbsd32/netbsd32_compat_50_sysv.c: revision 1.3
sys/dev/raidframe/rf_compat50.h: revision 1.6
sys/arch/emips/emips/bus_space.c: revision 1.3
sys/compat/net/if.h: revision 1.5
sys/arch/emips/stand/common/bootinfo.c: revision 1.2
sys/compat/common/sysv_msg_50.c: revision 1.5
sys/compat/common/kern_time_30.c: revision 1.8
sys/arch/emips/stand/common/bootinfo.h: revision 1.2
sys/arch/ia64/include/bus.h: revision 1.4
sys/arch/ia64/ia64/bus_space.c: revision 1.2
sys/compat/common/sysv_shm_50.c: revision 1.5
sys/dev/ic/adw.h: revision 1.15
sys/compat/common/uipc_syscalls_50.c: revision 1.10
sys/arch/emips/ebus/flash_ebus.c: revision 1.22
sys/dev/ic/adv.h: revision 1.15
sys/dev/ic/adwmcode.c: revision 1.18
sys/dev/ic/advlib.c: revision 1.29
sys/arch/hpcarm/include/kloader.h: revision 1.3
sys/dev/usb/uberry.c: revision 1.16
sys/compat/common/sysv_sem_50.c: revision 1.5
sys/compat/netbsd32/netbsd32_compat_50.c: revision 1.43
sys/dev/ic/advlib.h: revision 1.21
sys/dev/ic/adv.c: revision 1.50
sys/compat/netinet6/in6_var.h: revision 1.5
sys/arch/hpc/stand/hpcboot/arm/arm_sa1100_asm.asm: revision 1.2
sys/arch/emips/include/loadfile_machdep.h: revision 1.3
sys/arch/emips/stand/common/prom_iface.c: revision 1.7
sys/dev/ic/adw.c: revision 1.56
sys/dev/ic/adwmcode.h: revision 1.12
sys/dev/ic/advmcode.c: revision 1.10
sys/arch/emips/ebus/ace_ebus.c: revision 1.22
sys/compat/netbsd32/netbsd32_compat_60.c: revision 1.5
sys/dev/raidframe/rf_compat50.c: revision 1.13
sys/arch/x68k/dev/intiovar.h: revision 1.15
sys/dev/usb/uipad.c: revision 1.8
sys/arch/zaurus/include/kloader.h: revision 1.3
sys/arch/emips/stand/common/bootxx.c: revision 1.2
sys/dev/ic/adwlib.h: revision 1.23
sys/dev/ic/adwlib.c: revision 1.44
sys/compat/netbsd32/netbsd32_compat_16.c: revision 1.3
sys/arch/amigappc/include/intr.h: revision 1.27
sys/arch/x68k/dev/mfp.c: revision 1.27
sys/arch/arm/at91/at91dbgu.c: revision 1.17
sys/dev/ic/advmcode.h: revision 1.7
sys/compat/ultrix/ultrix_exec.h: revision 1.7
sys/compat/common/vfs_syscalls_50.c: revision 1.24
sys/arch/mips/cavium/octeon_dma.c: revision 1.3
sys/arch/hpc/stand/hpcboot/arm/arm_pxa2x0_asm.asm: revision 1.2

Remove clause 3 and 4 from TNF licenses.
Ok'ed by martin@ in PR/54760.

Remove clause 3 and 4 leftovers from TNF licenses in more sources.
Confirmed by martin@ in PR/54760.
 1.26.54.1 08-Apr-2020  martin Merge changes from current as of 20200406
 1.2 15-Jul-2018  maxv Retire ipkdb entirely. The option was removed from the config files
yesterday.

ok kamil christos
 1.1 25-May-2000  is branches: 1.1.6; 1.1.40; 1.1.218;
Initial AmigaPPC commit.

Lots of the work was done by Adam Ciarcinsky.

Currently, this only supports CyberPPC boards by Phase 5. Blizzard PPC
expected later.

The kernel is useless but for demonstrating that it starts... especially
interupts, and most of MMU support, is not in yet. Builtin console works,
however, and you can look at the kernel startup messages.
 1.1.218.1 10-Jun-2019  christos Sync with HEAD
 1.1.40.1 28-Jul-2018  pgoyette Sync with HEAD
 1.1.6.2 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.1.6.1 25-May-2000  bouyer file ipkdb.h was added on branch thorpej_scsipi on 2000-11-20 19:59:43 +0000
 1.1 25-May-2000  is branches: 1.1.6;
Initial AmigaPPC commit.

Lots of the work was done by Adam Ciarcinsky.

Currently, this only supports CyberPPC boards by Phase 5. Blizzard PPC
expected later.

The kernel is useless but for demonstrating that it starts... especially
interupts, and most of MMU support, is not in yet. Builtin console works,
however, and you can look at the kernel startup messages.
 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 25-May-2000  bouyer file kcore.h was added on branch thorpej_scsipi on 2000-11-20 19:59:44 +0000
 1.1 25-May-2000  is branches: 1.1.6;
Initial AmigaPPC commit.

Lots of the work was done by Adam Ciarcinsky.

Currently, this only supports CyberPPC boards by Phase 5. Blizzard PPC
expected later.

The kernel is useless but for demonstrating that it starts... especially
interupts, and most of MMU support, is not in yet. Builtin console works,
however, and you can look at the kernel startup messages.
 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 25-May-2000  bouyer file limits.h was added on branch thorpej_scsipi on 2000-11-20 19:59:44 +0000
 1.1 25-May-2000  is branches: 1.1.6;
Initial AmigaPPC commit.

Lots of the work was done by Adam Ciarcinsky.

Currently, this only supports CyberPPC boards by Phase 5. Blizzard PPC
expected later.

The kernel is useless but for demonstrating that it starts... especially
interupts, and most of MMU support, is not in yet. Builtin console works,
however, and you can look at the kernel startup messages.
 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 25-May-2000  bouyer file lock.h was added on branch thorpej_scsipi on 2000-11-20 19:59:44 +0000
 1.1 30-Nov-2024  christos branches: 1.1.4;
Create a new header lwp_private.h to contain _lwp_getprivate_fast,
_lwp_gettcb_fast, _lwp_settcb and remove them from mcontext.h, so that:
1. we don't need special hacks to hide them
2. we can include <lwp.h> where needed to get the necessary prototypes
without redefining them locally.
 1.1.4.2 02-Aug-2025  perseant Sync with HEAD
 1.1.4.1 30-Nov-2024  perseant file lwp_private.h was added on branch perseant-exfatfs on 2025-08-02 05:55:25 +0000
 1.2 03-May-2001  soren PPC machine type tags haven't been used for a while.
 1.1 25-May-2000  is branches: 1.1.6;
Initial AmigaPPC commit.

Lots of the work was done by Adam Ciarcinsky.

Currently, this only supports CyberPPC boards by Phase 5. Blizzard PPC
expected later.

The kernel is useless but for demonstrating that it starts... especially
interupts, and most of MMU support, is not in yet. Builtin console works,
however, and you can look at the kernel startup messages.
 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 25-May-2000  bouyer file machine_type.h was added on branch thorpej_scsipi on 2000-11-20 19:59:45 +0000
 1.2 21-Jul-2009  phx Some improvements based on the work of Adam Ciarcinski.
Adapted everything to integrate with current 5.99 source.
Added an Amiga PIC for interrupt handling.

Status:
A CSPPC machine probably boots into single user, but only few devices
will attach without problems (e.g. keyboard, serial, parallel, floppy disk,
the RTC, CC graphics, sometimes Ariande ethernet and A4000 IDE.
BPPC support is prepared, but unfinished and untested (I don't own a BPPC).

A problem which has to be solved is interrupt acknowledging, which may happen
twice. Once in the amiga drivers from sys/arch/amiga/dev and then in the PPC
specific pic_amiga.c.
 1.1 30-Oct-2002  matt branches: 1.1.2; 1.1.114; 1.1.128;
Add missing file.
 1.1.128.1 24-Oct-2010  jym Sync with HEAD
 1.1.114.1 19-Aug-2009  yamt sync with head.
 1.1.2.1 11-Nov-2002  nathanw Catch up to -current
 1.1 14-Apr-2001  kleink branches: 1.1.2; 1.1.4;
Add long-missing(!) <machine/math.h>.
 1.1.4.1 21-Jun-2001  nathanw Catch up to -current.
 1.1.2.2 21-Apr-2001  bouyer Sync with HEAD
 1.1.2.1 14-Apr-2001  bouyer file math.h was added on branch thorpej_scsipi on 2001-04-21 17:53:07 +0000
 1.1 21-Jan-2003  kleink Add <machine/mcontext.h> wrapper.
 1.6 21-Jul-2009  phx Some improvements based on the work of Adam Ciarcinski.
Adapted everything to integrate with current 5.99 source.
Added an Amiga PIC for interrupt handling.

Status:
A CSPPC machine probably boots into single user, but only few devices
will attach without problems (e.g. keyboard, serial, parallel, floppy disk,
the RTC, CC graphics, sometimes Ariande ethernet and A4000 IDE.
BPPC support is prepared, but unfinished and untested (I don't own a BPPC).

A problem which has to be solved is interrupt acknowledging, which may happen
twice. Once in the amiga drivers from sys/arch/amiga/dev and then in the PPC
specific pic_amiga.c.
 1.5 14-Mar-2009  dsl Remove all the __P() from sys (excluding sys/dist)
Diff checked with grep and MK1 eyeball.
i386 and amd64 GENERIC and sys still build.
 1.4 11-Dec-2005  christos branches: 1.4.78; 1.4.86; 1.4.92;
merge ktrace-lwp.
 1.3 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.2 03-Dec-2001  aymeric branches: 1.2.16;
use _AMIGAPPC_MPTR_H_ instead of _MACHINE_MPTR_H_ so this file is included
when it has to be.
 1.1 25-May-2000  is branches: 1.1.6; 1.1.10;
Initial AmigaPPC commit.

Lots of the work was done by Adam Ciarcinsky.

Currently, this only supports CyberPPC boards by Phase 5. Blizzard PPC
expected later.

The kernel is useless but for demonstrating that it starts... especially
interupts, and most of MMU support, is not in yet. Builtin console works,
however, and you can look at the kernel startup messages.
 1.1.10.1 10-Jan-2002  thorpej Sync kqueue branch with -current.
 1.1.6.2 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.1.6.1 25-May-2000  bouyer file mtpr.h was added on branch thorpej_scsipi on 2000-11-20 19:59:45 +0000
 1.2.16.3 21-Sep-2004  skrll Fix the sync with head I botched.
 1.2.16.2 18-Sep-2004  skrll Sync with HEAD.
 1.2.16.1 03-Aug-2004  skrll Sync with HEAD
 1.4.92.2 24-Oct-2010  jym Sync with HEAD
 1.4.92.1 13-May-2009  jym Sync with HEAD.

Commit is split, to avoid a "too many arguments" protocol error.
 1.4.86.1 28-Apr-2009  skrll Sync with HEAD.
 1.4.78.2 19-Aug-2009  yamt sync with head.
 1.4.78.1 04-May-2009  yamt sync with head.
 1.3 21-Jul-2009  phx Some improvements based on the work of Adam Ciarcinski.
Adapted everything to integrate with current 5.99 source.
Added an Amiga PIC for interrupt handling.

Status:
A CSPPC machine probably boots into single user, but only few devices
will attach without problems (e.g. keyboard, serial, parallel, floppy disk,
the RTC, CC graphics, sometimes Ariande ethernet and A4000 IDE.
BPPC support is prepared, but unfinished and untested (I don't own a BPPC).

A problem which has to be solved is interrupt acknowledging, which may happen
twice. Once in the amiga drivers from sys/arch/amiga/dev and then in the PPC
specific pic_amiga.c.
 1.2 09-Feb-2007  ad branches: 1.2.4;
Merge newlock2 to head.
 1.1 22-Dec-2006  ad branches: 1.1.2;
file mutex.h was initially added on branch newlock2.
 1.1.2.1 22-Dec-2006  ad Pull in CPU specific stubs.
 1.2.4.2 26-Feb-2007  yamt sync with head.
 1.2.4.1 09-Feb-2007  yamt file mutex.h was added on branch yamt-lazymbuf on 2007-02-26 09:05:49 +0000
 1.2 21-Jul-2009  phx Some improvements based on the work of Adam Ciarcinski.
Adapted everything to integrate with current 5.99 source.
Added an Amiga PIC for interrupt handling.

Status:
A CSPPC machine probably boots into single user, but only few devices
will attach without problems (e.g. keyboard, serial, parallel, floppy disk,
the RTC, CC graphics, sometimes Ariande ethernet and A4000 IDE.
BPPC support is prepared, but unfinished and untested (I don't own a BPPC).

A problem which has to be solved is interrupt acknowledging, which may happen
twice. Once in the amiga drivers from sys/arch/amiga/dev and then in the PPC
specific pic_amiga.c.
 1.1 25-May-2000  is branches: 1.1.6; 1.1.134; 1.1.148;
Initial AmigaPPC commit.

Lots of the work was done by Adam Ciarcinsky.

Currently, this only supports CyberPPC boards by Phase 5. Blizzard PPC
expected later.

The kernel is useless but for demonstrating that it starts... especially
interupts, and most of MMU support, is not in yet. Builtin console works,
however, and you can look at the kernel startup messages.
 1.1.148.1 24-Oct-2010  jym Sync with HEAD
 1.1.134.1 19-Aug-2009  yamt sync with head.
 1.1.6.2 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.1.6.1 25-May-2000  bouyer file p5reg.h was added on branch thorpej_scsipi on 2000-11-20 19:59:45 +0000
 1.14 12-Nov-2015  phx Xorg for amiga via wsfb. Currently available on CV64 and CV64/3D. More
graphics cards will follow, when adding wscons support to them.

I didn't manage to make the "wskbd" protocol the default in the X server,
so you have to provide a small xorg.conf with Option "Protocol" "wskbd".
The standard protocol will not work as the Amiga wskbd cannot be switched
into raw mode and has no AT-scancode translation in the kernel.

On the positive side, wskbd also works with national keymaps under X.

The graphics modes can still be defined via grfconfig(8). Xorg's wsfb
driver uses the current grf video mode, which is usually mode #1.
All resolutions and depths seem to work (tested on CV64).
 1.13 20-Jun-2011  matt branches: 1.13.12; 1.13.30;
Cleanup powerpc param.h. If compiling a MODULE, ignore port-specific stuff.
Only include <machine/cpu.h> in <powerpc/param.h> at the end.
 1.12 21-Jul-2009  phx branches: 1.12.10;
Some improvements based on the work of Adam Ciarcinski.
Adapted everything to integrate with current 5.99 source.
Added an Amiga PIC for interrupt handling.

Status:
A CSPPC machine probably boots into single user, but only few devices
will attach without problems (e.g. keyboard, serial, parallel, floppy disk,
the RTC, CC graphics, sometimes Ariande ethernet and A4000 IDE.
BPPC support is prepared, but unfinished and untested (I don't own a BPPC).

A problem which has to be solved is interrupt acknowledging, which may happen
twice. Once in the amiga drivers from sys/arch/amiga/dev and then in the PPC
specific pic_amiga.c.
 1.11 14-Mar-2009  dsl Remove all the __P() from sys (excluding sys/dist)
Diff checked with grep and MK1 eyeball.
i386 and amd64 GENERIC and sys still build.
 1.10 28-Aug-2006  yamt branches: 1.10.60; 1.10.68; 1.10.74;
- remove unused bdbtofsb.
- move the following macros from MD headers to sys/param.h.
ctod
dtoc
ctob
btoc
dbtob
btodb
 1.9 11-Dec-2005  christos branches: 1.9.4; 1.9.8;
merge ktrace-lwp.
 1.8 27-Sep-2003  is branches: 1.8.16;
Bring some stuff up-to-date. To be continued.
 1.7 07-Aug-2003  agc Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22364, verified by myself.
 1.6 28-May-2002  bjh21 branches: 1.6.6;
Use #if 0 for commenting out multiple lines, rather than dodgily-nested
comments (about which GCC warns).
 1.5 16-May-2002  wiz Remove bogus stuff after #endif.
 1.4 27-Jun-2001  lukem branches: 1.4.2; 1.4.14;
be consistent with #define<TAB>
 1.3 30-May-2001  mrg use _KERNEL_OPT
 1.2 30-Jun-2000  itojun branches: 1.2.2; 1.2.4;
raise MSIZE from 128 to 256.
- for sizeof(void *) == 8 arch, this is mandatory. MHLEN is too small
already (less than 80) and there are chances for unwanted packet loss due
to m_pullup restriction.
- for other cases, the change should avoid allocating clusters in most cases
(even when you have IPv4 IPsec tunnel, or IPv6 with moderate amount of
extension header)

portmasters: if your arch chokes with the change (high memory usage or
whatever), please backout the change for your arch.
 1.1 25-May-2000  is branches: 1.1.4;
Initial AmigaPPC commit.

Lots of the work was done by Adam Ciarcinsky.

Currently, this only supports CyberPPC boards by Phase 5. Blizzard PPC
expected later.

The kernel is useless but for demonstrating that it starts... especially
interupts, and most of MMU support, is not in yet. Builtin console works,
however, and you can look at the kernel startup messages.
 1.1.4.1 23-Jul-2000  itojun pullup from main trunc (approved by releng-1-5)

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

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

1.1 -> 1.2 syssrc/sys/arch/amigappc/include/param.h
1.13 -> 1.14 syssrc/sys/arch/arc/include/param.h
1.1 -> 1.2 syssrc/sys/arch/arm26/include/param.h
1.17 -> 1.18 syssrc/sys/arch/arm32/include/param.h
1.6 -> 1.7 syssrc/sys/arch/bebox/include/param.h
1.4 -> 1.5 syssrc/sys/arch/cobalt/include/param.h
1.4 -> 1.5 syssrc/sys/arch/evbsh3/include/param.h
1.2 -> 1.3 syssrc/sys/arch/hpcmips/include/param.h
1.40 -> 1.41 syssrc/sys/arch/i386/include/param.h
1.7 -> 1.8 syssrc/sys/arch/m68k/include/param.h
1.9 -> 1.10 syssrc/sys/arch/macppc/include/param.h
1.4 -> 1.5 syssrc/sys/arch/mmeye/include/param.h
1.6 -> 1.7 syssrc/sys/arch/newsmips/include/param.h
1.7 -> 1.8 syssrc/sys/arch/ofppc/include/param.h
1.23 -> 1.24 syssrc/sys/arch/pc532/include/param.h
1.32 -> 1.33 syssrc/sys/arch/pmax/include/param.h
1.7 -> 1.8 syssrc/sys/arch/powerpc/include/param.h
1.1 -> 1.2 syssrc/sys/arch/prep/include/param.h
1.1 -> 1.2 syssrc/sys/arch/sgimips/include/param.h
1.3 -> 1.4 syssrc/sys/arch/sh3/include/param.h
1.44 -> 1.45 syssrc/sys/arch/sparc/include/param.h
1.21 -> 1.22 syssrc/sys/arch/sparc64/include/param.h
1.43 -> 1.44 syssrc/sys/arch/vax/include/param.h
 1.2.4.1 21-Jun-2001  nathanw Catch up to -current.
 1.2.2.2 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.2.2.1 30-Jun-2000  bouyer file param.h was added on branch thorpej_scsipi on 2000-11-20 19:59:46 +0000
 1.4.14.1 30-May-2002  gehenna Catch up with -current.
 1.4.2.1 23-Jun-2002  jdolecek catch up with -current on kqueue branch
 1.6.6.3 21-Sep-2004  skrll Fix the sync with head I botched.
 1.6.6.2 18-Sep-2004  skrll Sync with HEAD.
 1.6.6.1 03-Aug-2004  skrll Sync with HEAD
 1.8.16.1 30-Dec-2006  yamt sync with head.
 1.9.8.1 03-Sep-2006  yamt sync with head.
 1.9.4.1 09-Sep-2006  rpaulo sync with head
 1.10.74.1 13-May-2009  jym Sync with HEAD.

Commit is split, to avoid a "too many arguments" protocol error.
 1.10.68.1 28-Apr-2009  skrll Sync with HEAD.
 1.10.60.2 19-Aug-2009  yamt sync with head.
 1.10.60.1 04-May-2009  yamt sync with head.
 1.12.10.1 23-Jun-2011  cherry Catchup with rmind-uvmplock merge.
 1.13.30.1 27-Dec-2015  skrll Sync with HEAD (as of 26th Dec)
 1.13.12.1 03-Dec-2017  jdolecek update from HEAD
 1.1 25-May-2000  is branches: 1.1.6;
Initial AmigaPPC commit.

Lots of the work was done by Adam Ciarcinsky.

Currently, this only supports CyberPPC boards by Phase 5. Blizzard PPC
expected later.

The kernel is useless but for demonstrating that it starts... especially
interupts, and most of MMU support, is not in yet. Builtin console works,
however, and you can look at the kernel startup messages.
 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 25-May-2000  bouyer file pcb.h was added on branch thorpej_scsipi on 2000-11-20 19:59:46 +0000
 1.1 25-May-2000  is branches: 1.1.6;
Initial AmigaPPC commit.

Lots of the work was done by Adam Ciarcinsky.

Currently, this only supports CyberPPC boards by Phase 5. Blizzard PPC
expected later.

The kernel is useless but for demonstrating that it starts... especially
interupts, and most of MMU support, is not in yet. Builtin console works,
however, and you can look at the kernel startup messages.
 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 25-May-2000  bouyer file pmap.h was added on branch thorpej_scsipi on 2000-11-20 19:59:46 +0000
 1.2 12-Jul-2018  maxv Remove the kernel PMC code. Sent yesterday on tech-kern@.

This change:

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

* Removes the PMC code of ARM XSCALE.

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

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

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

* Removes the pmc_evid_t and pmc_ctr_t types.

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

pmc(9) is meant to be a general interface. Initially, the Intel XScale
counters are the only ones supported.
 1.1.202.1 10-Jun-2019  christos Sync with HEAD
 1.1.200.1 28-Jul-2018  pgoyette Sync with HEAD
 1.1.4.2 06-Sep-2002  jdolecek sync kqueue branch with HEAD
 1.1.4.1 07-Aug-2002  jdolecek file pmc.h was added on branch kqueue on 2002-09-06 08:32:00 +0000
 1.1.2.2 30-Aug-2002  gehenna catch up with -current.
 1.1.2.1 07-Aug-2002  gehenna file pmc.h was added on branch gehenna-devsw on 2002-08-30 00:18:59 +0000
 1.6 21-Jul-2009  phx Some improvements based on the work of Adam Ciarcinski.
Adapted everything to integrate with current 5.99 source.
Added an Amiga PIC for interrupt handling.

Status:
A CSPPC machine probably boots into single user, but only few devices
will attach without problems (e.g. keyboard, serial, parallel, floppy disk,
the RTC, CC graphics, sometimes Ariande ethernet and A4000 IDE.
BPPC support is prepared, but unfinished and untested (I don't own a BPPC).

A problem which has to be solved is interrupt acknowledging, which may happen
twice. Once in the amiga drivers from sys/arch/amiga/dev and then in the PPC
specific pic_amiga.c.
 1.5 14-Mar-2009  dsl Remove all the __P() from sys (excluding sys/dist)
Diff checked with grep and MK1 eyeball.
i386 and amd64 GENERIC and sys still build.
 1.4 11-Dec-2005  christos branches: 1.4.78; 1.4.86; 1.4.92;
merge ktrace-lwp.
 1.3 23-Oct-2004  thorpej Centralize the declaration of booted_device and booted_partition.
 1.2 01-Jun-2000  matt branches: 1.2.4; 1.2.26;
Make booted_device global (and booted_parition for consitency).
Eliminate it from header files and other extern definitions.
 1.1 25-May-2000  is branches: 1.1.2;
Initial AmigaPPC commit.

Lots of the work was done by Adam Ciarcinsky.

Currently, this only supports CyberPPC boards by Phase 5. Blizzard PPC
expected later.

The kernel is useless but for demonstrating that it starts... especially
interupts, and most of MMU support, is not in yet. Builtin console works,
however, and you can look at the kernel startup messages.
 1.1.2.1 22-Jun-2000  minoura Sync w/ netbsd-1-5-base.
 1.2.26.1 02-Nov-2004  skrll Sync with HEAD.
 1.2.4.2 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.2.4.1 01-Jun-2000  bouyer file powerpc.h was added on branch thorpej_scsipi on 2000-11-20 19:59:46 +0000
 1.4.92.1 13-May-2009  jym Sync with HEAD.

Commit is split, to avoid a "too many arguments" protocol error.
 1.4.86.1 28-Apr-2009  skrll Sync with HEAD.
 1.4.78.2 19-Aug-2009  yamt sync with head.
 1.4.78.1 04-May-2009  yamt sync with head.
 1.1 25-May-2000  is branches: 1.1.6;
Initial AmigaPPC commit.

Lots of the work was done by Adam Ciarcinsky.

Currently, this only supports CyberPPC boards by Phase 5. Blizzard PPC
expected later.

The kernel is useless but for demonstrating that it starts... especially
interupts, and most of MMU support, is not in yet. Builtin console works,
however, and you can look at the kernel startup messages.
 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 25-May-2000  bouyer file proc.h was added on branch thorpej_scsipi on 2000-11-20 19:59:47 +0000
 1.1 25-May-2000  is branches: 1.1.6;
Initial AmigaPPC commit.

Lots of the work was done by Adam Ciarcinsky.

Currently, this only supports CyberPPC boards by Phase 5. Blizzard PPC
expected later.

The kernel is useless but for demonstrating that it starts... especially
interupts, and most of MMU support, is not in yet. Builtin console works,
however, and you can look at the kernel startup messages.
 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 25-May-2000  bouyer file profile.h was added on branch thorpej_scsipi on 2000-11-20 19:59:47 +0000
 1.4 19-Jun-2011  matt move compat splN calls to intr.h where they belong.
 1.3 02-Feb-2010  phx branches: 1.3.10;
Make it compile with all devices from amiga/dev.
 1.2 21-Jul-2009  phx Some improvements based on the work of Adam Ciarcinski.
Adapted everything to integrate with current 5.99 source.
Added an Amiga PIC for interrupt handling.

Status:
A CSPPC machine probably boots into single user, but only few devices
will attach without problems (e.g. keyboard, serial, parallel, floppy disk,
the RTC, CC graphics, sometimes Ariande ethernet and A4000 IDE.
BPPC support is prepared, but unfinished and untested (I don't own a BPPC).

A problem which has to be solved is interrupt acknowledging, which may happen
twice. Once in the amiga drivers from sys/arch/amiga/dev and then in the PPC
specific pic_amiga.c.
 1.1 25-May-2000  is branches: 1.1.6; 1.1.134;
Initial AmigaPPC commit.

Lots of the work was done by Adam Ciarcinsky.

Currently, this only supports CyberPPC boards by Phase 5. Blizzard PPC
expected later.

The kernel is useless but for demonstrating that it starts... especially
interupts, and most of MMU support, is not in yet. Builtin console works,
however, and you can look at the kernel startup messages.
 1.1.134.2 11-Mar-2010  yamt sync with head
 1.1.134.1 19-Aug-2009  yamt sync with head.
 1.1.6.2 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.1.6.1 25-May-2000  bouyer file psl.h was added on branch thorpej_scsipi on 2000-11-20 19:59:47 +0000
 1.3.10.1 23-Jun-2011  cherry Catchup with rmind-uvmplock merge.
 1.1 25-May-2000  is branches: 1.1.6;
Initial AmigaPPC commit.

Lots of the work was done by Adam Ciarcinsky.

Currently, this only supports CyberPPC boards by Phase 5. Blizzard PPC
expected later.

The kernel is useless but for demonstrating that it starts... especially
interupts, and most of MMU support, is not in yet. Builtin console works,
however, and you can look at the kernel startup messages.
 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 25-May-2000  bouyer file pte.h was added on branch thorpej_scsipi on 2000-11-20 19:59:48 +0000
 1.1 25-May-2000  is branches: 1.1.6;
Initial AmigaPPC commit.

Lots of the work was done by Adam Ciarcinsky.

Currently, this only supports CyberPPC boards by Phase 5. Blizzard PPC
expected later.

The kernel is useless but for demonstrating that it starts... especially
interupts, and most of MMU support, is not in yet. Builtin console works,
however, and you can look at the kernel startup messages.
 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 25-May-2000  bouyer file ptrace.h was added on branch thorpej_scsipi on 2000-11-20 19:59:48 +0000
 1.1 25-May-2000  is branches: 1.1.6;
Initial AmigaPPC commit.

Lots of the work was done by Adam Ciarcinsky.

Currently, this only supports CyberPPC boards by Phase 5. Blizzard PPC
expected later.

The kernel is useless but for demonstrating that it starts... especially
interupts, and most of MMU support, is not in yet. Builtin console works,
however, and you can look at the kernel startup messages.
 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 25-May-2000  bouyer file reg.h was added on branch thorpej_scsipi on 2000-11-20 19:59:48 +0000
 1.1 25-May-2000  is branches: 1.1.6;
Initial AmigaPPC commit.

Lots of the work was done by Adam Ciarcinsky.

Currently, this only supports CyberPPC boards by Phase 5. Blizzard PPC
expected later.

The kernel is useless but for demonstrating that it starts... especially
interupts, and most of MMU support, is not in yet. Builtin console works,
however, and you can look at the kernel startup messages.
 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 25-May-2000  bouyer file reloc.h was added on branch thorpej_scsipi on 2000-11-20 19:59:49 +0000
 1.2 05-Feb-2003  nakayama Replace machine/rnd.h with more appropriate name to share it
with cycle counter based microtime in kern/kern_microtime.c.
 1.1 11-Jun-2000  tsubai branches: 1.1.4; 1.1.6;
Add cpu_counter().
 1.1.6.2 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.1.6.1 11-Jun-2000  bouyer file rnd.h was added on branch thorpej_scsipi on 2000-11-20 19:59:49 +0000
 1.1.4.2 22-Jun-2000  minoura Sync w/ netbsd-1-5-base.
 1.1.4.1 11-Jun-2000  minoura file rnd.h was added on branch minoura-xpg4dl on 2000-06-22 16:59:02 +0000
 1.3 21-Jul-2009  phx Some improvements based on the work of Adam Ciarcinski.
Adapted everything to integrate with current 5.99 source.
Added an Amiga PIC for interrupt handling.

Status:
A CSPPC machine probably boots into single user, but only few devices
will attach without problems (e.g. keyboard, serial, parallel, floppy disk,
the RTC, CC graphics, sometimes Ariande ethernet and A4000 IDE.
BPPC support is prepared, but unfinished and untested (I don't own a BPPC).

A problem which has to be solved is interrupt acknowledging, which may happen
twice. Once in the amiga drivers from sys/arch/amiga/dev and then in the PPC
specific pic_amiga.c.
 1.2 09-Feb-2007  ad branches: 1.2.4;
Merge newlock2 to head.
 1.1 22-Dec-2006  ad branches: 1.1.2;
file rwlock.h was initially added on branch newlock2.
 1.1.2.1 22-Dec-2006  ad Pull in CPU specific stubs.
 1.2.4.2 26-Feb-2007  yamt sync with head.
 1.2.4.1 09-Feb-2007  yamt file rwlock.h was added on branch yamt-lazymbuf on 2007-02-26 09:05:49 +0000
 1.1 25-May-2000  is branches: 1.1.6;
Initial AmigaPPC commit.

Lots of the work was done by Adam Ciarcinsky.

Currently, this only supports CyberPPC boards by Phase 5. Blizzard PPC
expected later.

The kernel is useless but for demonstrating that it starts... especially
interupts, and most of MMU support, is not in yet. Builtin console works,
however, and you can look at the kernel startup messages.
 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 25-May-2000  bouyer file setjmp.h was added on branch thorpej_scsipi on 2000-11-20 19:59:49 +0000
 1.1 25-May-2000  is branches: 1.1.6;
Initial AmigaPPC commit.

Lots of the work was done by Adam Ciarcinsky.

Currently, this only supports CyberPPC boards by Phase 5. Blizzard PPC
expected later.

The kernel is useless but for demonstrating that it starts... especially
interupts, and most of MMU support, is not in yet. Builtin console works,
however, and you can look at the kernel startup messages.
 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 25-May-2000  bouyer file signal.h was added on branch thorpej_scsipi on 2000-11-20 19:59:50 +0000
 1.1 23-Jul-2014  alnsn branches: 1.1.2; 1.1.6;
Rename sljitarch.h to sljit_machdep.h.
 1.1.6.2 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.1.6.1 23-Jul-2014  tls file sljit_machdep.h was added on branch tls-maxphys on 2014-08-20 00:02:44 +0000
 1.1.2.2 10-Aug-2014  tls Rebase.
 1.1.2.1 23-Jul-2014  tls file sljit_machdep.h was added on branch tls-earlyentropy on 2014-08-10 06:53:50 +0000
 1.2 23-Jul-2014  alnsn Rename sljitarch.h to sljit_machdep.h.
 1.1 17-Nov-2013  alnsn branches: 1.1.2; 1.1.4; 1.1.6;
Enable sljit and bpfjit on powerpc.
 1.1.6.2 22-May-2014  yamt sync with head.

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

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.1.6.1 17-Nov-2013  yamt file sljitarch.h was added on branch yamt-pagecache on 2014-05-22 11:39:30 +0000
 1.1.4.2 18-May-2014  rmind sync with head
 1.1.4.1 17-Nov-2013  rmind file sljitarch.h was added on branch rmind-smpnet on 2014-05-18 17:44:55 +0000
 1.1.2.1 10-Aug-2014  tls Rebase.
 1.3 02-Mar-2010  matt Add missing <powerpc/FOO/spr.h> to a few files missed on the first pass.
Don't export <machine/spr.h> to userland, only <powerpc/spr.h>
 1.2 11-Dec-2005  christos branches: 1.2.78; 1.2.92; 1.2.98;
merge ktrace-lwp.
 1.1 17-Feb-2005  briggs branches: 1.1.2; 1.1.8; 1.1.10;
Install spr.h
 1.1.10.2 29-Apr-2005  kent sync with -current
 1.1.10.1 17-Feb-2005  kent file spr.h was added on branch kent-audio2 on 2005-04-29 11:28:00 +0000
 1.1.8.2 19-Mar-2005  yamt sync with head. xen and whitespace. xen part is not finished.
 1.1.8.1 17-Feb-2005  yamt file spr.h was added on branch yamt-km on 2005-03-19 08:32:45 +0000
 1.1.2.2 17-Feb-2005  skrll Sync with HEAD.
 1.1.2.1 17-Feb-2005  skrll file spr.h was added on branch ktrace-lwp on 2005-02-17 07:10:36 +0000
 1.2.98.1 30-Apr-2010  uebayasi Sync with HEAD.
 1.2.92.1 24-Oct-2010  jym Sync with HEAD
 1.2.78.1 11-Mar-2010  yamt sync with head
 1.2 17-Jul-2011  joerg Retire varargs.h support. Move machine/stdarg.h logic into MI
sys/stdarg.h and expect compiler to provide proper builtins, defaulting
to the GCC interface. lint still has a special fallback.
Reduce abuse of _BSD_VA_LIST_ by defining __va_list by default and
derive va_list as required by standards.
 1.1 25-May-2000  is branches: 1.1.6;
Initial AmigaPPC commit.

Lots of the work was done by Adam Ciarcinsky.

Currently, this only supports CyberPPC boards by Phase 5. Blizzard PPC
expected later.

The kernel is useless but for demonstrating that it starts... especially
interupts, and most of MMU support, is not in yet. Builtin console works,
however, and you can look at the kernel startup messages.
 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 25-May-2000  bouyer file stdarg.h was added on branch thorpej_scsipi on 2000-11-20 19:59:50 +0000
 1.2 21-Jul-2009  phx Some improvements based on the work of Adam Ciarcinski.
Adapted everything to integrate with current 5.99 source.
Added an Amiga PIC for interrupt handling.

Status:
A CSPPC machine probably boots into single user, but only few devices
will attach without problems (e.g. keyboard, serial, parallel, floppy disk,
the RTC, CC graphics, sometimes Ariande ethernet and A4000 IDE.
BPPC support is prepared, but unfinished and untested (I don't own a BPPC).

A problem which has to be solved is interrupt acknowledging, which may happen
twice. Once in the amiga drivers from sys/arch/amiga/dev and then in the PPC
specific pic_amiga.c.
 1.1 25-May-2000  is branches: 1.1.6; 1.1.134; 1.1.148;
Initial AmigaPPC commit.

Lots of the work was done by Adam Ciarcinsky.

Currently, this only supports CyberPPC boards by Phase 5. Blizzard PPC
expected later.

The kernel is useless but for demonstrating that it starts... especially
interupts, and most of MMU support, is not in yet. Builtin console works,
however, and you can look at the kernel startup messages.
 1.1.148.1 24-Oct-2010  jym Sync with HEAD
 1.1.134.1 19-Aug-2009  yamt sync with head.
 1.1.6.2 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.1.6.1 25-May-2000  bouyer file svr4_machdep.h was added on branch thorpej_scsipi on 2000-11-20 19:59:50 +0000
 1.2 21-Jul-2009  phx Some improvements based on the work of Adam Ciarcinski.
Adapted everything to integrate with current 5.99 source.
Added an Amiga PIC for interrupt handling.

Status:
A CSPPC machine probably boots into single user, but only few devices
will attach without problems (e.g. keyboard, serial, parallel, floppy disk,
the RTC, CC graphics, sometimes Ariande ethernet and A4000 IDE.
BPPC support is prepared, but unfinished and untested (I don't own a BPPC).

A problem which has to be solved is interrupt acknowledging, which may happen
twice. Once in the amiga drivers from sys/arch/amiga/dev and then in the PPC
specific pic_amiga.c.
 1.1 25-May-2000  is branches: 1.1.6; 1.1.134;
Initial AmigaPPC commit.

Lots of the work was done by Adam Ciarcinsky.

Currently, this only supports CyberPPC boards by Phase 5. Blizzard PPC
expected later.

The kernel is useless but for demonstrating that it starts... especially
interupts, and most of MMU support, is not in yet. Builtin console works,
however, and you can look at the kernel startup messages.
 1.1.134.1 19-Aug-2009  yamt sync with head.
 1.1.6.2 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.1.6.1 25-May-2000  bouyer file trap.h was added on branch thorpej_scsipi on 2000-11-20 19:59:51 +0000
 1.7 21-Jul-2009  phx Some improvements based on the work of Adam Ciarcinski.
Adapted everything to integrate with current 5.99 source.
Added an Amiga PIC for interrupt handling.

Status:
A CSPPC machine probably boots into single user, but only few devices
will attach without problems (e.g. keyboard, serial, parallel, floppy disk,
the RTC, CC graphics, sometimes Ariande ethernet and A4000 IDE.
BPPC support is prepared, but unfinished and untested (I don't own a BPPC).

A problem which has to be solved is interrupt acknowledging, which may happen
twice. Once in the amiga drivers from sys/arch/amiga/dev and then in the PPC
specific pic_amiga.c.
 1.6 20-Jan-2008  joerg branches: 1.6.10;
Now that __HAVE_TIMECOUNTER and __HAVE_GENERIC_TODR are invariants,
remove the conditionals and the code associated with the undef case.
 1.5 07-Jan-2008  joerg Shared clock.c with amiga, so it supports generic time counter.
 1.4 17-Oct-2007  garbled branches: 1.4.2; 1.4.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.3 14-Jul-2007  ad branches: 1.3.10;
Generic soft interrupts are mandatory.
 1.2 14-Jan-2001  thorpej branches: 1.2.38; 1.2.80; 1.2.88;
Rename __GENERIC_SOFT_INTERRUPTS to __HAVE_GENERIC_SOFT_INTERRUPTS,
and place the definition in <machine/types.h>. This can now be used
as a flag to indicate whether or not <machine/intr.h> can be included
to get the generic soft interrupt API.
 1.1 25-May-2000  is branches: 1.1.6;
Initial AmigaPPC commit.

Lots of the work was done by Adam Ciarcinsky.

Currently, this only supports CyberPPC boards by Phase 5. Blizzard PPC
expected later.

The kernel is useless but for demonstrating that it starts... especially
interupts, and most of MMU support, is not in yet. Builtin console works,
however, and you can look at the kernel startup messages.
 1.1.6.3 18-Jan-2001  bouyer Sync with head (for UBC+NFS fixes, mostly).
 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 25-May-2000  bouyer file types.h was added on branch thorpej_scsipi on 2000-11-20 19:59:51 +0000
 1.2.88.1 03-Oct-2007  garbled Sync with HEAD
 1.2.80.1 15-Jul-2007  ad Sync with head.
 1.2.38.2 21-Jan-2008  yamt sync with head
 1.2.38.1 03-Sep-2007  yamt sync with head.
 1.3.10.3 23-Mar-2008  matt sync with HEAD
 1.3.10.2 09-Jan-2008  matt sync with HEAD
 1.3.10.1 06-Nov-2007  matt sync with HEAD
 1.4.8.2 23-Jan-2008  bouyer Sync with HEAD.
 1.4.8.1 08-Jan-2008  bouyer Sync with HEAD
 1.4.2.1 18-Feb-2008  mjf Sync with HEAD.
 1.6.10.1 19-Aug-2009  yamt sync with head.
 1.2 17-Jul-2011  joerg Retire varargs.h support. Move machine/stdarg.h logic into MI
sys/stdarg.h and expect compiler to provide proper builtins, defaulting
to the GCC interface. lint still has a special fallback.
Reduce abuse of _BSD_VA_LIST_ by defining __va_list by default and
derive va_list as required by standards.
 1.1 25-May-2000  is branches: 1.1.6;
Initial AmigaPPC commit.

Lots of the work was done by Adam Ciarcinsky.

Currently, this only supports CyberPPC boards by Phase 5. Blizzard PPC
expected later.

The kernel is useless but for demonstrating that it starts... especially
interupts, and most of MMU support, is not in yet. Builtin console works,
however, and you can look at the kernel startup messages.
 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 25-May-2000  bouyer file varargs.h was added on branch thorpej_scsipi on 2000-11-20 19:59:51 +0000
 1.7 20-Jun-2011  matt Don't export USER_SR if _MODULE is defined.
Add a common <powerpc/vmparam.h> like we have for <powerpc/pmap.h>
 1.6 03-Feb-2003  matt branches: 1.6.140;
Rename PPC_MPC6XX to PPC_OEA (and any mpc6xx reference to oea).
 1.5 10-Dec-2002  thorpej Use __LDPGSZ (which must be == USRTEXT) as the text address for a.out
executables, and eliminate the USRTEXT constant, which was only used
by the a.out exec code.
 1.4 15-Nov-2001  soren MAXSLP is defined to be a machine-independent scheduling parameter,
so move it into sys/param.h.
 1.3 01-May-2001  thorpej branches: 1.3.2;
Per discussion w/ chuck and chuck, restructure the md page stuff
to use a structure called "vm_page_md", and use __HAVE_VM_PAGE_MD
and __HAVE_PMAP_PHYSSEG.
 1.2 29-Apr-2001  thorpej Add a VM_MDPAGE_MEMBERS macro that defines pmap-specific data for
each vm_page structure. Add a VM_MDPAGE_INIT() macro to init this
data when pages are initialized by UVM. These macros are mandatory,
but ports may #define them to nothing if they are not needed/used.

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

Use all this stuff to eliminate a lot of extra work in the Alpha
pmap module (it's smaller and faster now). Changes to other pmap
modules will follow.
 1.1 25-May-2000  is branches: 1.1.6; 1.1.8;
Initial AmigaPPC commit.

Lots of the work was done by Adam Ciarcinsky.

Currently, this only supports CyberPPC boards by Phase 5. Blizzard PPC
expected later.

The kernel is useless but for demonstrating that it starts... especially
interupts, and most of MMU support, is not in yet. Builtin console works,
however, and you can look at the kernel startup messages.
 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 25-May-2000  bouyer file vmparam.h was added on branch thorpej_scsipi on 2000-11-20 19:59:52 +0000
 1.3.2.1 10-Jan-2002  thorpej Sync kqueue branch with -current.
 1.6.140.1 23-Jun-2011  cherry Catchup with rmind-uvmplock merge.
 1.2 11-Dec-2005  christos merge ktrace-lwp.
 1.1 08-May-2004  kleink branches: 1.1.2;
Factor out W{CHAR,INT}_{MAX,MIN} into their own header file.
 1.1.2.4 21-Sep-2004  skrll Fix the sync with head I botched.
 1.1.2.3 18-Sep-2004  skrll Sync with HEAD.
 1.1.2.2 03-Aug-2004  skrll Sync with HEAD
 1.1.2.1 08-May-2004  skrll file wchar_limits.h was added on branch ktrace-lwp on 2004-08-03 10:32:09 +0000

RSS XML Feed