Home | History | Annotate | only in /src/sys/arch/powerpc/include/booke
History log of /src/sys/arch/powerpc/include/booke
RevisionDateAuthorComments
 1.1 09-Mar-2010  matt branches: 1.1.2; 1.1.6; 1.1.8;
Add initial versions of these for BookE.
 1.1.8.4 07-Jan-2011  matt Fix cut & paste error.
 1.1.8.3 07-Jan-2011  matt Add usr/include/powerpc/booke and usr/include/powerpc/booke/spr.h
 1.1.8.2 07-Jan-2011  matt Descend into the booke include diretory
 1.1.8.1 09-Mar-2010  matt file Makefile was added on branch matt-nb5-pq3 on 2011-01-07 02:11:36 +0000
 1.1.6.2 30-Apr-2010  uebayasi Sync with HEAD.
 1.1.6.1 09-Mar-2010  uebayasi file Makefile was added on branch uebayasi-xip on 2010-04-30 14:39:43 +0000
 1.1.2.2 11-Mar-2010  yamt sync with head
 1.1.2.1 09-Mar-2010  yamt file Makefile was added on branch yamt-nfs-mp on 2010-03-11 15:02:50 +0000
 1.2 01-Apr-2010  matt Change booke_intr.h to intr.h since <powerpc/booke/intr.h> will be unique
enough.
 1.1 09-Mar-2010  matt branches: 1.1.2; 1.1.4;
Add initial versions of these for BookE.
 1.1.4.1 30-May-2010  rmind sync with head
 1.1.2.3 11-Aug-2010  yamt sync with head.
 1.1.2.2 11-Mar-2010  yamt sync with head
 1.1.2.1 09-Mar-2010  yamt file booke_intr.h was added on branch yamt-nfs-mp on 2010-03-11 15:02:50 +0000
 1.21 06-Jul-2020  rin Include missing opt_multiprocessor.h.
 1.20 07-Apr-2019  thorpej Detangle some of the PowerPC CPU configuration spaghetti.
 1.19 19-Apr-2018  christos branches: 1.19.2;
s/static inline/static __inline/g for consistency.
 1.18 16-Jun-2015  matt branches: 1.18.16;
This needs to define PRIxPTE too.
 1.17 02-Oct-2012  christos branches: 1.17.14;
move common tlb stuff to uvm
 1.16 01-Aug-2012  matt branches: 1.16.2;
Add a machine splhist command to give (a incomplete) spl history.
(only the most recent are going to be accurate).

splraise(6) from 0 at 549214603
splraise(7) from 6 at 549214643 (+40)
splx(6) from 7 at 549214691 (+48)
splx(0) from 6 at 549214730 (+39)
 1.15 01-Aug-2012  matt Export dump_trapframe.
 1.14 29-Jul-2012  matt Add command line processing from uboot
bootm $loadaddr [opts] [device]
where opts is -[advqs] and device is the boot device.
cpu_rootconf will now wait a bit for devices to appear until the boot device
appears.
 1.13 27-Jul-2012  matt Fix -fno-common fallout.
 1.12 30-Jun-2011  matt branches: 1.12.2;
Modify mapiodev to take a third argument indicating whether the space
should be prefetchable (true) or not (false).
 1.11 29-Jun-2011  matt Declare cpu_hatch_data
 1.10 23-Jun-2011  matt Switch to using the common <common/pmap/tlb/tlb.h>
 1.9 20-Jun-2011  matt Explicitly include <powerpc/psl.h>
 1.8 15-Jun-2011  matt Move booke_fixup_stubs() to fixup.c and rename it to cpu_fixup_stubs().
This makes it easier for other PPC variants to use it.
 1.7 14-Jun-2011  matt Take the fast softint support in e500_intr.c and make generic so that it can
be used to provide fast softint for other interrupt implementations.
 1.6 05-Jun-2011  matt Remove <machine/atomic.h>; use <sys/atomic.h> instead.
Add <powerpc/cpuset.h> (for mpc85xx pmap).
Add some initial MP code for mpc85xx
Rework ipi code to be common across all ppcs
Change PPC to keep curlwp in %r13 while in the kernel.
Move astpending from cpu_info to mdlwp
Improve cpu_need_resched to be more MP friendly.
 1.5 17-Feb-2011  matt branches: 1.5.2; 1.5.4;
add begging of single step support. Since BookE doesn't support PSL_SE, if
userret find PSL_SE set in SRR1, it will call booke_sstep to setup the
debug registers.
 1.4 16-Feb-2011  matt Add little endian bus_space_tags.
Note highest memory in cpu_softc.
 1.3 08-Feb-2011  matt Allow code to allow inclusive/exclusive locators for subdevices.
(uses on mpc85xx to match on SVRs or not match on SVRs).
 1.2 18-Jan-2011  matt branches: 1.2.2;
Add support for BookE Freescale MPC85xx (e500 core) processors.
Add fast softint support for PowerPC (though only booke uses it).
Redo FPU/VEC support and add e500 SPE support.
Rework trap/intrs to use a common trapframe format.
Support SOFTFLOAT (no hardfloat or fpu emulation) for BookE.
 1.1 07-Jan-2011  matt branches: 1.1.2; 1.1.4;
file cpuvar.h was initially added on branch matt-nb5-pq3.
 1.1.4.1 06-Jun-2011  jruoho Sync with HEAD.
 1.1.2.4 14-Oct-2011  matt Sync with current pulling P2020 and other newer processor support.
 1.1.2.3 02-Aug-2011  matt Pull in changes from -current to get ehci at cpunode working.
 1.1.2.2 17-Jan-2011  matt Add SPE (signal processing engine) support for mpc85xx/booke. Think of it
