summaryrefslogtreecommitdiffstats
path: root/sys/amd64/include/pmap.h
diff options
context:
space:
mode:
authorjhb <jhb@FreeBSD.org>2006-05-01 22:07:00 +0000
committerjhb <jhb@FreeBSD.org>2006-05-01 22:07:00 +0000
commit00bb13261b47adc1a0e5064c6711bdf4e41739c6 (patch)
treea5a5b98ceebb1c0cb55bb29fb1a21eedcde521c5 /sys/amd64/include/pmap.h
parent517c01ed07a72ed13f0bb2fb42f28481a270baa1 (diff)
downloadFreeBSD-src-00bb13261b47adc1a0e5064c6711bdf4e41739c6.zip
FreeBSD-src-00bb13261b47adc1a0e5064c6711bdf4e41739c6.tar.gz
Add various constants for the PAT MSR and the PAT PTE and PDE flags.
Initialize the PAT MSR during boot to map PAT type 2 to Write-Combining (WC) instead of Uncached (UC-). MFC after: 1 month
Diffstat (limited to 'sys/amd64/include/pmap.h')
-rw-r--r--sys/amd64/include/pmap.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/sys/amd64/include/pmap.h b/sys/amd64/include/pmap.h
index 0a774c7..bfecade 100644
--- a/sys/amd64/include/pmap.h
+++ b/sys/amd64/include/pmap.h
@@ -58,10 +58,12 @@
#define PG_A 0x020 /* A Accessed */
#define PG_M 0x040 /* D Dirty */
#define PG_PS 0x080 /* PS Page size (0=4k,1=4M) */
+#define PG_PTE_PAT 0x080 /* PAT PAT index */
#define PG_G 0x100 /* G Global */
#define PG_AVAIL1 0x200 /* / Available for system */
#define PG_AVAIL2 0x400 /* < programmers use */
#define PG_AVAIL3 0x800 /* \ */
+#define PG_PDE_PAT 0x1000 /* PAT PAT index */
#define PG_NX (1ul<<63) /* No-execute */
@@ -300,6 +302,7 @@ extern vm_offset_t virtual_end;
#define pmap_page_is_mapped(m) (!TAILQ_EMPTY(&(m)->md.pv_list))
void pmap_bootstrap(vm_paddr_t *);
+void pmap_init_pat(void);
void pmap_kenter(vm_offset_t va, vm_paddr_t pa);
void *pmap_kenter_temporary(vm_paddr_t pa, int i);
vm_paddr_t pmap_kextract(vm_offset_t);
OpenPOWER on IntegriCloud