blob: 392576433e7785769493032934bb44900304dd2e [file] [log] [blame]
H. Peter Anvin1965aae2008-10-22 22:26:29 -07001#ifndef _ASM_X86_PGTABLE_2LEVEL_DEFS_H
2#define _ASM_X86_PGTABLE_2LEVEL_DEFS_H
Linus Torvalds1da177e2005-04-16 15:20:36 -07003
Jeremy Fitzhardinge54321d92009-02-11 10:20:05 -08004#ifndef __ASSEMBLY__
5#include <linux/types.h>
6
7typedef unsigned long pteval_t;
8typedef unsigned long pmdval_t;
9typedef unsigned long pudval_t;
10typedef unsigned long pgdval_t;
11typedef unsigned long pgprotval_t;
12
13typedef union {
14 pteval_t pte;
15 pteval_t pte_low;
16} pte_t;
17#endif /* !__ASSEMBLY__ */
18
Jeremy Fitzhardinge5311ab62007-05-02 19:27:13 +020019#define SHARED_KERNEL_PMD 0
20
Linus Torvalds1da177e2005-04-16 15:20:36 -070021/*
22 * traditional i386 two-level paging structure:
23 */
24
25#define PGDIR_SHIFT 22
26#define PTRS_PER_PGD 1024
27
Jeremy Fitzhardinge9b3651c2009-02-13 11:01:54 -080028
Linus Torvalds1da177e2005-04-16 15:20:36 -070029/*
30 * the i386 is two-level, so we don't really have any
31 * PMD directory physically.
32 */
33
34#define PTRS_PER_PTE 1024
35
H. Peter Anvin1965aae2008-10-22 22:26:29 -070036#endif /* _ASM_X86_PGTABLE_2LEVEL_DEFS_H */