root/arch/x86/include/asm/page_32.h

/* [<][>][^][v][top][bottom][index][help] */

INCLUDED FROM


DEFINITIONS

This source file includes following definitions.
  1. clear_page
  2. copy_page
  3. clear_page
  4. copy_page

   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 __ASSEMBLY__
   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 #ifdef CONFIG_FLATMEM
  19 #define pfn_valid(pfn)          ((pfn) < max_mapnr)
  20 #endif /* CONFIG_FLATMEM */
  21 
  22 #ifdef CONFIG_X86_USE_3DNOW
  23 #include <asm/mmx.h>
  24 
  25 static inline void clear_page(void *page)
  26 {
  27         mmx_clear_page(page);
  28 }
  29 
  30 static inline void copy_page(void *to, void *from)
  31 {
  32         mmx_copy_page(to, from);
  33 }
  34 #else  /* !CONFIG_X86_USE_3DNOW */
  35 #include <linux/string.h>
  36 
  37 static inline void clear_page(void *page)
  38 {
  39         memset(page, 0, PAGE_SIZE);
  40 }
  41 
  42 static inline void copy_page(void *to, void *from)
  43 {
  44         memcpy(to, from, PAGE_SIZE);
  45 }
  46 #endif  /* CONFIG_X86_3DNOW */
  47 #endif  /* !__ASSEMBLY__ */
  48 
  49 #endif /* _ASM_X86_PAGE_32_H */

/* [<][>][^][v][top][bottom][index][help] */