as AltiVec-lite (really lite). Genercize AltiVec support so that it could
the same interface could support SPE as well. Rework the FPU support along
the same lines. Move the __asm() to their own XXX_subr.S (altivec, fpu, spe).
 1.1.2.1 07-Jan-2011  matt Add mpc85xx support for netbsd-5 (with some incompatible kernel changes).
 1.2.2.3 05-Mar-2011  bouyer Sync with HEAD
 1.2.2.2 17-Feb-2011  bouyer Sync with HEAD
 1.2.2.1 08-Feb-2011  bouyer Sync with HEAD
 1.5.4.1 23-Jun-2011  cherry Catchup with rmind-uvmplock merge.
 1.5.2.3 12-Jun-2011  rmind sync with head
 1.5.2.2 05-Mar-2011  rmind sync with head
 1.5.2.1 17-Feb-2011  rmind file cpuvar.h was added on branch rmind-uvmplock on 2011-03-05 20:51:37 +0000
 1.12.2.1 30-Oct-2012  yamt sync with head
 1.16.2.2 03-Dec-2017  jdolecek update from HEAD
 1.16.2.1 20-Nov-2012  tls Resync to 2012-11-19 00:00:00 UTC
 1.17.14.1 22-Sep-2015  skrll Sync with HEAD
 1.18.16.1 22-Apr-2018  pgoyette Sync with HEAD
 1.19.2.1 10-Jun-2019  christos Sync with HEAD
 1.17 24-May-2022  andvar fix various typos in comment, documentation and log messages.
 1.16 27-Dec-2014  nonaka Added SPI register definitions.
 1.15 27-Dec-2014  nonaka Preliminary support for P1023.
 1.14 26-Jul-2012  matt branches: 1.14.2; 1.14.16;
Add ESDHC DCR definitions
 1.13 18-Jul-2012  matt Add P1025 support to the PCI truth tables.
P1025 only has two PCIe ports, not 3.
 1.12 17-Jul-2012  matt The ETSEC on the P1025 has been moved/split so the MDIO stayed in the same
place but each ETSEC has been split into two virtual halves (G0 and G1) and
each one has a new different base address.
For some reason, tsec1 connects to phy 2 and tsec2 connects to phy 1.
Adjust config file to match
 1.11 15-Jul-2012  matt Add support for the Freescale TWR-P1025 evaluation board and the P1025/P1016
QorIQ processors. XXX tsec isn't working yet on the TWR-P1025.
 1.10 02-Aug-2011  matt branches: 1.10.2;
Add some more DDR register definitions
 1.9 30-Jun-2011  matt Add LSOR register
 1.8 09-Jun-2011  matt Correct definitions of USB_SNOOP registers. Add USB_CONTROL register.
 1.7 28-May-2011  matt branches: 1.7.2;
Add Boot Page PTR Register definitions.
 1.6 02-May-2011  matt Add LBC FCM defintions (for NAND).
 1.5 16-Mar-2011  matt Fix various nits related to P2020 support.
 1.4 16-Feb-2011  matt branches: 1.4.2;
Add USB_SNOOP1/2 related definitions
 1.3 08-Feb-2011  matt Add some P2020 / MPC856x definitions.
 1.2 18-Jan-2011  matt branches: 1.2.2;
Add support for BookE Freescale MPC85xx (e500 core) processors.
Add fast softint support for PowerPC (though only booke uses it).
Redo FPU/VEC support and add e500 SPE support.
Rework trap/intrs to use a common trapframe format.
Support SOFTFLOAT (no hardfloat or fpu emulation) for BookE.
 1.1 07-Jan-2011  matt branches: 1.1.2; 1.1.4;
file e500reg.h was initially added on branch matt-nb5-pq3.
 1.1.4.1 06-Jun-2011  jruoho Sync with HEAD.
 1.1.2.3 14-Oct-2011  matt Sync with current pulling P2020 and other newer processor support.
 1.1.2.2 02-Aug-2011  matt Pull in changes from -current to get ehci at cpunode working.
 1.1.2.1 07-Jan-2011  matt Add mpc85xx support for netbsd-5 (with some incompatible kernel changes).
 1.2.2.2 17-Feb-2011  bouyer Sync with HEAD
 1.2.2.1 08-Feb-2011  bouyer Sync with HEAD
 1.4.2.5 12-Jun-2011  rmind sync with head
 1.4.2.4 31-May-2011  rmind sync with head
 1.4.2.3 21-Apr-2011  rmind sync with head
 1.4.2.2 05-Mar-2011  rmind sync with head
 1.4.2.1 16-Feb-2011  rmind file e500reg.h was added on branch rmind-uvmplock on 2011-03-05 20:51:37 +0000
 1.7.2.1 23-Jun-2011  cherry Catchup with rmind-uvmplock merge.
 1.10.2.1 30-Oct-2012  yamt sync with head
 1.14.16.1 06-Apr-2015  skrll Sync with HEAD
 1.14.2.1 03-Dec-2017  jdolecek update from HEAD
 1.9 06-Jul-2020  rin Style and cosmetic changes. No binary changes intended.
 1.8 06-Jul-2020  rin e500_cpunode_submatch() should be declared regardless of _KERNEL_OPT.
 1.7 27-Nov-2012  matt Make the 85xx get closer to spinning up the secondary CPUs.
Don't assume TLB1[0] has the mapping for VA/PA 0.
Make sure the TLB1 entries that map physical memory have the M (memory
coherent) bit set.
 1.6 27-Jul-2012  matt branches: 1.6.2;
Fix -fno-common fallout.
 1.5 29-Mar-2012  matt Add e500_tlb_minimize prototype.
 1.4 29-Jun-2011  matt branches: 1.4.2; 1.4.6; 1.4.8;
Add some e500 MP prototypes.
 1.3 05-Jun-2011  matt Remove <machine/atomic.h>; use <sys/atomic.h> instead.
Add <powerpc/cpuset.h> (for mpc85xx pmap).
Add some initial MP code for mpc85xx
Rework ipi code to be common across all ppcs
Change PPC to keep curlwp in %r13 while in the kernel.
Move astpending from cpu_info to mdlwp
Improve cpu_need_resched to be more MP friendly.
 1.2 18-Jan-2011  matt branches: 1.2.4; 1.2.6;
