freebsd-nq/sys/arm/include
Grzegorz Bernacki b8b08befd0 Switch to AP[2:1] access permissions model. Store "referenced"
bit in PTE.

Enable Access Flag in CPU control. With AF enabled each valid mapping
needs to have referenced bit in PTE set in order to be able to cache
it in the TLB.

AP[0] bit is to be used as reference flag.
All access permissions are encoded by AP[2:1] wherein AP[1] is in fact
"user enable" and AP[2](APX) is "write disable".

All mappings are always set to be valid. Reference emulation is performed
by setting/clearing reference flag in PTE.

md.pvh_attrs are no longer necessary however pv_flags are still being used
for now.

Marking vm_page as "dirty" or "referenced" is being performed on:
- page or flag fault servicing in pmap_fault_fixup(), basing on the fault
  type
- vm_fault servicing in pmap_enter() according to the desired protections
  and faulty access type
Redundant page marking has been removed as on ARM we know exactly when the
particular page is referenced or is going to be written.

Submitted by:	Zbigniew Bodek <zbb@semihalf.com>
Sponsored by:	The FreeBSD Foundation, Semihalf
2013-05-23 12:07:41 +00:00
..
_align.h
_bus.h Remove errant % in license comment. 2008-02-26 11:45:32 +00:00
_inttypes.h The NetBSD Foundation has granted permission to remove clauses 3 and 4. 2010-02-16 21:59:17 +00:00
_limits.h Fix types of some values in machine/_limits.h. 2011-01-08 11:13:34 +00:00
_stdint.h Make the wchar_t type machine dependent. 2012-06-24 04:15:58 +00:00
_types.h Make the wchar_t type machine dependent. 2012-06-24 04:15:58 +00:00
armreg.h Switch to AP[2:1] access permissions model. Store "referenced" 2013-05-23 12:07:41 +00:00
asm.h Add an END macro to ARM. This is mostly used to tell gas where the bounds 2013-03-16 02:48:49 +00:00
asmacros.h Merging projects/armv6, part 1 2012-08-15 03:03:03 +00:00
at91_gpio.h Add userland access to at91 gpio functionality via ioctl calls. Also, 2013-03-29 19:52:57 +00:00
atags.h Defines for parsing linux ATAGs lists. 2012-06-14 14:38:55 +00:00
atomic.h Don't define rel/acq variants of some atomic operations as the regular 2013-01-15 22:08:03 +00:00
blockio.h trim trailing whitespace 2012-06-13 05:02:51 +00:00
board.h Create a generic way to support multiple boards within an 2012-07-07 05:02:39 +00:00
bootconfig.h
bus_dma.h The NetBSD Foundation has granted permission to remove clauses 3 and 4. 2010-02-16 21:59:17 +00:00
bus.h o Switch to use physical addresses in rman for FDT. 2013-03-18 15:18:55 +00:00
clock.h
counter.h Merge from projects/counters: counter(9). 2013-04-08 19:40:53 +00:00
cpu.h Minor rearrangement of the locore <-> initarm interface. Pass in a 2012-06-03 18:34:32 +00:00
cpuconf.h Replace generic ARM11 option with more specific 2012-12-20 04:32:02 +00:00
cpufunc.h Replace generic ARM11 option with more specific 2012-12-20 04:32:02 +00:00
db_machdep.h
disassem.h Catchup with new prototype for db_printf(). 2010-05-14 00:00:19 +00:00
elf.h Reserve AT_TIMEKEEP auxv entry for providing usermode the pointer to 2012-06-22 06:38:31 +00:00
endian.h trim trailing whitespace 2012-06-13 05:02:51 +00:00
exec.h
fdt.h trim trailing whitespace 2012-06-13 05:02:51 +00:00
fiq.h
float.h Add C11 macros describing subnormal numbers to float.h. 2012-01-23 06:36:41 +00:00
floatingpoint.h
fp.h Merging projects/armv6, part 1 2012-08-15 03:03:03 +00:00
frame.h Fix stack alignment in the kernel to be on an 8 byte boundary as required 2013-03-06 06:19:56 +00:00
gdb_machdep.h
ieee.h trim trailing whitespace 2012-06-13 05:02:51 +00:00
ieeefp.h People porting FreeBSD to new architectures ought not have to 2011-10-21 06:41:46 +00:00
in_cksum.h trim trailing whitespace 2012-06-13 05:02:51 +00:00
intr.h Eliminate the need for an intermediate array of indices into the arrays of 2013-01-19 00:50:12 +00:00
katelib.h trim trailing whitespace 2012-06-13 05:02:51 +00:00
kdb.h Flush D and I caches after setting a breakpoint. 2012-05-30 13:31:08 +00:00
limits.h
machdep.h Add a couple forward declarations, so that board support routines don't have 2013-03-29 18:43:10 +00:00
md_var.h Merging projects/armv6, part 1 2012-08-15 03:03:03 +00:00
memdev.h Add reader/writer lock around mem_range_attr_get() and mem_range_attr_set(). 2011-01-17 22:58:28 +00:00
metadata.h Don't re-use MODINFOMD_BOOTINFO as MODINFOMD_DTBP. It breaks 2011-01-11 22:07:39 +00:00
minidump.h
ofw_machdep.h Initial FDT infrastructure elements for ARM. 2010-06-13 13:12:52 +00:00
param.h Rename VM_NDOMAIN into MAXMEMDOM and move it into machine/param.h in 2013-05-07 22:46:24 +00:00
pcb.h Merging projects/armv6, part 1 2012-08-15 03:03:03 +00:00
pcpu.h Merge from projects/counters: 2013-04-08 19:19:10 +00:00
pl310.h Only work around errata when we are on a part where the erratum applies. 2013-01-06 00:42:09 +00:00
pmap.h Switch to AP[2:1] access permissions model. Store "referenced" 2013-05-23 12:07:41 +00:00
pmc_mdep.h Add ARM callchain support for hwpmc. 2012-06-13 06:38:25 +00:00
proc.h * Correct KINFO_PROC_SIZE for ARM EABI. 2013-01-17 09:52:35 +00:00
profile.h trim trailing whitespace 2012-06-13 05:02:51 +00:00
psl.h
pte.h Merging projects/armv6, part 1 2012-08-15 03:03:03 +00:00
ptrace.h
reg.h
reloc.h
resource.h trim trailing whitespace 2012-06-13 05:02:51 +00:00
runq.h
sc_machdep.h Piggyback MIPS changes and add ARM syscons support for devices with 2012-08-25 23:59:31 +00:00
setjmp.h Hide non-assembler bits behind #ifndef __ASSEMBLER__ 2013-04-06 00:47:33 +00:00
sf_buf.h
sigframe.h
signal.h Don't use an empty struct. 2013-03-11 10:56:46 +00:00
smp.h Merging projects/armv6, part 1 2012-08-15 03:03:03 +00:00
stack.h trim trailing whitespace 2012-06-13 05:02:51 +00:00
stdarg.h
swi.h
sysarch.h - Correct mispellings of the word occurrence 2013-04-17 11:40:10 +00:00
trap.h
ucontext.h The NetBSD Foundation has granted permission to remove clauses 3 and 4. 2010-02-16 21:59:17 +00:00
undefined.h
utrap.h
vdso.h Implement mechanism to export some kernel timekeeping data to 2012-06-22 07:06:40 +00:00
vfp.h Export vfp_init() prototype, for use in the MP code. 2013-02-26 20:01:05 +00:00
vm.h Properly implement pmap_[get|set]_memattr 2012-12-19 00:24:31 +00:00
vmparam.h Rename VM_NDOMAIN into MAXMEMDOM and move it into machine/param.h in 2013-05-07 22:46:24 +00:00