Loading...
1#ifndef __ASM_SH_PGTABLE_2LEVEL_H
2#define __ASM_SH_PGTABLE_2LEVEL_H
3
4#include <asm-generic/pgtable-nopmd.h>
5
6/*
7 * traditional two-level paging structure
8 */
9#define PAGETABLE_LEVELS 2
10
11/* PTE bits */
12#define PTE_MAGNITUDE 2 /* 32-bit PTEs */
13
14#define PTE_SHIFT PAGE_SHIFT
15#define PTE_BITS (PTE_SHIFT - PTE_MAGNITUDE)
16
17/* PGD bits */
18#define PGDIR_SHIFT (PTE_SHIFT + PTE_BITS)
19
20#define PTRS_PER_PGD (PAGE_SIZE / (1 << PTE_MAGNITUDE))
21#define USER_PTRS_PER_PGD (TASK_SIZE/PGDIR_SIZE)
22
23#endif /* __ASM_SH_PGTABLE_2LEVEL_H */
1/* SPDX-License-Identifier: GPL-2.0 */
2#ifndef __ASM_SH_PGTABLE_2LEVEL_H
3#define __ASM_SH_PGTABLE_2LEVEL_H
4
5#include <asm-generic/pgtable-nopmd.h>
6
7/*
8 * traditional two-level paging structure
9 */
10#define PAGETABLE_LEVELS 2
11
12/* PTE bits */
13#define PTE_MAGNITUDE 2 /* 32-bit PTEs */
14
15#define PTE_SHIFT PAGE_SHIFT
16#define PTE_BITS (PTE_SHIFT - PTE_MAGNITUDE)
17
18/* PGD bits */
19#define PGDIR_SHIFT (PTE_SHIFT + PTE_BITS)
20
21#define PTRS_PER_PGD (PAGE_SIZE / (1 << PTE_MAGNITUDE))
22#define USER_PTRS_PER_PGD (TASK_SIZE/PGDIR_SIZE)
23
24#endif /* __ASM_SH_PGTABLE_2LEVEL_H */