/* SPDX-License-Identifier: GPL-2.0 */ #ifndef _ASM_X86_PAGE_32_H #define _ASM_X86_PAGE_32_H #include #ifndef __ASSEMBLY__ #define __phys_addr_nodebug(x) ((x) - PAGE_OFFSET) #ifdef CONFIG_DEBUG_VIRTUAL extern unsigned long __phys_addr(unsigned long); #else #define __phys_addr(x) __phys_addr_nodebug(x) #endif #define __phys_addr_symbol(x) __phys_addr(x) #define __phys_reloc_hide(x) RELOC_HIDE((x), 0) #ifdef CONFIG_FLATMEM #define pfn_valid(pfn) ((pfn) < max_mapnr) #endif /* CONFIG_FLATMEM */ #ifdef CONFIG_X86_USE_3DNOW #include static inline void clear_page(void *page) { mmx_clear_page(page); } static inline void copy_page(void *to, void *from) { mmx_copy_page(to, from); } #else /* !CONFIG_X86_USE_3DNOW */ #include static inline void clear_page(void *page) { memset(page, 0, PAGE_SIZE); } static inline void copy_page(void *to, void *from) { memcpy(to, from, PAGE_SIZE); } #endif /* CONFIG_X86_3DNOW */ #endif /* !__ASSEMBLY__ */ #endif /* _ASM_X86_PAGE_32_H */