root/arch/arm/include/asm/mmu.h

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

INCLUDED FROM


   1 /* SPDX-License-Identifier: GPL-2.0 */
   2 #ifndef __ARM_MMU_H
   3 #define __ARM_MMU_H
   4 
   5 #ifdef CONFIG_MMU
   6 
   7 typedef struct {
   8 #ifdef CONFIG_CPU_HAS_ASID
   9         atomic64_t      id;
  10 #else
  11         int             switch_pending;
  12 #endif
  13         unsigned int    vmalloc_seq;
  14         unsigned long   sigpage;
  15 #ifdef CONFIG_VDSO
  16         unsigned long   vdso;
  17 #endif
  18 #ifdef CONFIG_BINFMT_ELF_FDPIC
  19         unsigned long   exec_fdpic_loadmap;
  20         unsigned long   interp_fdpic_loadmap;
  21 #endif
  22 } mm_context_t;
  23 
  24 #ifdef CONFIG_CPU_HAS_ASID
  25 #define ASID_BITS       8
  26 #define ASID_MASK       ((~0ULL) << ASID_BITS)
  27 #define ASID(mm)        ((unsigned int)((mm)->context.id.counter & ~ASID_MASK))
  28 #else
  29 #define ASID(mm)        (0)
  30 #endif
  31 
  32 #else
  33 
  34 /*
  35  * From nommu.h:
  36  *  Copyright (C) 2002, David McCullough <davidm@snapgear.com>
  37  *  modified for 2.6 by Hyok S. Choi <hyok.choi@samsung.com>
  38  */
  39 typedef struct {
  40         unsigned long   end_brk;
  41 #ifdef CONFIG_BINFMT_ELF_FDPIC
  42         unsigned long   exec_fdpic_loadmap;
  43         unsigned long   interp_fdpic_loadmap;
  44 #endif
  45 } mm_context_t;
  46 
  47 #endif
  48 
  49 #endif

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