1 /* SPDX-License-Identifier: GPL-2.0 */ 2 #ifndef _ASM_X86_PAGE_32_H 3 #define _ASM_X86_PAGE_32_H 4 5 #include <asm/page_32_types.h> 6 7 #ifndef __ASSEMBLER__ 8 9 #define __phys_addr_nodebug(x) ((x) - PAGE_OFFSET) 10 #ifdef CONFIG_DEBUG_VIRTUAL 11 extern unsigned long __phys_addr(unsigned long); 12 #else 13 #define __phys_addr(x) __phys_addr_nodebug(x) 14 #endif 15 #define __phys_addr_symbol(x) __phys_addr(x) 16 #define __phys_reloc_hide(x) RELOC_HIDE((x), 0) 17 18 #include <linux/string.h> 19 20 /** 21 * clear_page() - clear a page using a kernel virtual address. 22 * @page: address of kernel page 23 * 24 * Does absolutely no exception handling. 25 */ 26 static inline void clear_page(void *page) 27 { 28 memset(page, 0, PAGE_SIZE); 29 } 30 31 static inline void copy_page(void *to, void *from) 32 { 33 memcpy(to, from, PAGE_SIZE); 34 } 35 #endif /* !__ASSEMBLER__ */ 36 37 #endif /* _ASM_X86_PAGE_32_H */ 38