Changeset b3e8c90 in mainline for kernel/arch/sparc64/include/mm/mmu.h
- Timestamp:
- 2006-08-01T11:24:27Z (19 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- e386cbf
- Parents:
- c049309
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
kernel/arch/sparc64/include/mm/mmu.h
rc049309 rb3e8c90 27 27 */ 28 28 29 29 /** @addtogroup sparc64mm 30 30 * @{ 31 31 */ … … 35 35 #ifndef __sparc64_MMU_H__ 36 36 #define __sparc64_MMU_H__ 37 38 #include <arch/asm.h>39 #include <arch/barrier.h>40 #include <arch/types.h>41 #include <typedefs.h>42 37 43 38 /** LSU Control Register ASI. */ … … 80 75 #define VA_DMMU_PA_WATCHPOINT_REG 0x40 /**< DMMU PA data watchpoint register. */ 81 76 77 #ifndef __ASM__ 78 79 #include <arch/asm.h> 80 #include <arch/barrier.h> 81 #include <arch/types.h> 82 #include <typedefs.h> 82 83 83 84 /** LSU Control Register. */ … … 103 104 typedef union lsu_cr_reg lsu_cr_reg_t; 104 105 105 106 #define immu_enable() immu_set(true) 107 #define immu_disable() immu_set(false) 108 #define dmmu_enable() dmmu_set(true) 109 #define dmmu_disable() dmmu_set(false) 110 111 /** Disable or Enable IMMU. */ 112 static inline void immu_set(bool enable) 113 { 114 lsu_cr_reg_t cr; 115 116 cr.value = asi_u64_read(ASI_LSU_CONTROL_REG, 0); 117 cr.im = enable; 118 asi_u64_write(ASI_LSU_CONTROL_REG, 0, cr.value); 119 membar(); 120 } 121 122 /** Disable or Enable DMMU. */ 123 static inline void dmmu_set(bool enable) 124 { 125 lsu_cr_reg_t cr; 126 127 cr.value = asi_u64_read(ASI_LSU_CONTROL_REG, 0); 128 cr.dm = enable; 129 asi_u64_write(ASI_LSU_CONTROL_REG, 0, cr.value); 130 membar(); 131 } 106 #endif /* !__ASM__ */ 132 107 133 108 #endif 134 109 135 110 /** @} 136 111 */ 137
Note:
See TracChangeset
for help on using the changeset viewer.