X-Git-Url: https://git.saurik.com/apple/xnu.git/blobdiff_plain/1c79356b52d46aa6b508fb032f5ae709b1f2897b..de355530ae67247cbd0da700edb3a2a1dae884c2:/osfmk/ppc/pmap.h?ds=inline diff --git a/osfmk/ppc/pmap.h b/osfmk/ppc/pmap.h index d2063239b..44bac7918 100644 --- a/osfmk/ppc/pmap.h +++ b/osfmk/ppc/pmap.h @@ -69,6 +69,7 @@ struct pmap { #define pmapBatIVal 0x0F000000 #define pmapFlags 0x00FF0000 #define pmapSubord 0x00800000 +#define pmapVMhost 0x00400000 #define pmapAltSeg 0x0000FFFF unsigned int spaceNum; /* Space number */ /* PPC line boundary here - 020 */ @@ -116,6 +117,17 @@ extern pmap_t cursor_pmap; /* The pmap to start allocations with */ #define pmap_phys_address(x) ((x) << PPC_PGSHIFT) #define pmap_phys_to_frame(x) ((x) >> PPC_PGSHIFT) +#define PMAP_DEFAULT_CACHE 0 +#define PMAP_INHIBIT_CACHE 1 +#define PMAP_GUARDED_CACHE 2 +#define PMAP_ACTIVATE_CACHE 4 +#define PMAP_NO_GUARD_CACHE 8 + +/* corresponds to cached, coherent, not writethru, not guarded */ +#define VM_WIMG_DEFAULT VM_MEM_COHERENT +#define VM_WIMG_IO VM_MEM_COHERENT | \ + VM_MEM_NOT_CACHEABLE | VM_MEM_GUARDED + /* * prototypes. */ @@ -154,6 +166,7 @@ extern void sync_cache(vm_offset_t pa, unsigned length); extern void flush_dcache(vm_offset_t va, unsigned length, boolean_t phys); extern void invalidate_dcache(vm_offset_t va, unsigned length, boolean_t phys); extern void invalidate_icache(vm_offset_t va, unsigned length, boolean_t phys); +extern void pmap_sync_caches_phys(vm_offset_t pa); extern void invalidate_cache_for_io(vm_offset_t va, unsigned length, boolean_t phys); extern void pmap_map_block(pmap_t pmap, vm_offset_t va, vm_offset_t pa, vm_size_t size, vm_prot_t prot, int attr, unsigned int flags); /* Map a block */