hc
2024-05-14 bedbef8ad3e75a304af6361af235302bcc61d06b
kernel/arch/nios2/include/asm/pgtable.h
....@@ -22,7 +22,6 @@
2222 #include <asm/tlbflush.h>
2323
2424 #include <asm/pgtable-bits.h>
25
-#define __ARCH_USE_5LEVEL_HACK
2625 #include <asm-generic/pgtable-nopmd.h>
2726
2827 #define FIRST_USER_ADDRESS 0UL
....@@ -100,12 +99,8 @@
10099 */
101100 static inline void set_pmd(pmd_t *pmdptr, pmd_t pmdval)
102101 {
103
- pmdptr->pud.pgd.pgd = pmdval.pud.pgd.pgd;
102
+ *pmdptr = pmdval;
104103 }
105
-
106
-/* to find an entry in a page-table-directory */
107
-#define pgd_index(addr) (((addr) >> PGDIR_SHIFT) & (PTRS_PER_PGD - 1))
108
-#define pgd_offset(mm, addr) ((mm)->pgd + pgd_index(addr))
109104
110105 static inline int pte_write(pte_t pte) \
111106 { return pte_val(pte) & _PAGE_WRITE; }
....@@ -113,7 +108,6 @@
113108 { return pte_val(pte) & _PAGE_DIRTY; }
114109 static inline int pte_young(pte_t pte) \
115110 { return pte_val(pte) & _PAGE_ACCESSED; }
116
-static inline int pte_special(pte_t pte) { return 0; }
117111
118112 #define pgprot_noncached pgprot_noncached
119113
....@@ -167,8 +161,6 @@
167161 pte_val(pte) |= _PAGE_DIRTY;
168162 return pte;
169163 }
170
-
171
-static inline pte_t pte_mkspecial(pte_t pte) { return pte; }
172164
173165 static inline pte_t pte_mkyoung(pte_t pte)
174166 {
....@@ -232,7 +224,6 @@
232224 pte_val(null) = (addr >> PAGE_SHIFT) & 0xf;
233225
234226 set_pte_at(mm, addr, ptep, null);
235
- flush_tlb_one(addr);
236227 }
237228
238229 /*
....@@ -241,27 +232,17 @@
241232 */
242233 #define mk_pte(page, prot) (pfn_pte(page_to_pfn(page), prot))
243234
244
-#define pte_unmap(pte) do { } while (0)
245
-
246235 /*
247236 * Conversion functions: convert a page and protection to a page entry,
248237 * and a page entry and page directory to the page they refer to.
249238 */
250239 #define pmd_phys(pmd) virt_to_phys((void *)pmd_val(pmd))
251240 #define pmd_page(pmd) (pfn_to_page(pmd_phys(pmd) >> PAGE_SHIFT))
252
-#define pmd_page_vaddr(pmd) pmd_val(pmd)
253241
254
-#define pte_offset_map(dir, addr) \
255
- ((pte_t *) page_address(pmd_page(*dir)) + \
256
- (((addr) >> PAGE_SHIFT) & (PTRS_PER_PTE - 1)))
257
-
258
-/* to find an entry in a kernel page-table-directory */
259
-#define pgd_offset_k(addr) pgd_offset(&init_mm, addr)
260
-
261
-/* Get the address to the PTE for a vaddr in specific directory */
262
-#define pte_offset_kernel(dir, addr) \
263
- ((pte_t *) pmd_page_vaddr(*(dir)) + \
264
- (((addr) >> PAGE_SHIFT) & (PTRS_PER_PTE - 1)))
242
+static inline unsigned long pmd_page_vaddr(pmd_t pmd)
243
+{
244
+ return pmd_val(pmd);
245
+}
265246
266247 #define pte_ERROR(e) \
267248 pr_err("%s:%d: bad pte %08lx.\n", \
....@@ -289,10 +270,6 @@
289270 #define __pte_to_swp_entry(pte) ((swp_entry_t) { pte_val(pte) })
290271
291272 #define kern_addr_valid(addr) (1)
292
-
293
-#include <asm-generic/pgtable.h>
294
-
295
-#define pgtable_cache_init() do { } while (0)
296273
297274 extern void __init paging_init(void);
298275 extern void __init mmu_init(void);