History log of /freebsd/sys/arm/include/pmap.h (Results 151 – 175 of 208)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
# cc0d48ff 11-Nov-2006 Alan Cox <alc@FreeBSD.org>

Eliminate unused global variables.


# 676b1fbd 07-Nov-2006 Olivier Houchard <cognet@FreeBSD.org>

Identify the xscale 81342.


# 49953e11 08-Aug-2006 Olivier Houchard <cognet@FreeBSD.org>

Rewrite ARM_USE_SMALL_ALLOC so that instead of the current behavior, it maps
whole the physical memory, cached, using 1MB section mappings. This reduces
the address space available for user processes

Rewrite ARM_USE_SMALL_ALLOC so that instead of the current behavior, it maps
whole the physical memory, cached, using 1MB section mappings. This reduces
the address space available for user processes a bit, but given the amount of
memory a typical arm machine has, it is not (yet) a big issue.
It then provides a uma_small_alloc() that works as it does for architectures
which have a direct mapping.

show more ...


# ed48a217 06-Jun-2006 Alan Cox <alc@FreeBSD.org>

Add partial pmap locking.

Eliminate the unused allpmaps list.

Tested by: cognet@


# 87adbb81 31-May-2006 Olivier Houchard <cognet@FreeBSD.org>

Include machine/cpuconf.h in pmap.h in order to get ARM_NMMUS defined,
to appease -Wundef.


Revision tags: release/5.5.0_cvs, release/5.5.0
# d5d776c1 14-May-2006 Olivier Houchard <cognet@FreeBSD.org>

Resurrect Skyeye support :
Add a new option, SKYEYE_WORKAROUNDS, which as the name suggests adds
workarounds for things skyeye doesn't simulate. Specifically :
- Use USART0 instead of DBGU as the con

Resurrect Skyeye support :
Add a new option, SKYEYE_WORKAROUNDS, which as the name suggests adds
workarounds for things skyeye doesn't simulate. Specifically :
- Use USART0 instead of DBGU as the console, make it not use DMA, and manually provoke an interrupt when we're done in the transmit function.
- Skyeye maintains an internal counter for clock, but apparently there's
no way to access it, so hack the timecounter code to return a value which
is increased at every clock interrupts. This is gross, but I didn't find a
better way to implement timecounters without hacking Skyeye to get the
counter value.
- Force the write-back of PTEs once we're done writing them, even if they
are supposed to be write-through. I don't know why I have to do that.

show more ...


Revision tags: release/6.1.0_cvs, release/6.1.0
# 174329af 09-Apr-2006 Olivier Houchard <cognet@FreeBSD.org>

MFp4: Don't write-back the PTEs if they are mapped write-through, this was
apparently only needed because skyeye has bugs in its cache emulation.


# 2456c0ea 02-Mar-2006 Olivier Houchard <cognet@FreeBSD.org>

Try to honor BUS_DMA_COHERENT : if the flag is set, normally allocate memory
with malloc() or contigmalloc() as usual, but try to re-map the allocated
memory into a VA outside the KVA, non-cached, th

Try to honor BUS_DMA_COHERENT : if the flag is set, normally allocate memory
with malloc() or contigmalloc() as usual, but try to re-map the allocated
memory into a VA outside the KVA, non-cached, thus making the calls to
bus_dmamap_sync() for these buffers useless.

show more ...


# 94d8cf99 21-Nov-2005 Olivier Houchard <cognet@FreeBSD.org>

