aboutsummaryrefslogtreecommitdiff
path: root/sys/arm/include/pmap-v6.h
diff options
context:
space:
mode:
authorIan Lepore <ian@FreeBSD.org>2015-04-10 13:26:35 +0000
committerIan Lepore <ian@FreeBSD.org>2015-04-10 13:26:35 +0000
commit7669914f3268c13368347488e91271f0ba050482 (patch)
treea2fb3d304764a48fcd52b1ea4b3aae9698b2dfc5 /sys/arm/include/pmap-v6.h
parent78261920b0e1b4f91d3d6ac5c5bdf965a391ab08 (diff)
downloadsrc-7669914f3268c13368347488e91271f0ba050482.tar.gz
src-7669914f3268c13368347488e91271f0ba050482.zip
Add a pmap_kremove_device() to undo mappings made with pmap_kenter_device().
Previously we used pmap_kremove(), but with ARM_NEW_PMAP it does the remove in a way that isn't SMP-coherent (which is appropriate in some circumstances such as mapping/unmapping sf buffers). With matching enter/remove routines for device mappings, each low-level implementation can do the right thing. Reviewed by: Svatopluk Kraus <onwahe@gmail.com>
Notes
Notes: svn path=/head/; revision=281369
Diffstat (limited to 'sys/arm/include/pmap-v6.h')
-rw-r--r--sys/arm/include/pmap-v6.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/sys/arm/include/pmap-v6.h b/sys/arm/include/pmap-v6.h
index 54c0f856634f..bb586824fa04 100644
--- a/sys/arm/include/pmap-v6.h
+++ b/sys/arm/include/pmap-v6.h
@@ -190,7 +190,8 @@ void *pmap_mapdev_attr(vm_paddr_t, vm_size_t, int);
boolean_t pmap_page_is_mapped(vm_page_t );
void pmap_page_set_memattr(vm_page_t , vm_memattr_t );
void pmap_unmapdev(vm_offset_t, vm_size_t);
-void pmap_kenter_device(vm_offset_t , vm_paddr_t );
+void pmap_kenter_device(vm_offset_t, vm_size_t, vm_paddr_t);
+void pmap_kremove_device(vm_offset_t, vm_size_t);
void pmap_set_pcb_pagedir(pmap_t , struct pcb *);
void pmap_lazyfix_action(void);