Michael Ellerman | 5cd16ee | 2005-11-11 14:25:24 +1100 | [diff] [blame] | 1 | #ifndef _ASM_POWERPC_PAGE_32_H |
| 2 | #define _ASM_POWERPC_PAGE_32_H |
| 3 | |
| 4 | #define VM_DATA_DEFAULT_FLAGS VM_DATA_DEFAULT_FLAGS32 |
| 5 | |
Paul Mackerras | 493f25e | 2005-11-14 17:32:50 +1100 | [diff] [blame] | 6 | #define PPC_MEMSTART 0 |
| 7 | |
Benjamin Herrenschmidt | 52142e7 | 2007-11-19 19:25:06 +1100 | [diff] [blame] | 8 | #ifdef CONFIG_NOT_COHERENT_CACHE |
| 9 | #define ARCH_KMALLOC_MINALIGN L1_CACHE_BYTES |
| 10 | #endif |
| 11 | |
Michael Ellerman | 5cd16ee | 2005-11-11 14:25:24 +1100 | [diff] [blame] | 12 | #ifndef __ASSEMBLY__ |
| 13 | /* |
| 14 | * The basic type of a PTE - 64 bits for those CPUs with > 32 bit |
| 15 | * physical addressing. For now this just the IBM PPC440. |
| 16 | */ |
| 17 | #ifdef CONFIG_PTE_64BIT |
| 18 | typedef unsigned long long pte_basic_t; |
| 19 | #define PTE_SHIFT (PAGE_SHIFT - 3) /* 512 ptes per page */ |
Michael Ellerman | 5cd16ee | 2005-11-11 14:25:24 +1100 | [diff] [blame] | 20 | #else |
| 21 | typedef unsigned long pte_basic_t; |
| 22 | #define PTE_SHIFT (PAGE_SHIFT - 2) /* 1024 ptes per page */ |
Michael Ellerman | 5cd16ee | 2005-11-11 14:25:24 +1100 | [diff] [blame] | 23 | #endif |
| 24 | |
| 25 | struct page; |
| 26 | extern void clear_pages(void *page, int order); |
| 27 | static inline void clear_page(void *page) { clear_pages(page, 0); } |
| 28 | extern void copy_page(void *to, void *from); |
| 29 | |
David Howells | ef55d53 | 2006-12-08 02:37:53 -0800 | [diff] [blame] | 30 | #include <asm-generic/page.h> |
Michael Ellerman | 5cd16ee | 2005-11-11 14:25:24 +1100 | [diff] [blame] | 31 | |
| 32 | #endif /* __ASSEMBLY__ */ |
| 33 | |
Michael Ellerman | 5cd16ee | 2005-11-11 14:25:24 +1100 | [diff] [blame] | 34 | #endif /* _ASM_POWERPC_PAGE_32_H */ |