xref: /OK3568_Linux_fs/kernel/arch/csky/abiv1/inc/abi/pgtable-bits.h (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593Smuzhiyun /* SPDX-License-Identifier: GPL-2.0 */
2*4882a593Smuzhiyun // Copyright (C) 2018 Hangzhou C-SKY Microsystems co.,ltd.
3*4882a593Smuzhiyun 
4*4882a593Smuzhiyun #ifndef __ASM_CSKY_PGTABLE_BITS_H
5*4882a593Smuzhiyun #define __ASM_CSKY_PGTABLE_BITS_H
6*4882a593Smuzhiyun 
7*4882a593Smuzhiyun /* implemented in software */
8*4882a593Smuzhiyun #define _PAGE_ACCESSED		(1<<3)
9*4882a593Smuzhiyun #define PAGE_ACCESSED_BIT	(3)
10*4882a593Smuzhiyun 
11*4882a593Smuzhiyun #define _PAGE_READ		(1<<1)
12*4882a593Smuzhiyun #define _PAGE_WRITE		(1<<2)
13*4882a593Smuzhiyun #define _PAGE_PRESENT		(1<<0)
14*4882a593Smuzhiyun 
15*4882a593Smuzhiyun #define _PAGE_MODIFIED		(1<<4)
16*4882a593Smuzhiyun #define PAGE_MODIFIED_BIT	(4)
17*4882a593Smuzhiyun 
18*4882a593Smuzhiyun /* implemented in hardware */
19*4882a593Smuzhiyun #define _PAGE_GLOBAL		(1<<6)
20*4882a593Smuzhiyun 
21*4882a593Smuzhiyun #define _PAGE_VALID		(1<<7)
22*4882a593Smuzhiyun #define PAGE_VALID_BIT		(7)
23*4882a593Smuzhiyun 
24*4882a593Smuzhiyun #define _PAGE_DIRTY		(1<<8)
25*4882a593Smuzhiyun #define PAGE_DIRTY_BIT		(8)
26*4882a593Smuzhiyun 
27*4882a593Smuzhiyun #define _PAGE_CACHE		(3<<9)
28*4882a593Smuzhiyun #define _PAGE_UNCACHE		(2<<9)
29*4882a593Smuzhiyun #define _PAGE_SO		_PAGE_UNCACHE
30*4882a593Smuzhiyun 
31*4882a593Smuzhiyun #define _CACHE_MASK		(7<<9)
32*4882a593Smuzhiyun 
33*4882a593Smuzhiyun #define _CACHE_CACHED		(_PAGE_VALID | _PAGE_CACHE)
34*4882a593Smuzhiyun #define _CACHE_UNCACHED		(_PAGE_VALID | _PAGE_UNCACHE)
35*4882a593Smuzhiyun 
36*4882a593Smuzhiyun #define HAVE_ARCH_UNMAPPED_AREA
37*4882a593Smuzhiyun 
38*4882a593Smuzhiyun #endif /* __ASM_CSKY_PGTABLE_BITS_H */
39