blob: 374d0db37e1c1babf0ee08d935d5f3888e443f6c [file] [log] [blame]
Michael Ellerman5cd16ee2005-11-11 14:25:24 +11001#ifndef _ASM_POWERPC_PAGE_32_H
2#define _ASM_POWERPC_PAGE_32_H
Arnd Bergmann88ced032005-12-16 22:43:46 +01003#ifdef __KERNEL__
Michael Ellerman5cd16ee2005-11-11 14:25:24 +11004
5#define VM_DATA_DEFAULT_FLAGS VM_DATA_DEFAULT_FLAGS32
6
Paul Mackerras493f25e2005-11-14 17:32:50 +11007#define PPC_MEMSTART 0
8
Michael Ellerman5cd16ee2005-11-11 14:25:24 +11009#ifndef __ASSEMBLY__
10/*
11 * The basic type of a PTE - 64 bits for those CPUs with > 32 bit
12 * physical addressing. For now this just the IBM PPC440.
13 */
14#ifdef CONFIG_PTE_64BIT
15typedef unsigned long long pte_basic_t;
16#define PTE_SHIFT (PAGE_SHIFT - 3) /* 512 ptes per page */
Michael Ellerman5cd16ee2005-11-11 14:25:24 +110017#else
18typedef unsigned long pte_basic_t;
19#define PTE_SHIFT (PAGE_SHIFT - 2) /* 1024 ptes per page */
Michael Ellerman5cd16ee2005-11-11 14:25:24 +110020#endif
21
22struct page;
23extern void clear_pages(void *page, int order);
24static inline void clear_page(void *page) { clear_pages(page, 0); }
25extern void copy_page(void *to, void *from);
26
David Howellsef55d532006-12-08 02:37:53 -080027#include <asm-generic/page.h>
Michael Ellerman5cd16ee2005-11-11 14:25:24 +110028
29#endif /* __ASSEMBLY__ */
30
Arnd Bergmann88ced032005-12-16 22:43:46 +010031#endif /* __KERNEL__ */
Michael Ellerman5cd16ee2005-11-11 14:25:24 +110032#endif /* _ASM_POWERPC_PAGE_32_H */