blob: 16c821f81b8ddb664549640458e102d4b66f39bc [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001/*
2 * linux/include/asm-arm/mmu_context.h
3 *
4 * Copyright (C) 1996 Russell King.
5 *
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License version 2 as
8 * published by the Free Software Foundation.
9 *
10 * Changelog:
11 * 27-06-1996 RMK Created
12 */
13#ifndef __ASM_ARM_MMU_CONTEXT_H
14#define __ASM_ARM_MMU_CONTEXT_H
15
Jeremy Fitzhardinged6dd61c2007-05-02 19:27:14 +020016#include <asm-generic/mm_hooks.h>
17
Linus Torvalds1da177e2005-04-16 15:20:36 -070018#define init_new_context(tsk,mm) 0
19#define destroy_context(mm) do { } while(0)
20
21/*
22 * This is called when "tsk" is about to enter lazy TLB mode.
23 *
24 * mm: describes the currently active mm context
25 * tsk: task which is entering lazy tlb
26 * cpu: cpu number which is entering lazy tlb
27 *
28 * tsk->mm will be NULL
29 */
30static inline void
31enter_lazy_tlb(struct mm_struct *mm, struct task_struct *tsk)
32{
33}
34
35/*
36 * This is the actual mm switch as far as the scheduler
37 * is concerned. No registers are touched.
38 */
39static inline void
40switch_mm(struct mm_struct *prev, struct mm_struct *next,
41 struct task_struct *tsk)
42{
43 cpu_switch_mm(next->pgd, next);
44}
45
46#define deactivate_mm(tsk,mm) do { } while (0)
47
48static inline void activate_mm(struct mm_struct *prev, struct mm_struct *next)
49{
50 cpu_switch_mm(next->pgd, next);
51}
52
53#endif