Force pmap to write-back the pte cacheline after each pte modification,
even if the pte is supposed to be cached in write through mode (might be a
skyeye bug, I'll have to check).


# 81277989 06-Nov-2005 Olivier Houchard <cognet@FreeBSD.org>

MFi386 rev 1.536 (sort of)
Move what can be moved (UMA zones creation, pv_entry_* initialization) from
pmap_init2() to pmap_init().
Create a new function, pmap_postinit(), called from cpu_startup(),

MFi386 rev 1.536 (sort of)
Move what can be moved (UMA zones creation, pv_entry_* initialization) from
pmap_init2() to pmap_init().
Create a new function, pmap_postinit(), called from cpu_startup(), to do the
L1 tables allocation.
pmap_init2() is now empty for arm as well.

show more ...


Revision tags: release/6.0.0_cvs, release/6.0.0
# db7db23d 04-Oct-2005 Olivier Houchard <cognet@FreeBSD.org>

dump_avail has nothing to do with ARM_USE_SMALL_ALLOC, so move its
declaration out of the #ifdef.


# b834efd5 03-Oct-2005 Olivier Houchard <cognet@FreeBSD.org>

Provide a dump_avail[] variable, which contains the page ranges to be
dumped.

For iq31244_machdep.c, attempt to recognize hints provided by the elf
trampoline.


# 56e472e2 08-Jun-2005 Olivier Houchard <cognet@FreeBSD.org>

Add a new arm-specific option, ARM_USE_SMALL_ALLOC. If defined, it provides
an implementation of uma_small_alloc() which tries to preallocate memory
1MB per 1MB, and maps it into a section mapping.


Revision tags: release/5.4.0_cvs, release/5.4.0
# 139e3f7c 08-Apr-2005 Olivier Houchard <cognet@FreeBSD.org>

- Try harder to report dirty page.
- Garbage-collect pmap_update(), it became quite useless.


# f4c01f15 26-Feb-2005 Olivier Houchard <cognet@FreeBSD.org>

Instead of using sysarch() to store-retrieve the tp, add a magic address,
ARM_TP_ADDRESS, where the tp will be stored. On CPUs that support it, a cache
line will be allocated and locked for this addr

Instead of using sysarch() to store-retrieve the tp, add a magic address,
ARM_TP_ADDRESS, where the tp will be stored. On CPUs that support it, a cache
line will be allocated and locked for this address, so that it will never go
to RAM. On CPUs that does not, a page is allocated for it (it will be a bit
slower, and is wrong for SMP, but should be fine for UP).
The tp is still stored in the mdthread struct, and at each context switch,
ARM_TP_ADDRESS gets updated.

Suggested by: davidxu

show more ...


Revision tags: release/4.11.0_cvs, release/4.11.0
# d8315c79 05-Jan-2005 Warner Losh <imp@FreeBSD.org>

Start all license statements with /*-


# b62e66eb 05-Dec-2004 Olivier Houchard <cognet@FreeBSD.org>

Remove an unused field from the struct pv_entry.
While I'm there, fix style.


# e099742e 08-Nov-2004 Olivier Houchard <cognet@FreeBSD.org>

Import md bits for mem(4) on arm.
While I'm there, cleanup a bit pmap.h.


Revision tags: release/5.3.0_cvs, release/5.3.0
# 8e90166a 23-Sep-2004 Olivier Houchard <cognet@FreeBSD.org>

Implement pmap_growkernel() and pmap_extract_and_hold().
Remove the cache state logic : right now, it provides more problems than it
helps.
Add helper functions for mapping devices while bootstrappin

Implement pmap_growkernel() and pmap_extract_and_hold().
Remove the cache state logic : right now, it provides more problems than it
helps.
Add helper functions for mapping devices while bootstrapping.
Reorganize the code a bit, and remove dead code.

Obtained from: NetBSD (partially)

show more ...


# 6933f3a5 22-Jul-2004 Olivier Houchard <cognet@FreeBSD.org>

Define pmap_page_is_mapped().


# dd7c1e99 12-Jul-2004 Olivier Houchard <cognet@FreeBSD.org>

Forward declare "struct pcb", so that one does not need to include
<machine/pcb.h> before including <machine/pmap.h>.


Revision tags: release/4.10.0_cvs, release/4.10.0
# 6fc729af 14-May-2004 Olivier Houchard <cognet@FreeBSD.org>

Import FreeBSD/arm kernel bits.
It only supports sa1110 (on simics) right now, but xscale support should come
soon.
Some of the initial work has been provided by :
Stephane Potvin <sepotvin at videot

Import FreeBSD/arm kernel bits.
It only supports sa1110 (on simics) right now, but xscale support should come
soon.
Some of the initial work has been provided by :
Stephane Potvin <sepotvin at videotron.ca>
Most of this comes from NetBSD.

show more ...


# 11e9b8ba 04-Aug-2009 Oleksandr Tymoshenko <gonzo@FreeBSD.org>

- MFC @196061


# 3153e878 13-Jul-2009 Alan Cox <alc@FreeBSD.org>

Add support to the virtual memory system for configuring machine-
dependent memory attributes:

Rename vm_cache_mode_t to vm_memattr_t. The new name reflects the
fact that there are machine-dependen

Add support to the virtual memory system for configuring machine-
dependent memory attributes:

Rename vm_cache_mode_t to vm_memattr_t. The new name reflects the
fact that there are machine-dependent memory attributes that have
nothing to do with controlling the cache's behavior.

Introduce vm_object_set_memattr() for setting the default memory
attributes that will be given to an object's pages.

Introduce and use pmap_page_{get,set}_memattr() for getting and
setting a page's machine-dependent memory attributes. Add full
support for these functions on amd64 and i386 and stubs for them on
the other architectures. The function pmap_page_set_memattr() is also
responsible for any other machine-dependent aspects of changing a
page's memory attributes, such as flushing the cache or updating the
direct map. The uses include kmem_alloc_contig(), vm_page_alloc(),
and the device pager:

kmem_alloc_contig() can now be used to allocate kernel memory with
non-default memory attributes on amd64 and i386.

vm_page_alloc() and the device pager will set the memory attributes
for the real or fictitious page according to the object's default
memory attributes.

Update the various pmap functions on amd64 and i386 that map pages to
incorporate each page's memory attributes in the mapping.

Notes: (1) Inherent to this design are safety features that prevent
the specification of inconsistent memory attributes by different
mappings on amd64 and i386. In addition, the device pager provides a
warning when a device driver creates a fictitious page with memory
attributes that are inconsistent with the real page that the
fictitious page is an alias for. (2) Storing the machine-dependent
memory attributes for amd64 and i386 as a dedicated "int" in "struct
md_page" represents a compromise between space efficiency and the ease
of MFCing these changes to RELENG_7.

In collaboration with: jhb

Approved by: re (kib)

show more ...


# 09c817ba 03-Jul-2009 Oleksandr Tymoshenko <gonzo@FreeBSD.org>

- MFC


123456789