diff options
Diffstat (limited to 'arch/powerpc/include/asm/pgtable-ppc64-64k.h')
-rw-r--r-- | arch/powerpc/include/asm/pgtable-ppc64-64k.h | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/arch/powerpc/include/asm/pgtable-ppc64-64k.h b/arch/powerpc/include/asm/pgtable-ppc64-64k.h new file mode 100644 index 000000000000..6cc085b945a5 --- /dev/null +++ b/arch/powerpc/include/asm/pgtable-ppc64-64k.h | |||
@@ -0,0 +1,42 @@ | |||
1 | #ifndef _ASM_POWERPC_PGTABLE_PPC64_64K_H | ||
2 | #define _ASM_POWERPC_PGTABLE_PPC64_64K_H | ||
3 | |||
4 | #include <asm-generic/pgtable-nopud.h> | ||
5 | |||
6 | |||
7 | #define PTE_INDEX_SIZE 12 | ||
8 | #define PMD_INDEX_SIZE 12 | ||
9 | #define PUD_INDEX_SIZE 0 | ||
10 | #define PGD_INDEX_SIZE 4 | ||
11 | |||
12 | #ifndef __ASSEMBLY__ | ||
13 | |||
14 | #define PTE_TABLE_SIZE (sizeof(real_pte_t) << PTE_INDEX_SIZE) | ||
15 | #define PMD_TABLE_SIZE (sizeof(pmd_t) << PMD_INDEX_SIZE) | ||
16 | #define PGD_TABLE_SIZE (sizeof(pgd_t) << PGD_INDEX_SIZE) | ||
17 | |||
18 | #define PTRS_PER_PTE (1 << PTE_INDEX_SIZE) | ||
19 | #define PTRS_PER_PMD (1 << PMD_INDEX_SIZE) | ||
20 | #define PTRS_PER_PGD (1 << PGD_INDEX_SIZE) | ||
21 | |||
22 | /* With 4k base page size, hugepage PTEs go at the PMD level */ | ||
23 | #define MIN_HUGEPTE_SHIFT PAGE_SHIFT | ||
24 | |||
25 | /* PMD_SHIFT determines what a second-level page table entry can map */ | ||
26 | #define PMD_SHIFT (PAGE_SHIFT + PTE_INDEX_SIZE) | ||
27 | #define PMD_SIZE (1UL << PMD_SHIFT) | ||
28 | #define PMD_MASK (~(PMD_SIZE-1)) | ||
29 | |||
30 | /* PGDIR_SHIFT determines what a third-level page table entry can map */ | ||
31 | #define PGDIR_SHIFT (PMD_SHIFT + PMD_INDEX_SIZE) | ||
32 | #define PGDIR_SIZE (1UL << PGDIR_SHIFT) | ||
33 | #define PGDIR_MASK (~(PGDIR_SIZE-1)) | ||
34 | |||
35 | #endif /* __ASSEMBLY__ */ | ||
36 | |||
37 | /* Bits to mask out from a PMD to get to the PTE page */ | ||
38 | #define PMD_MASKED_BITS 0x1ff | ||
39 | /* Bits to mask out from a PGD/PUD to get to the PMD page */ | ||
40 | #define PUD_MASKED_BITS 0x1ff | ||
41 | |||
42 | #endif /* _ASM_POWERPC_PGTABLE_PPC64_64K_H */ | ||