1#ifndef _ASM_X86_PAGE_32_H 2#define _ASM_X86_PAGE_32_H 3 4#include <asm/page_32_types.h> 5 6#ifndef __ASSEMBLY__ 7 8#define __phys_addr_nodebug(x) ((x) - PAGE_OFFSET) 9#ifdef CONFIG_DEBUG_VIRTUAL 10extern unsigned long __phys_addr(unsigned long); 11#else 12#define __phys_addr(x) __phys_addr_nodebug(x) 13#endif 14#define __phys_addr_symbol(x) __phys_addr(x) 15#define __phys_reloc_hide(x) RELOC_HIDE((x), 0) 16 17#ifdef CONFIG_FLATMEM 18#define pfn_valid(pfn) ((pfn) < max_mapnr) 19#endif /* CONFIG_FLATMEM */ 20 21#ifdef CONFIG_X86_USE_3DNOW 22#include <asm/mmx.h> 23 24static inline void clear_page(void *page) 25{ 26 mmx_clear_page(page); 27} 28 29static inline void copy_page(void *to, void *from) 30{ 31 mmx_copy_page(to, from); 32} 33#else /* !CONFIG_X86_USE_3DNOW */ 34#include <linux/string.h> 35 36static inline void clear_page(void *page) 37{ 38 memset(page, 0, PAGE_SIZE); 39} 40 41static inline void copy_page(void *to, void *from) 42{ 43 memcpy(to, from, PAGE_SIZE); 44} 45#endif /* CONFIG_X86_3DNOW */ 46#endif /* !__ASSEMBLY__ */ 47 48#endif /* _ASM_X86_PAGE_32_H */ 49