Linux 6.13-rc4
[linux.git] / arch / sh / include / asm / pgtable-2level.h
blob08bff93927ffde4754bf6aabb11a542a3b333f89
1 /* SPDX-License-Identifier: GPL-2.0 */
2 #ifndef __ASM_SH_PGTABLE_2LEVEL_H
3 #define __ASM_SH_PGTABLE_2LEVEL_H
5 #include <asm-generic/pgtable-nopmd.h>
7 /*
8 * traditional two-level paging structure
9 */
10 #define PAGETABLE_LEVELS 2
12 /* PTE bits */
13 #define PTE_MAGNITUDE 2 /* 32-bit PTEs */
15 #define PTE_SHIFT PAGE_SHIFT
16 #define PTE_BITS (PTE_SHIFT - PTE_MAGNITUDE)
18 /* PGD bits */
19 #define PGDIR_SHIFT (PTE_SHIFT + PTE_BITS)
21 #define PTRS_PER_PGD (PAGE_SIZE / (1 << PTE_MAGNITUDE))
22 #define USER_PTRS_PER_PGD (TASK_SIZE/PGDIR_SIZE)
24 #endif /* __ASM_SH_PGTABLE_2LEVEL_H */