/* * linux/arch/unicore32/include/asm/pgtable-hwdef.h * * Code specific to PKUnity SoC and UniCore ISA * * Copyright (C) 2001-2010 GUAN Xue-tao * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 as * published by the Free Software Foundation. */ #ifndef __UNICORE_PGTABLE_HWDEF_H__ #define __UNICORE_PGTABLE_HWDEF_H__ /* * Hardware page table definitions. * * + Level 1 descriptor (PMD) * - common */ #define PMD_TYPE_MASK (3 << 0) #define PMD_TYPE_TABLE (0 << 0) /*#define PMD_TYPE_LARGE (1 << 0) */ #define PMD_TYPE_INVALID (2 << 0) #define PMD_TYPE_SECT (3 << 0) #define PMD_PRESENT (1 << 2) #define PMD_YOUNG (1 << 3) /*#define PMD_SECT_DIRTY (1 << 4) */ #define PMD_SECT_CACHEABLE (1 << 5) #define PMD_SECT_EXEC (1 << 6) #define PMD_SECT_WRITE (1 << 7) #define PMD_SECT_READ (1 << 8) /* * + Level 2 descriptor (PTE) * - common */ #define PTE_TYPE_MASK (3 << 0) #define PTE_TYPE_SMALL (0 << 0) #define PTE_TYPE_MIDDLE (1 << 0) #define PTE_TYPE_LARGE (2 << 0) #define PTE_TYPE_INVALID (3 << 0) #define PTE_PRESENT (1 << 2) #define PTE_FILE (1 << 3) /* only when !PRESENT */ #define PTE_YOUNG (1 << 3) #define PTE_DIRTY (1 << 4) #define PTE_CACHEABLE (1 << 5) #define PTE_EXEC (1 << 6) #define PTE_WRITE (1 << 7) #define PTE_READ (1 << 8) #endif