1 /*
2  * Copyright (C) 2006 Atmark Techno, Inc.
3  *
4  * This file is subject to the terms and conditions of the GNU General Public
5  * License. See the file "COPYING" in the main directory of this archive
6  * for more details.
7  */
8 
9 #ifndef _ASM_MICROBLAZE_PGTABLE_H
10 #define _ASM_MICROBLAZE_PGTABLE_H
11 
12 #include <asm/setup.h>
13 
14 #define io_remap_pfn_range(vma, vaddr, pfn, size, prot)		\
15 		remap_pfn_range(vma, vaddr, pfn, size, prot)
16 
17 #define pgd_present(pgd)	(1) /* pages are always present on non MMU */
18 #define pgd_none(pgd)		(0)
19 #define pgd_bad(pgd)		(0)
20 #define pgd_clear(pgdp)
21 #define kern_addr_valid(addr)	(1)
22 #define	pmd_offset(a, b)	((void *) 0)
23 
24 #define PAGE_NONE		__pgprot(0) /* these mean nothing to non MMU */
25 #define PAGE_SHARED		__pgprot(0) /* these mean nothing to non MMU */
26 #define PAGE_COPY		__pgprot(0) /* these mean nothing to non MMU */
27 #define PAGE_READONLY		__pgprot(0) /* these mean nothing to non MMU */
28 #define PAGE_KERNEL		__pgprot(0) /* these mean nothing to non MMU */
29 
30 #define __swp_type(x)		(0)
31 #define __swp_offset(x)		(0)
32 #define __swp_entry(typ, off)	((swp_entry_t) { ((typ) | ((off) << 7)) })
33 #define __pte_to_swp_entry(pte)	((swp_entry_t) { pte_val(pte) })
34 #define __swp_entry_to_pte(x)	((pte_t) { (x).val })
35 
36 #ifndef __ASSEMBLY__
37 static inline int pte_file(pte_t pte) { return 0; }
38 #endif /* __ASSEMBLY__ */
39 
40 #define ZERO_PAGE(vaddr)	({ BUG(); NULL; })
41 
42 #define swapper_pg_dir ((pgd_t *) NULL)
43 
44 #define pgtable_cache_init()	do {} while (0)
45 
46 #define arch_enter_lazy_cpu_mode()	do {} while (0)
47 
48 #ifndef __ASSEMBLY__
49 #include <asm-generic/pgtable.h>
50 
51 void setup_memory(void);
52 #endif /* __ASSEMBLY__ */
53 
54 #endif /* _ASM_MICROBLAZE_PGTABLE_H */
55