diff options
Diffstat (limited to 'arch/sparc/include/asm/pgtable_64.h')
-rw-r--r-- | arch/sparc/include/asm/pgtable_64.h | 40 |
1 files changed, 0 insertions, 40 deletions
diff --git a/arch/sparc/include/asm/pgtable_64.h b/arch/sparc/include/asm/pgtable_64.h index 1ff9e7864168..2ac7873ad6fd 100644 --- a/arch/sparc/include/asm/pgtable_64.h +++ b/arch/sparc/include/asm/pgtable_64.h | |||
@@ -137,7 +137,6 @@ bool kern_addr_valid(unsigned long addr); | |||
137 | #define _PAGE_SOFT_4U _AC(0x0000000000001F80,UL) /* Software bits: */ | 137 | #define _PAGE_SOFT_4U _AC(0x0000000000001F80,UL) /* Software bits: */ |
138 | #define _PAGE_EXEC_4U _AC(0x0000000000001000,UL) /* Executable SW bit */ | 138 | #define _PAGE_EXEC_4U _AC(0x0000000000001000,UL) /* Executable SW bit */ |
139 | #define _PAGE_MODIFIED_4U _AC(0x0000000000000800,UL) /* Modified (dirty) */ | 139 | #define _PAGE_MODIFIED_4U _AC(0x0000000000000800,UL) /* Modified (dirty) */ |
140 | #define _PAGE_FILE_4U _AC(0x0000000000000800,UL) /* Pagecache page */ | ||
141 | #define _PAGE_ACCESSED_4U _AC(0x0000000000000400,UL) /* Accessed (ref'd) */ | 140 | #define _PAGE_ACCESSED_4U _AC(0x0000000000000400,UL) /* Accessed (ref'd) */ |
142 | #define _PAGE_READ_4U _AC(0x0000000000000200,UL) /* Readable SW Bit */ | 141 | #define _PAGE_READ_4U _AC(0x0000000000000200,UL) /* Readable SW Bit */ |
143 | #define _PAGE_WRITE_4U _AC(0x0000000000000100,UL) /* Writable SW Bit */ | 142 | #define _PAGE_WRITE_4U _AC(0x0000000000000100,UL) /* Writable SW Bit */ |
@@ -167,7 +166,6 @@ bool kern_addr_valid(unsigned long addr); | |||
167 | #define _PAGE_EXEC_4V _AC(0x0000000000000080,UL) /* Executable Page */ | 166 | #define _PAGE_EXEC_4V _AC(0x0000000000000080,UL) /* Executable Page */ |
168 | #define _PAGE_W_4V _AC(0x0000000000000040,UL) /* Writable */ | 167 | #define _PAGE_W_4V _AC(0x0000000000000040,UL) /* Writable */ |
169 | #define _PAGE_SOFT_4V _AC(0x0000000000000030,UL) /* Software bits */ | 168 | #define _PAGE_SOFT_4V _AC(0x0000000000000030,UL) /* Software bits */ |
170 | #define _PAGE_FILE_4V _AC(0x0000000000000020,UL) /* Pagecache page */ | ||
171 | #define _PAGE_PRESENT_4V _AC(0x0000000000000010,UL) /* Present */ | 169 | #define _PAGE_PRESENT_4V _AC(0x0000000000000010,UL) /* Present */ |
172 | #define _PAGE_RESV_4V _AC(0x0000000000000008,UL) /* Reserved */ | 170 | #define _PAGE_RESV_4V _AC(0x0000000000000008,UL) /* Reserved */ |
173 | #define _PAGE_SZ16GB_4V _AC(0x0000000000000007,UL) /* 16GB Page */ | 171 | #define _PAGE_SZ16GB_4V _AC(0x0000000000000007,UL) /* 16GB Page */ |
@@ -332,22 +330,6 @@ static inline pmd_t pmd_modify(pmd_t pmd, pgprot_t newprot) | |||
332 | } | 330 | } |
333 | #endif | 331 | #endif |
334 | 332 | ||
335 | static inline pte_t pgoff_to_pte(unsigned long off) | ||
336 | { | ||
337 | off <<= PAGE_SHIFT; | ||
338 | |||
339 | __asm__ __volatile__( | ||
340 | "\n661: or %0, %2, %0\n" | ||
341 | " .section .sun4v_1insn_patch, \"ax\"\n" | ||
342 | " .word 661b\n" | ||
343 | " or %0, %3, %0\n" | ||
344 | " .previous\n" | ||
345 | : "=r" (off) | ||
346 | : "0" (off), "i" (_PAGE_FILE_4U), "i" (_PAGE_FILE_4V)); | ||
347 | |||
348 | return __pte(off); | ||
349 | } | ||
350 | |||
351 | static inline pgprot_t pgprot_noncached(pgprot_t prot) | 333 | static inline pgprot_t pgprot_noncached(pgprot_t prot) |
352 | { | 334 | { |
353 | unsigned long val = pgprot_val(prot); | 335 | unsigned long val = pgprot_val(prot); |
@@ -609,22 +591,6 @@ static inline unsigned long pte_exec(pte_t pte) | |||
609 | return (pte_val(pte) & mask); | 591 | return (pte_val(pte) & mask); |
610 | } | 592 | } |
611 | 593 | ||
612 | static inline unsigned long pte_file(pte_t pte) | ||
613 | { | ||
614 | unsigned long val = pte_val(pte); | ||
615 | |||
616 | __asm__ __volatile__( | ||
617 | "\n661: and %0, %2, %0\n" | ||
618 | " .section .sun4v_1insn_patch, \"ax\"\n" | ||
619 | " .word 661b\n" | ||
620 | " and %0, %3, %0\n" | ||
621 | " .previous\n" | ||
622 | : "=r" (val) | ||
623 | : "0" (val), "i" (_PAGE_FILE_4U), "i" (_PAGE_FILE_4V)); | ||
624 | |||
625 | return val; | ||
626 | } | ||
627 | |||
628 | static inline unsigned long pte_present(pte_t pte) | 594 | static inline unsigned long pte_present(pte_t pte) |
629 | { | 595 | { |
630 | unsigned long val = pte_val(pte); | 596 | unsigned long val = pte_val(pte); |
@@ -971,12 +937,6 @@ pgtable_t pgtable_trans_huge_withdraw(struct mm_struct *mm, pmd_t *pmdp); | |||
971 | #define __pte_to_swp_entry(pte) ((swp_entry_t) { pte_val(pte) }) | 937 | #define __pte_to_swp_entry(pte) ((swp_entry_t) { pte_val(pte) }) |
972 | #define __swp_entry_to_pte(x) ((pte_t) { (x).val }) | 938 | #define __swp_entry_to_pte(x) ((pte_t) { (x).val }) |
973 | 939 | ||
974 | /* File offset in PTE support. */ | ||
975 | unsigned long pte_file(pte_t); | ||
976 | #define pte_to_pgoff(pte) (pte_val(pte) >> PAGE_SHIFT) | ||
977 | pte_t pgoff_to_pte(unsigned long); | ||
978 | #define PTE_FILE_MAX_BITS (64UL - PAGE_SHIFT - 1UL) | ||
979 | |||
980 | int page_in_phys_avail(unsigned long paddr); | 940 | int page_in_phys_avail(unsigned long paddr); |
981 | 941 | ||
982 | /* | 942 | /* |