1 /* mmu.h: memory management context for FR-V with or without MMU support 2 * 3 * Copyright (C) 2004 Red Hat, Inc. All Rights Reserved. 4 * Written by David Howells (dhowells@redhat.com) 5 * 6 * This program is free software; you can redistribute it and/or 7 * modify it under the terms of the GNU General Public License 8 * as published by the Free Software Foundation; either version 9 * 2 of the License, or (at your option) any later version. 10 */ 11 #ifndef _ASM_MMU_H 12 #define _ASM_MMU_H 13 14 typedef struct { 15 #ifdef CONFIG_MMU 16 struct list_head id_link; /* link in list of context ID owners */ 17 unsigned short id; /* MMU context ID */ 18 unsigned short id_busy; /* true if ID is in CXNR */ 19 unsigned long itlb_cached_pge; /* [SCR0] PGE cached for insn TLB handler */ 20 unsigned long itlb_ptd_mapping; /* [DAMR4] PTD mapping for itlb cached PGE */ 21 unsigned long dtlb_cached_pge; /* [SCR1] PGE cached for data TLB handler */ 22 unsigned long dtlb_ptd_mapping; /* [DAMR5] PTD mapping for dtlb cached PGE */ 23 24 #else 25 unsigned long end_brk; 26 27 #endif 28 29 #ifdef CONFIG_BINFMT_ELF_FDPIC 30 unsigned long exec_fdpic_loadmap; 31 unsigned long interp_fdpic_loadmap; 32 #endif 33 34 } mm_context_t; 35 36 #ifdef CONFIG_MMU 37 extern int __nongpreldata cxn_pinned; 38 extern int cxn_pin_by_pid(pid_t pid); 39 #endif 40 41 #endif /* _ASM_MMU_H */ 42