1b924a281SJeremy Fitzhardinge #ifndef _ASM_X86_PGTABLE_3LEVEL_DEFS_H
2b924a281SJeremy Fitzhardinge #define _ASM_X86_PGTABLE_3LEVEL_DEFS_H
3b924a281SJeremy Fitzhardinge 
4b924a281SJeremy Fitzhardinge #ifdef CONFIG_PARAVIRT
5b924a281SJeremy Fitzhardinge #define SHARED_KERNEL_PMD	(pv_info.shared_kernel_pmd)
6b924a281SJeremy Fitzhardinge #else
7b924a281SJeremy Fitzhardinge #define SHARED_KERNEL_PMD	1
8b924a281SJeremy Fitzhardinge #endif
9b924a281SJeremy Fitzhardinge 
10b924a281SJeremy Fitzhardinge /*
11b924a281SJeremy Fitzhardinge  * PGDIR_SHIFT determines what a top-level page table entry can map
12b924a281SJeremy Fitzhardinge  */
13b924a281SJeremy Fitzhardinge #define PGDIR_SHIFT	30
14b924a281SJeremy Fitzhardinge #define PTRS_PER_PGD	4
15b924a281SJeremy Fitzhardinge 
16b924a281SJeremy Fitzhardinge /*
17b924a281SJeremy Fitzhardinge  * PMD_SHIFT determines the size of the area a middle-level
18b924a281SJeremy Fitzhardinge  * page table can map
19b924a281SJeremy Fitzhardinge  */
20b924a281SJeremy Fitzhardinge #define PMD_SHIFT	21
21b924a281SJeremy Fitzhardinge #define PTRS_PER_PMD	512
22b924a281SJeremy Fitzhardinge 
23b924a281SJeremy Fitzhardinge /*
24b924a281SJeremy Fitzhardinge  * entries per page directory level
25b924a281SJeremy Fitzhardinge  */
26b924a281SJeremy Fitzhardinge #define PTRS_PER_PTE	512
27b924a281SJeremy Fitzhardinge 
28b924a281SJeremy Fitzhardinge #endif /* _ASM_X86_PGTABLE_3LEVEL_DEFS_H */
29