1
2#ifndef _M68K_PAGE_H
3#define _M68K_PAGE_H
4
5#include <linux/const.h>
6#include <asm/setup.h>
7#include <asm/page_offset.h>
8
9
10#if defined(CONFIG_SUN3) || defined(CONFIG_COLDFIRE)
11#define PAGE_SHIFT 13
12#else
13#define PAGE_SHIFT 12
14#endif
15#define PAGE_SIZE (_AC(1, UL) << PAGE_SHIFT)
16#define PAGE_MASK (~(PAGE_SIZE-1))
17#define PAGE_OFFSET (PAGE_OFFSET_RAW)
18
19#ifndef __ASSEMBLY__
20
21
22
23
24#if !defined(CONFIG_MMU) || CONFIG_PGTABLE_LEVELS == 3
25typedef struct { unsigned long pmd[16]; } pmd_t;
26#define pmd_val(x) ((&x)->pmd[0])
27#define __pmd(x) ((pmd_t) { { (x) }, })
28#endif
29
30typedef struct { unsigned long pte; } pte_t;
31typedef struct { unsigned long pgd; } pgd_t;
32typedef struct { unsigned long pgprot; } pgprot_t;
33typedef struct page *pgtable_t;
34
35#define pte_val(x) ((x).pte)
36#define pgd_val(x) ((x).pgd)
37#define pgprot_val(x) ((x).pgprot)
38
39#define __pte(x) ((pte_t) { (x) } )
40#define __pgd(x) ((pgd_t) { (x) } )
41#define __pgprot(x) ((pgprot_t) { (x) } )
42
43extern unsigned long _rambase;
44extern unsigned long _ramstart;
45extern unsigned long _ramend;
46
47#endif
48
49#ifdef CONFIG_MMU
50#include <asm/page_mm.h>
51#else
52#include <asm/page_no.h>
53#endif
54
55#define __phys_to_pfn(paddr) ((unsigned long)((paddr) >> PAGE_SHIFT))
56#define __pfn_to_phys(pfn) PFN_PHYS(pfn)
57
58#define VM_DATA_DEFAULT_FLAGS (VM_READ | VM_WRITE | VM_EXEC | \
59 VM_MAYREAD | VM_MAYWRITE | VM_MAYEXEC)
60
61#include <asm-generic/getorder.h>
62
63#endif
64