Add support for BookE Freescale MPC85xx (e500 core) processors.
Add fast softint support for PowerPC (though only booke uses it).
Redo FPU/VEC support and add e500 SPE support.
Rework trap/intrs to use a common trapframe format.
Support SOFTFLOAT (no hardfloat or fpu emulation) for BookE.
 1.1 07-Jan-2011  matt branches: 1.1.2; 1.1.4;
file e500var.h was initially added on branch matt-nb5-pq3.
 1.1.4.1 06-Jun-2011  jruoho Sync with HEAD.
 1.1.2.2 14-Oct-2011  matt Sync with current pulling P2020 and other newer processor support.
 1.1.2.1 07-Jan-2011  matt Add mpc85xx support for netbsd-5 (with some incompatible kernel changes).
 1.2.6.1 23-Jun-2011  cherry Catchup with rmind-uvmplock merge.
 1.2.4.3 12-Jun-2011  rmind sync with head
 1.2.4.2 05-Mar-2011  rmind sync with head
 1.2.4.1 18-Jan-2011  rmind file e500var.h was added on branch rmind-uvmplock on 2011-03-05 20:51:37 +0000
 1.4.8.1 09-May-2012  riz Pull up following revision(s) (requested by matt in ticket #241):
sys/arch/powerpc/conf/kern-mb.ldscript: revision 1.1
sys/arch/powerpc/include/booke/pmap.h: revision 1.9
sys/arch/powerpc/booke/e500_tlb.c: revision 1.8
sys/arch/powerpc/conf/files.powerpc: revision 1.83
sys/arch/powerpc/booke/booke_pmap.c: revision 1.13
sys/arch/powerpc/include/booke/e500var.h: revision 1.5
sys/arch/evbppc/mpc85xx/machdep.c: revision 1.23
Add ldscript which aligns .data to a 1MB boundary. (used for testing)
Add PMAP_MINIMALTLB defflag
Add vsize_t to pmap_md_{un,}map_poolpage.
Add pmap_kvptefill prototype.
Slightly change pmap_bootstrap prototype.
Add e500_tlb_minimize prototype.
Add support PMAP_MINIMALTLB option. This changes the default use of TLB1
entries to map all of physical memory to using two TLB1 entries, one for
mapping text and one for data. The rest of memory is mapped using the
page table which is updated as needed. This is used to trap memory
corruption issues.
Add support for PMAP_MINIMALTLB.
 1.4.6.1 05-Apr-2012  mrg sync to latest -current.
 1.4.2.3 16-Jan-2013  yamt sync with (a bit old) head
 1.4.2.2 30-Oct-2012  yamt sync with head
 1.4.2.1 17-Apr-2012  yamt sync with head
 1.6.2.1 25-Feb-2013  tls resync with head
 1.12 05-Nov-2024  andvar s/UCP/UDP/ in comments.
 1.11 26-Feb-2024  andvar branches: 1.11.2;
s/Transmi /Transmit / in comments.
 1.10 11-May-2022  andvar fix various typos in comments.
 1.9 19-Sep-2021  andvar fix various typos in comments, messages and documentation.
 1.8 26-Feb-2015  nonaka Added some register definitions for multi-queue.
 1.7 26-Feb-2015  nonaka fix offset value of RBASEn.
 1.6 17-Feb-2015  nonaka Added Interrupt coalescing support.
 1.5 17-Jul-2012  matt branches: 1.5.2; 1.5.16;
The ETSEC on the P1025 has been moved/split so the MDIO stayed in the same
place but each ETSEC has been split into two virtual halves (G0 and G1) and
each one has a new different base address.
For some reason, tsec1 connects to phy 2 and tsec2 connects to phy 1.
Adjust config file to match
 1.4 07-May-2012  matt Preserve some MACCFG2 bits
 1.3 09-Jun-2011  matt branches: 1.3.2; 1.3.6; 1.3.8;
Fix ATTR register definitions
 1.2 18-Jan-2011  matt branches: 1.2.4; 1.2.6;
Add support for BookE Freescale MPC85xx (e500 core) processors.
Add fast softint support for PowerPC (though only booke uses it).
Redo FPU/VEC support and add e500 SPE support.
Rework trap/intrs to use a common trapframe format.
Support SOFTFLOAT (no hardfloat or fpu emulation) for BookE.
 1.1 07-Jan-2011  matt branches: 1.1.2; 1.1.4;
file etsecreg.h was initially added on branch matt-nb5-pq3.
 1.1.4.1 06-Jun-2011  jruoho Sync with HEAD.
 1.1.2.1 07-Jan-2011  matt Add mpc85xx support for netbsd-5 (with some incompatible kernel changes).
 1.2.6.1 23-Jun-2011  cherry Catchup with rmind-uvmplock merge.
 1.2.4.3 12-Jun-2011  rmind sync with head
 1.2.4.2 05-Mar-2011  rmind sync with head
 1.2.4.1 18-Jan-2011  rmind file etsecreg.h was added on branch rmind-uvmplock on 2011-03-05 20:51:37 +0000
 1.3.8.1 17-May-2012  riz Pull up following revision(s) (requested by matt in ticket #245):
sys/arch/powerpc/booke/dev/pq3etsec.c: revision 1.13
sys/arch/powerpc/include/booke/etsecreg.h: revision 1.4
sys/arch/powerpc/booke/dev/pq3etsec.c: revision 1.11
sys/arch/powerpc/booke/dev/pq3etsec.c: revision 1.12
Read maccfg1/maccfg2/ecntrl so we can preserve bits we don't change (like
GMII mode).
Don't use the current value of maccfg2.
Preserve some MACCFG2 bits
 1.3.6.1 02-Jun-2012  mrg sync to latest -current.
 1.3.2.2 30-Oct-2012  yamt sync with head
 1.3.2.1 23-May-2012  yamt sync with head.
 1.5.16.1 06-Apr-2015  skrll Sync with HEAD
 1.5.2.1 03-Dec-2017  jdolecek update from HEAD
 1.11.2.1 02-Aug-2025  perseant Sync with HEAD
 1.13 12-Sep-2022  rin PR port-powerpc/56922

__HAVE_FAST_SOFTINTS is broken for powerpc.
Disable it temporarily also for booke.
 1.12 23-Nov-2019  ad cpu_need_resched():

- Remove all code that should be MI, leaving the bare minimum under arch/.
- Make the required actions very explicit.
- Pass in LWP pointer for convenience.
- When a trap is required on another CPU, have the IPI set it locally.
- Expunge cpu_did_resched().
 1.11 19-Apr-2018  christos branches: 1.11.2;
s/static inline/static __inline/g for consistency.
 1.10 19-Oct-2016  nonaka branches: 1.10.14;
Added MSI/MSI-X and interrupt_distribute(9) support for powerpc.
 1.9 23-Jan-2015  nonaka branches: 1.9.2;
ddb MP support
 1.8 19-May-2014  rmind branches: 1.8.4;
Implement MI IPI interface with cross-call support.
 1.7 29-Mar-2014  christos branches: 1.7.2;
make pci_intr_string and eisa_intr_string take a buffer and a length
instead of relying in local static storage.
 1.6 21-Jun-2011  matt branches: 1.6.2; 1.6.12; 1.6.16;
forward declare cpu_info and trapframe.
 1.5 15-Jun-2011  matt Add IST_PULSE and intr_typename (converts IST_* to a name).
 1.4 05-Jun-2011  matt Remove <machine/atomic.h>; use <sys/atomic.h> instead.
Add <powerpc/cpuset.h> (for mpc85xx pmap).
Add some initial MP code for mpc85xx
Rework ipi code to be common across all ppcs
Change PPC to keep curlwp in %r13 while in the kernel.
Move astpending from cpu_info to mdlwp
Improve cpu_need_resched to be more MP friendly.
 1.3 08-Feb-2011  matt branches: 1.3.2;
Add IPI/cpu_send_ipi to intrsw.
 1.2 18-Jan-2011  matt branches: 1.2.2;
Add support for BookE Freescale MPC85xx (e500 core) processors.
Add fast softint support for PowerPC (though only booke uses it).
Redo FPU/VEC support and add e500 SPE support.
Rework trap/intrs to use a common trapframe format.
Support SOFTFLOAT (no hardfloat or fpu emulation) for BookE.
 1.1 01-Apr-2010  matt branches: 1.1.2; 1.1.4; 1.1.6; 1.1.8; 1.1.10;
Change booke_intr.h to intr.h since <powerpc/booke/intr.h> will be unique
enough.
 1.1.10.1 06-Jun-2011  jruoho Sync with HEAD.
 1.1.8.3 14-Oct-2011  matt Sync with current pulling P2020 and other newer processor support.
 1.1.8.2 07-Jan-2011  matt Add mpc85xx support for netbsd-5 (with some incompatible kernel changes).
 1.1.8.1 01-Apr-2010  matt file intr.h was added on branch matt-nb5-pq3 on 2011-01-07 01:26:20 +0000
 1.1.6.2 11-Aug-2010  yamt sync with head.
 1.1.6.1 01-Apr-2010  yamt file intr.h was added on branch yamt-nfs-mp on 2010-08-11 22:52:34 +0000
 1.1.4.4 12-Jun-2011  rmind sync with head
 1.1.4.3 05-Mar-2011  rmind sync with head
 1.1.4.2 30-May-2010  rmind sync with head
 1.1.4.1 01-Apr-2010  rmind file intr.h was added on branch rmind-uvmplock on 2010-05-30 05:17:03 +0000
 1.1.2.2 30-Apr-2010  uebayasi Sync with HEAD.
 1.1.2.1 01-Apr-2010  uebayasi file intr.h was added on branch uebayasi-xip on 2010-04-30 14:39:43 +0000
 1.2.2.1 08-Feb-2011  bouyer Sync with HEAD
 1.3.2.1 23-Jun-2011  cherry Catchup with rmind-uvmplock merge.
 1.6.16.1 18-May-2014  rmind sync with head
 1.6.12.2 03-Dec-2017  jdolecek update from HEAD
 1.6.12.1 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.6.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.7.2.1 10-Aug-2014  tls Rebase.
 1.8.4.2 05-Dec-2016  skrll Sync with HEAD
 1.8.4.1 06-Apr-2015  skrll Sync with HEAD
 1.9.2.1 04-Nov-2016  pgoyette Sync with HEAD
 1.10.14.1 22-Apr-2018  pgoyette Sync with HEAD
 1.11.2.1 08-Apr-2020  martin Merge changes from current as of 20200406
 1.2 30-Jun-2011  matt branches: 1.2.2;
Add prototypes for lbc_* routines.
 1.1 28-May-2011  matt branches: 1.1.2; 1.1.6;
Move obio softc definitions to a header so it can use by children of obio.
 1.1.6.2 06-Jun-2011  jruoho Sync with HEAD.
 1.1.6.1 28-May-2011  jruoho file obiovar.h was added on branch jruoho-x86intr on 2011-06-06 09:06:28 +0000
 1.1.2.2 31-May-2011  rmind sync with head
 1.1.2.1 28-May-2011  rmind file obiovar.h was added on branch rmind-uvmplock on 2011-05-31 03:04:14 +0000
 1.2.2.2 26-Jul-2011  matt Back port improvements from -HEAD.
 1.2.2.1 30-Jun-2011  matt file obiovar.h was added on branch matt-nb5-pq3 on 2011-07-26 03:35:25 +0000
 1.7 27-Dec-2014  nonaka Preliminary support for P1023.
 1.6 15-Jul-2012  matt branches: 1.6.2; 1.6.16;
Add support for the Freescale TWR-P1025 evaluation board and the P1025/P1016
QorIQ processors. XXX tsec isn't working yet on the TWR-P1025.
 1.5 02-Aug-2011  matt branches: 1.5.2;
MPC8544 don't any onchip irqs of 20/21
 1.4 27-May-2011  matt Fix P20x0_ONCHIPBITMAP to reflect latest P2020RM.
 1.3 08-Feb-2011  matt Add MPC8555/41, MPC8568/67, and P2020 variations.
 1.2 18-Jan-2011  matt branches: 1.2.2;
Add support for BookE Freescale MPC85xx (e500 core) processors.
Add fast softint support for PowerPC (though only booke uses it).
Redo FPU/VEC support and add e500 SPE support.
Rework trap/intrs to use a common trapframe format.
Support SOFTFLOAT (no hardfloat or fpu emulation) for BookE.
 1.1 01-Apr-2010  matt branches: 1.1.2; 1.1.4; 1.1.6; 1.1.8; 1.1.10;
OpenPIC register defintions used by e500 booke.
 1.1.10.1 06-Jun-2011  jruoho Sync with HEAD.
 1.1.8.3 14-Oct-2011  matt Sync with current pulling P2020 and other newer processor support.
 1.1.8.2 07-Jan-2011  matt Add mpc85xx support for netbsd-5 (with some incompatible kernel changes).
 1.1.8.1 01-Apr-2010  matt file openpicreg.h was added on branch matt-nb5-pq3 on 2011-01-07 01:26:20 +0000
 1.1.6.2 11-Aug-2010  yamt sync with head.
 1.1.6.1 01-Apr-2010  yamt file openpicreg.h was added on branch yamt-nfs-mp on 2010-08-11 22:52:34 +0000
 1.1.4.4 31-May-2011  rmind sync with head
 1.1.4.3 05-Mar-2011  rmind sync with head
 1.1.4.2 30-May-2010  rmind sync with head
 1.1.4.1 01-Apr-2010  rmind file openpicreg.h was added on branch rmind-uvmplock on 2010-05-30 05:17:03 +0000
 1.1.2.2 30-Apr-2010  uebayasi Sync with HEAD.
 1.1.2.1 01-Apr-2010  uebayasi file openpicreg.h was added on branch uebayasi-xip on 2010-04-30 14:39:43 +0000
 1.2.2.1 08-Feb-2011  bouyer Sync with HEAD
 1.5.2.1 30-Oct-2012  yamt sync with head
 1.6.16.1 06-Apr-2015  skrll Sync with HEAD
 1.6.2.1 03-Dec-2017  jdolecek update from HEAD
 1.25 28-Sep-2023  skrll #define<space> -> #define<tab> for consistency
 1.24 20-Dec-2020  skrll Support __HAVE_PMAP_PV_TRACK in sys/uvm/pmap based pmaps (aka common pmap)
 1.23 07-Aug-2020  skrll branches: 1.23.2;
Provide a pmap_segtab_deactivate for symmetry with pmap_segtab_activate
and use it in pmap_deactivate

Call pmap_md_xtab_{,de}activate from pmap_segtab_{,de}activate to be used
for PMAP_HWPAGEWALKER and any caches ops that might be required.

Provide empty (for now) pmap_md_xtab_{,de}activate functions on the
platforms that use sys/uvm/pmap
 1.22 06-Jul-2020  rin Style and cosmetic changes. No binary changes intended.
 1.21 08-Apr-2020  skrll Simplify #ifdefs
 1.20 12-Mar-2020  thorpej If we're going to consult the MULTIPROCESSOR option, we should pull in
"opt_multiprocessor.h".
 1.19 11-Mar-2020  thorpej With DEBUG defined, it's possible to execute a TLB-vs-segmap consistency
check from a (soft) interrupt handler. But if a platform does not otherwise
require the pmap_tlb_miss_lock, then where will be a brief window of
inconsistency that, while harmless, will still fire an assertion in the
consistency check.

Fix this with the following changes:
1- Refactor the pmap_tlb_miss_lock into MI code and rename it from
pmap_tlb_miss_lock_{enter,exit}() to pmap_tlb_miss_lock_{enter,exit}().
MD code can still define the "md" hooks as necessary, and if so, will
override the common implementation.
2- Provde a pmap_bootstrap_common() function to perform common pmap bootstrap
operations, namely initializing the pmap_tlb_miss_lock if it's needed.
If MD code overrides the implementation, it's responsible for initializing
its own lock.
3- Call pmap_bootstrap_common() from the mips, powerpc booke, and riscv
pmap_bootstrap() routines. (This required adding one for riscv.)
4- Switch powerpc booke to the common pmap_tlb_miss_lock.
5- Enable pmap_tlb_miss_lock if DEBUG is defined, even if it's not otherwise
required.

PR port-mips/55062 (Failed assertion in pmap_md_tlb_check_entry())
 1.18 19-Apr-2018  christos branches: 1.18.2;
s/static inline/static __inline/g for consistency.
 1.17 24-Dec-2016  cherry branches: 1.17.14;
Tell mpc85xx about uvm_hotplug(9)

Should fix the evbppc build breakage.
 1.16 11-Jul-2016  matt branches: 1.16.2;
Adapt to common pmap changes.
 1.15 26-Jan-2015  nonaka Avoid race condition between PTE update and TLB miss walk.
 1.14 03-Apr-2014  matt branches: 1.14.6;
Add PMAP_TLB_FLUSH_ASID_ON_RESET define
 1.13 18-Mar-2014  riastradh Merge riastradh-drm2 to HEAD.
 1.12 17-Jul-2013  matt kcpuset_t changes for the pmap and removal of __cpuset_t
 1.11 02-Oct-2012  christos branches: 1.11.2; 1.11.8;
move common tlb stuff to uvm
 1.10 09-Jul-2012  matt branches: 1.10.2;
Use pmap_segtab_t
 1.9 29-Mar-2012  matt Add vsize_t to pmap_md_{un,}map_poolpage.
Add pmap_kvptefill prototype.
Slightly change pmap_bootstrap prototype.
 1.8 30-Jun-2011  matt branches: 1.8.2; 1.8.6; 1.8.8;
Modify mapiodev to take a third argument indicating whether the space
should be prefetchable (true) or not (false).
 1.7 23-Jun-2011  matt Move some MD parts back to the booke pmap.c. Cleanup initialization a bit.
 1.6 20-Jun-2011  matt PowerPC now exports a common view of cpu.h, vmparam.h and pmap.h
when building a MODULAR kernel or compiling _MODULE.
It should be noted that MODULAR or _MODULE export a view of the kernel
as being MULTIPROCESSOR (even if isn't).
The shared pmap TLB uses mdpg in places where it used mdpg to avoid
deadly embrance inclusion problems.
 1.5 05-Jun-2011  matt Remove <machine/atomic.h>; use <sys/atomic.h> instead.
Add <powerpc/cpuset.h> (for mpc85xx pmap).
Add some initial MP code for mpc85xx
Rework ipi code to be common across all ppcs
Change PPC to keep curlwp in %r13 while in the kernel.
Move astpending from cpu_info to mdlwp
Improve cpu_need_resched to be more MP friendly.
 1.4 17-Feb-2011  matt branches: 1.4.2; 1.4.4;
Use _PMAP_PRIVATE to control the inclusion of <powerpc/booke/cpuvar.h>.
This prevents most of the MI files from depending on it.
 1.3 08-Feb-2011  matt BookE needs PMAP_NEEDS_PROCWR (for ptrace breakpoints)
 1.2 18-Jan-2011  matt branches: 1.2.2;
Add support for BookE Freescale MPC85xx (e500 core) processors.
Add fast softint support for PowerPC (though only booke uses it).
Redo FPU/VEC support and add e500 SPE support.
Rework trap/intrs to use a common trapframe format.
Support SOFTFLOAT (no hardfloat or fpu emulation) for BookE.
 1.1 07-Jan-2011  matt branches: 1.1.2; 1.1.4;
file pmap.h was initially added on branch matt-nb5-pq3.
 1.1.4.1 06-Jun-2011  jruoho Sync with HEAD.
 1.1.2.2 14-Oct-2011  matt Sync with current pulling P2020 and other newer processor support.
 1.1.2.1 07-Jan-2011  matt Add mpc85xx support for netbsd-5 (with some incompatible kernel changes).
 1.2.2.2 05-Mar-2011  bouyer Sync with HEAD
 1.2.2.1 08-Feb-2011  bouyer Sync with HEAD
 1.4.4.1 23-Jun-2011  cherry Catchup with rmind-uvmplock merge.
 1.4.2.3 12-Jun-2011  rmind sync with head
 1.4.2.2 05-Mar-2011  rmind sync with head
 1.4.2.1 17-Feb-2011  rmind file pmap.h was added on branch rmind-uvmplock on 2011-03-05 20:51:37 +0000
 1.8.8.1 09-May-2012  riz Pull up following revision(s) (requested by matt in ticket #241):
sys/arch/powerpc/conf/kern-mb.ldscript: revision 1.1
sys/arch/powerpc/include/booke/pmap.h: revision 1.9
sys/arch/powerpc/booke/e500_tlb.c: revision 1.8
sys/arch/powerpc/conf/files.powerpc: revision 1.83
sys/arch/powerpc/booke/booke_pmap.c: revision 1.13
sys/arch/powerpc/include/booke/e500var.h: revision 1.5
sys/arch/evbppc/mpc85xx/machdep.c: revision 1.23
Add ldscript which aligns .data to a 1MB boundary. (used for testing)
Add PMAP_MINIMALTLB defflag
Add vsize_t to pmap_md_{un,}map_poolpage.
Add pmap_kvptefill prototype.
Slightly change pmap_bootstrap prototype.
Add e500_tlb_minimize prototype.
Add support PMAP_MINIMALTLB option. This changes the default use of TLB1
entries to map all of physical memory to using two TLB1 entries, one for
mapping text and one for data. The rest of memory is mapped using the
page table which is updated as needed. This is used to trap memory
corruption issues.
Add support for PMAP_MINIMALTLB.
 1.8.6.1 05-Apr-2012  mrg sync to latest -current.
 1.8.2.3 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.8.2.2 30-Oct-2012  yamt sync with head
 1.8.2.1 17-Apr-2012  yamt sync with head
 1.10.2.3 03-Dec-2017  jdolecek update from HEAD
 1.10.2.2 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.10.2.1 20-Nov-2012  tls Resync to 2012-11-19 00:00:00 UTC
 1.11.8.1 23-Jul-2013  riastradh sync with HEAD
 1.11.2.2 18-May-2014  rmind sync with head
 1.11.2.1 28-Aug-2013  rmind sync with head
 1.14.6.3 05-Feb-2017  skrll Sync with HEAD
 1.14.6.2 05-Oct-2016  skrll Sync with HEAD
 1.14.6.1 06-Apr-2015  skrll Sync with HEAD
 1.16.2.1 07-Jan-2017  pgoyette Sync with HEAD. (Note that most of these changes are simply $NetBSD$
tag issues.)
 1.17.14.1 22-Apr-2018  pgoyette Sync with HEAD
 1.18.2.2 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.18.2.1 08-Apr-2020  martin Merge changes from current as of 20200406
 1.23.2.1 03-Jan-2021  thorpej Sync w/ HEAD.
 1.11 22-Aug-2020  skrll Remove pte_zero_p and simply check against 0.
 1.10 19-Apr-2018  christos s/static inline/static __inline/g for consistency.
 1.9 24-Jun-2017  skrll branches: 1.9.4;
Provide a pte_set
 1.8 11-Jul-2016  matt Adapt to common pmap changes.
 1.7 11-Jun-2015  matt Add PRIxPTE and pte_value(pt_entry_t) for printing the value of a PTE.
Add pte_zero_p(pt_entry_t) to check that a PTE has been zeroed.
 1.6 30-Jun-2011  matt branches: 1.6.12; 1.6.30;
Modify mapiodev to take a third argument indicating whether the space
should be prefetchable (true) or not (false).
 1.5 23-Jun-2011  matt Redo how the pte_*wire* inlines work. Now pmap.c makes no assuming about
what type pt_entry_t. It can now be a scalar or a union/struct.
 1.4 23-Jun-2011  matt Switch to using the common <common/pmap/tlb/tlb.h>
 1.3 20-Jun-2011  matt PowerPC now exports a common view of cpu.h, vmparam.h and pmap.h
when building a MODULAR kernel or compiling _MODULE.
It should be noted that MODULAR or _MODULE export a view of the kernel
as being MULTIPROCESSOR (even if isn't).
The shared pmap TLB uses mdpg in places where it used mdpg to avoid
deadly embrance inclusion problems.
 1.2 18-Jan-2011  matt branches: 1.2.4;
Add support for BookE Freescale MPC85xx (e500 core) processors.
Add fast softint support for PowerPC (though only booke uses it).
Redo FPU/VEC support and add e500 SPE support.
Rework trap/intrs to use a common trapframe format.
Support SOFTFLOAT (no hardfloat or fpu emulation) for BookE.
 1.1 09-Mar-2010  matt branches: 1.1.2; 1.1.4; 1.1.6; 1.1.8; 1.1.10;
Add initial versions of these for BookE.
 1.1.10.1 06-Jun-2011  jruoho Sync with HEAD.
 1.1.8.3 14-Oct-2011  matt Sync with current pulling P2020 and other newer processor support.
 1.1.8.2 07-Jan-2011  matt Add mpc85xx support for netbsd-5 (with some incompatible kernel changes).
 1.1.8.1 09-Mar-2010  matt file pte.h was added on branch matt-nb5-pq3 on 2011-01-07 01:26:20 +0000
 1.1.6.2 30-Apr-2010  uebayasi Sync with HEAD.
 1.1.6.1 09-Mar-2010  uebayasi file pte.h was added on branch uebayasi-xip on 2010-04-30 14:39:43 +0000
 1.1.4.1 05-Mar-2011  rmind sync with head
 1.1.2.2 11-Mar-2010  yamt sync with head
 1.1.2.1 09-Mar-2010  yamt file pte.h was added on branch yamt-nfs-mp on 2010-03-11 15:02:50 +0000
 1.2.4.1 23-Jun-2011  cherry Catchup with rmind-uvmplock merge.
 1.6.30.3 28-Aug-2017  skrll Sync with HEAD
 1.6.30.2 05-Oct-2016  skrll Sync with HEAD
 1.6.30.1 22-Sep-2015  skrll Sync with HEAD
 1.6.12.1 03-Dec-2017  jdolecek update from HEAD
 1.9.4.1 22-Apr-2018  pgoyette Sync with HEAD
 1.15 05-Dec-2021  msaitoh s/seach/search/
 1.14 03-Aug-2021  andvar Fix various typos in comments. Also add missing NetBSD RCS Id in some of these files.
 1.13 27-Dec-2014  nonaka Added MMUv2 define.
 1.12 20-Dec-2014  nonaka Added P1023/P1017.
 1.11 01-Aug-2012  matt branches: 1.11.2; 1.11.16;
Fix some copy&paste bugs.
 1.10 18-Jul-2012  matt Add some more PVRs and SVRs
 1.9 15-Jul-2012  matt Add support for the Freescale TWR-P1025 evaluation board and the P1025/P1016
QorIQ processors. XXX tsec isn't working yet on the TWR-P1025.
 1.8 09-Jul-2012  matt Add some e500mc/e5500 machines.
 1.7 05-Jun-2011  matt branches: 1.7.2;
Remove <machine/atomic.h>; use <sys/atomic.h> instead.
Add <powerpc/cpuset.h> (for mpc85xx pmap).
Add some initial MP code for mpc85xx
Rework ipi code to be common across all ppcs
Change PPC to keep curlwp in %r13 while in the kernel.
Move astpending from cpu_info to mdlwp
Improve cpu_need_resched to be more MP friendly.
 1.6 29-Apr-2011  matt branches: 1.6.2;
Add some P10xx SVRs
 1.5 16-Feb-2011  matt Add MPC8533 SVR. Fix DBCR0 IAC bits
 1.4 08-Feb-2011  matt Add more MPC85xx SVRs.
Fix/add debug register definitions.
 1.3 18-Jan-2011  matt branches: 1.3.2;
Add support for BookE Freescale MPC85xx (e500 core) processors.
Add fast softint support for PowerPC (though only booke uses it).
Redo FPU/VEC support and add e500 SPE support.
Rework trap/intrs to use a common trapframe format.
Support SOFTFLOAT (no hardfloat or fpu emulation) for BookE.
 1.2 01-Apr-2010  matt branches: 1.2.2; 1.2.4; 1.2.6;
Fix some TCR definitions.
 1.1 09-Mar-2010  matt branches: 1.1.2; 1.1.4;
Add initial versions of these for BookE.
 1.1.4.4 12-Jun-2011  rmind sync with head
 1.1.4.3 31-May-2011  rmind sync with head
 1.1.4.2 05-Mar-2011  rmind sync with head
 1.1.4.1 30-May-2010  rmind sync with head
 1.1.2.3 11-Aug-2010  yamt sync with head.
 1.1.2.2 11-Mar-2010  yamt sync with head
 1.1.2.1 09-Mar-2010  yamt file spr.h was added on branch yamt-nfs-mp on 2010-03-11 15:02:50 +0000
 1.2.6.1 06-Jun-2011  jruoho Sync with HEAD.
 1.2.4.3 14-Oct-2011  matt Sync with current pulling P2020 and other newer processor support.
 1.2.4.2 07-Jan-2011  matt Add mpc85xx support for netbsd-5 (with some incompatible kernel changes).
 1.2.4.1 01-Apr-2010  matt file spr.h was added on branch matt-nb5-pq3 on 2011-01-07 01:26:20 +0000
 1.2.2.2 30-Apr-2010  uebayasi Sync with HEAD.
 1.2.2.1 01-Apr-2010  uebayasi file spr.h was added on branch uebayasi-xip on 2010-04-30 14:39:43 +0000
 1.3.2.2 17-Feb-2011  bouyer Sync with HEAD
 1.3.2.1 08-Feb-2011  bouyer Sync with HEAD
 1.6.2.1 23-Jun-2011  cherry Catchup with rmind-uvmplock merge.
 1.7.2.1 30-Oct-2012  yamt sync with head
 1.11.16.1 06-Apr-2015  skrll Sync with HEAD
 1.11.2.1 03-Dec-2017  jdolecek update from HEAD
 1.2 18-Jan-2011  matt Add support for BookE Freescale MPC85xx (e500 core) processors.
Add fast softint support for PowerPC (though only booke uses it).
Redo FPU/VEC support and add e500 SPE support.
Rework trap/intrs to use a common trapframe format.
Support SOFTFLOAT (no hardfloat or fpu emulation) for BookE.
 1.1 09-Mar-2010  matt branches: 1.1.2; 1.1.4; 1.1.6; 1.1.8; 1.1.10;
Add initial versions of these for BookE.
 1.1.10.1 06-Jun-2011  jruoho Sync with HEAD.
 1.1.8.2 07-Jan-2011  matt Add mpc85xx support for netbsd-5 (with some incompatible kernel changes).
 1.1.8.1 09-Mar-2010  matt file trap.h was added on branch matt-nb5-pq3 on 2011-01-07 01:26:20 +0000
 1.1.6.2 30-Apr-2010  uebayasi Sync with HEAD.
 1.1.6.1 09-Mar-2010  uebayasi file trap.h was added on branch uebayasi-xip on 2010-04-30 14:39:43 +0000
 1.1.4.1 05-Mar-2011  rmind sync with head
 1.1.2.2 11-Mar-2010  yamt sync with head
 1.1.2.1 09-Mar-2010  yamt file trap.h was added on branch yamt-nfs-mp on 2010-03-11 15:02:50 +0000
 1.10 11-Sep-2021  andvar Add missing double p and d for stopped and overriden accordingly.
Fix few more typos along the way, mainly in copy-pasted comments.
 1.9 17-Apr-2021  rin Sync MAXfoo params with oea:

MAXTSIZ: 512MB -> 128MB
MAXDSIZ: 3.25GB -> 1GB

There should be no particular reasons for having different values.
 1.8 17-Apr-2021  rin PR port-powerpc/56107

Decrease MAXSSIZ from ~256MB to 32MB (same as oea).

This fixes tests in /usr/tests/usr.bin/make, that run with "ulimit -v 200000",
fail with "Cannot map anonymous memory".

Although I'm not fully convinced whether this limit is reasonable or not,
old MAXSSIZ of ~256MB is too much anyway.
 1.7 02-Oct-2012  christos branches: 1.7.52;
move common tlb stuff to uvm
 1.6 09-Jul-2012  matt branches: 1.6.2;
Allow the use of the full 4GB address space.
 1.5 20-Jun-2011  matt branches: 1.5.2;
PowerPC now exports a common view of cpu.h, vmparam.h and pmap.h
when building a MODULAR kernel or compiling _MODULE.
It should be noted that MODULAR or _MODULE export a view of the kernel
as being MULTIPROCESSOR (even if isn't).
The shared pmap TLB uses mdpg in places where it used mdpg to avoid
deadly embrance inclusion problems.
 1.4 05-Jun-2011  matt Remove <machine/atomic.h>; use <sys/atomic.h> instead.
Add <powerpc/cpuset.h> (for mpc85xx pmap).
Add some initial MP code for mpc85xx
Rework ipi code to be common across all ppcs
Change PPC to keep curlwp in %r13 while in the kernel.
Move astpending from cpu_info to mdlwp
Improve cpu_need_resched to be more MP friendly.
 1.3 18-Jan-2011  matt branches: 1.3.4;
Add support for BookE Freescale MPC85xx (e500 core) processors.
Add fast softint support for PowerPC (though only booke uses it).
Redo FPU/VEC support and add e500 SPE support.
Rework trap/intrs to use a common trapframe format.
Support SOFTFLOAT (no hardfloat or fpu emulation) for BookE.
 1.2 06-Nov-2010  uebayasi branches: 1.2.2; 1.2.4;
Remove incomplete, never worked dynamic run-time memory registration
(uvm_page_physload(9)). This functionality will be re-added later.
 1.1 09-Mar-2010  matt branches: 1.1.2; 1.1.4; 1.1.6;
Add initial versions of these for BookE.
 1.1.6.3 27-May-2010  uebayasi VM_PHYSSEG_NOADD is no more.
 1.1.6.2 30-Apr-2010  uebayasi Sync with HEAD.
 1.1.6.1 09-Mar-2010  uebayasi file vmparam.h was added on branch uebayasi-xip on 2010-04-30 14:39:43 +0000
 1.1.4.2 12-Jun-2011  rmind sync with head
 1.1.4.1 05-Mar-2011  rmind sync with head
 1.1.2.2 11-Mar-2010  yamt sync with head
 1.1.2.1 09-Mar-2010  yamt file vmparam.h was added on branch yamt-nfs-mp on 2010-03-11 15:02:50 +0000
 1.2.4.1 06-Jun-2011  jruoho Sync with HEAD.
 1.2.2.3 14-Oct-2011  matt Sync with current pulling P2020 and other newer processor support.
 1.2.2.2 07-Jan-2011  matt Add mpc85xx support for netbsd-5 (with some incompatible kernel changes).
 1.2.2.1 06-Nov-2010  matt file vmparam.h was added on branch matt-nb5-pq3 on 2011-01-07 01:26:20 +0000
 1.3.4.1 23-Jun-2011  cherry Catchup with rmind-uvmplock merge.
 1.5.2.1 30-Oct-2012  yamt sync with head
 1.6.2.1 20-Nov-2012  tls Resync to 2012-11-19 00:00:00 UTC
 1.7.52.1 17-Apr-2021  thorpej Sync with HEAD.

RSS XML Feed