summaryrefslogtreecommitdiffstats
path: root/sys/powerpc/include/pmap.h
diff options
context:
space:
mode:
Diffstat (limited to 'sys/powerpc/include/pmap.h')
-rw-r--r--sys/powerpc/include/pmap.h10
1 files changed, 6 insertions, 4 deletions
diff --git a/sys/powerpc/include/pmap.h b/sys/powerpc/include/pmap.h
index f2d2a13..c030416 100644
--- a/sys/powerpc/include/pmap.h
+++ b/sys/powerpc/include/pmap.h
@@ -122,13 +122,13 @@ struct pvo_entry {
LIST_HEAD(pvo_head, pvo_entry);
struct md_page {
- u_int64_t mdpg_attrs;
+ u_int64_t mdpg_attrs;
+ vm_memattr_t mdpg_cache_attrs;
struct pvo_head mdpg_pvoh;
};
-#define pmap_page_get_memattr(m) VM_MEMATTR_DEFAULT
+#define pmap_page_get_memattr(m) ((m)->md.mdpg_cache_attrs)
#define pmap_page_is_mapped(m) (!LIST_EMPTY(&(m)->md.mdpg_pvoh))
-#define pmap_page_set_memattr(m, ma) (void)0
/*
* Return the VSID corresponding to a given virtual address.
@@ -187,7 +187,6 @@ struct md_page {
#define pmap_page_get_memattr(m) VM_MEMATTR_DEFAULT
#define pmap_page_is_mapped(m) (!TAILQ_EMPTY(&(m)->md.pv_list))
-#define pmap_page_set_memattr(m, ma) (void)0
#endif /* AIM */
@@ -209,9 +208,12 @@ extern struct pmap kernel_pmap_store;
void pmap_bootstrap(vm_offset_t, vm_offset_t);
void pmap_kenter(vm_offset_t va, vm_offset_t pa);
+void pmap_kenter_attr(vm_offset_t va, vm_offset_t pa, vm_memattr_t);
void pmap_kremove(vm_offset_t);
void *pmap_mapdev(vm_offset_t, vm_size_t);
+void *pmap_mapdev_attr(vm_offset_t, vm_size_t, vm_memattr_t);
void pmap_unmapdev(vm_offset_t, vm_size_t);
+void pmap_page_set_memattr(vm_page_t, vm_memattr_t);
void pmap_deactivate(struct thread *);
vm_offset_t pmap_kextract(vm_offset_t);
int pmap_dev_direct_mapped(vm_offset_t, vm_size_t);
OpenPOWER on IntegriCloud